NEWS
Ram läuft voll
-
@d3ltoroxp
node ist auch sauber installiert.
Da sollte auch kein Problem herkommen@d3ltoroxp sagte in Ram läuft voll:
Warum ist der Ram jetzt nicht ausgelastet ? Warum fast 6GB frei ?
Dann hast du meinen Link also immer noch nicht gelesen.
Ich schrieb
@homoran sagte in Ram läuft voll:
knapp 6 von den 8 GB noch zur Verfügung.
nicht frei!
-
@homoran Link hab ich schon gelesen, indem Fall nicht verstanden. Linux cached den Ram, wenn ioB den braucht nimmt er sich den da raus.
Oder verstehe ich das so, wenn ioB den Ram voll schreibt, durch was auch immer, dann aber wieder der Verbrauch sinkt, auf z.b. wieder 3 GB dann bleibt der Ram aber dennoch erst mal voll mit 8 GB ? Weil Linux das nun hat ?
-
@d3ltoroxp sagte in Ram läuft voll:
Link hab ich schon gelesen
hast du editiert?
da steht doch jetzt einiges was eben noch nicht da stand!Ich sehe aber i.d.R. keine geänderten, sondern nur neue Posts!!!
Also: es ist weder der RAM noch node.
welche weitere systematische Ursachenforschung hast du denn bisher getrieben? -
@homoran In der Log versucht, heraus zu finden was es ist. Wie gesagt es fällt leider erst auf, wenn ich in ioB nichts mehr anklicken kann, nichts mehr im Haus funktioniert oder die VIS ab schmiert.
Ich hatte in der Log einige Sachen abgearbeitet, die dort recht häufig und penetrant drin standen. Leider hat es die Situation nicht verbessert.
Mittlerweile habe ich ja den Javascript Adapter immer noch aus und das System läuft stabil, Ram hat sich um 200 MB verändert. Indem Fall kann es ja nur ein faules Script sein, das durch die Neuerungen nicht mehr sauber arbeitet ? Oder am Javascript Adapter selber ?
Das andere könnte noch die VIS sein, wie weiter oben vermutet, da die ja dann gerade auch nicht läuft oder gebraucht wird, da Tablet aus.
-
@d3ltoroxp sagte in Ram läuft voll:
ch hatte in der Log einige Sachen abgearbeitet, die dort recht häufig und penetrant drin standen
was denn?
hast du die Skripte identifiziert und an der genannten Stelle den Ack-flag korrigiert?@d3ltoroxp sagte in Ram läuft voll:
Leider hat es die Situation nicht verbessert.
Das war ja auch nicht die Ursache (falls du vom Einfrieren redest)
@d3ltoroxp sagte in Ram läuft voll:
Mittlerweile habe ich ja den Javascript Adapter immer noch aus und das System läuft stabil, Ram hat sich um 200 MB verändert. Indem Fall kann es ja nur ein faules Script sein, das durch die Neuerungen nicht mehr sauber arbeitet ? Oder am Javascript Adapter selber ?**
Was konstruierst du da?
Ja es wird ein faules Skript sein!
Aber die restlichen Vermutungen vergiss ganz schnell wieder
Es ist nicht node, es ist nicht das RAM, es ist auch nicht der js-Adapter
-
@homoran said in Ram läuft voll:
hast du die Skripte identifiziert und an der genannten Stelle den Ack-flag korrigiert?
Genau, ich habe geschaut welches Script dort auftaucht und an was er Meckert, meistens an ack-flag, manchmal an (null) in den DP's
@homoran said in Ram läuft voll:
Das war ja auch nicht die Ursache (falls du vom Einfrieren redest)
Dachte wenn er im Sekundentakt etwas in die Log schreibt, weil er mit einem DP nichts anfangen kann das es da irgendwie bei dem Versuch den Ram zu müllt ?
Genau, erst sterben einige Adapter ab, irgendwann ist ioB ganz weg. In der Konsole hab ich dann mal gesehen, das er dabei alle Adapter abschaltet.
Wie kann ich das dann verstehen, das er den Ram dann so schnell füllt, wenn es ein Script ist.
-
@d3ltoroxp sagte in Ram läuft voll:
an was er Meckert, meistens an ack-flag
und dabei steht dann das entsprechende Skript ( oft incl. der Position des Fehlers mit Angabe von Zeile und Position)
etwa so:
2021-05-01 03:43:02.589 - warn: backitup.0 (3131) Read-only state "backitup.0.output.line" has been written without ack-flag with value "[EXIT] 0"
@d3ltoroxp sagte in Ram läuft voll:
weil er mit einem DP nichts anfangen kann
er kann - es ist nur ein WARN!
@d3ltoroxp sagte in Ram läuft voll:
In der Konsole hab ich dann mal gesehen
und wo ist diese Info in Form eines Auszugs in code-tags??
-
@d3ltoroxp sagte in Ram läuft voll:
Ich habe 3 VM's und 2 LXC's insgesamt habe ich bei den anderen 6GB vergeben bei ioB 8GB, dann komme ich auf 14 GB, also sollte ich ja im Rahmen des gesamten sein.
nein, weil deinem Host selbst ja auch noch Ram zugeteilt ist, somit hast du mehr vergeben als Verfügbar
-
@homoran said in Ram läuft voll:
und wo ist diese Info in Form eines Auszugs in code-tags??
Das war nicht heute, leider auch nur in der Konsole in Proxmox, ich hatte das da nur zufällig gesehen.
@crunchip said in Ram läuft voll:
nein, weil deinem Host selbst ja auch noch Ram zugeteilt ist, somit hast du mehr vergeben als Verfügbar
Stimmt, den gibt es ja auch noch. Was ist denn das dann für ne Anzeige auf der Proxmox Hauptseite, 6.05 GiB von 15.52 GiB ist das nicht alles zusammen, inkl. Host selber ? Mein Stand war, so lange der gesamte Ram nicht wirklich überschritten wird, macht das nichts, egal was man wem vergeben hat ?
-
@homoran sagte in Ram läuft voll:
which nodejs node npm && nodejs -v && node -v && npm -v && sudo apt update && sudo apt update && apt policy nodejs
Jetzt muss ich doch einmal nachfragen: Wieso verwendet hier jeder diese Zeile, in der zweimal
sudo apt update
ausgeführt wird?
Muss update tatsächlich zweimal abgefragt werden? Und wenn ja, warum? -
@d3ltoroxp sagte in Ram läuft voll:
Was ist denn das dann für ne Anzeige auf der Proxmox Hauptseite, 6.05 GiB von 15.52 GiB
das rund 6Gb von deinen 16GB in Gebrauch sind, hat aber nichts damit zu tun, das du addiert mehr vergeben hast als tatsächlich zur Verfügung steht.
vereinfachtes Beispiel
Gesamt 16GB
Host 4GB, benutzt 3GB
VM1 6GB, benutzt 3GB
VM2 8GB, benutzt 5GB
VM3 4GB, benutzt 3GB
sind addiert
vergeben 22GB, in Gebrauch 14GB(theoretisch noch 2GB Luft)sollte nun die ein oder andere Maschine deutlich mehr Ram brauchen, kann es passieren, das die 16GB erreicht werden und der Host abschmiert.
Heisst, nicht die Zahlen addiert was aktuell verbraucht wird, ist entscheidend, sondern die Gesamtvergabe sollte/darf nicht größer sein als generell zu Verfügung steht, damit es zu keiner Überschreitung kommen kann.
-
@crunchip
Klasse anschaulich erklärt. Darüber bin ich ganz am Anfang auch mal gestolpert.Ich habe bei mir 2 GB für den Host frei gelassen, aber mal so aus Interesse: Wo kann ich eigentlich den zugeteilten Speicher für den Host sehen oder einstellen? Ich finde da nichts.
Mir fällt gerade ein:
So komische Effekte tauchen auch auf wenn die Festplatten überbelegt sind. -
@chaot sagte in Ram läuft voll:
Wo kann ich eigentlich den zugeteilten Speicher für den Host sehen oder einstellen?
Ja, das würde mich auch interessieren.
Ich starte jede Nacht meine VM iob neu damit diese nicht voll läuft.
Habe also somit das gleiche Problem.Und noch ne Zusatzfrage:
@crunchip
Zählt man bei deiner Addition nur die aktiven VM dazu? -
@chaot sagte in Ram läuft voll:
Ich habe bei mir 2 GB für den Host frei gelassen, aber mal so aus Interesse: Wo kann ich eigentlich den zugeteilten Speicher für den Host sehen oder einstellen? Ich finde da nichts.
gute Frage, bei der Installation wird nur die Swap Größe festgelegt (siehe rechts in der Proxmox Gui), ausser man verwendet ZFS , dann gibt es keinen Swap.
Sollte man ZFS verwenden, muss/sollte dies konfiguriert werden (ZFS ARC Tuning), wieviel Ram ZFS benutzen darf.
Ansonsten bin ich da auch nur Laie und nicht all zu großen Plan von der ganzen Materie -
@chaot dem Host teilt man keinen Speicher zu, es ist der Host, der verteilt den Speicher an sich selbst und an die VMs
Und Überbelegung von Festplattenplatz ... ganz böse Sache aus meiner Sicht. Wenn man das macht braucht es unbedingt ein Monitoring das rechtzeitig alarmiert wenn der Crash droht.Ich habe beruflich viel damit zu tun:
- Wenn auf dem Virtualiserungshost die Festplatte vollläuft ist schnell "Ende Gelände", im schlimmsten Fall ist die VM schwer beschädigt / die Daten verloren. In neuen Versionen greifen die Host manchmal noch rechtzeitg ein und frieren die VMs ein.
- Die VM weis davon ja nichts. Die sieht nur "Hurra, noch 5GiB frei"
- gleiches gilt für den RAM. Oh, Cool, 6GiB RAM, da richtige ich mir doch einen größeren Cache ein. Bei Überbelegung versucht der Virtualisierungshost (Hypervisior) zu retten was zu retten ist, z.B. durch Balloning. Dabei wird über einen Treiber im System viel Arbeitsspeicher angefordert der an den Host zurück geht. Die VM lagert dann auf Festplatte aus. Du kannst dir aber merken: Wenn er das machen muss wird es ersteinmal ganz übel langsam, egal ob du SSD's oder NVMe hast. Nach einiger Laufzeit kann sich das beruhigen.
Also, Überprovisionieren von RAM und HDD ist böse, nach Möglichkeit nicht machen!
Bei mir läuft so eine Ubuntu-VM auch mit 512MiB ausreichen (ok, nicht die ioBroker VM), 1GiB reicht dann aber wirklich für das meiste (Webserver, Seafile usw.). Meine Windows-Server laufen auch mit 1 bis 2GiB. Ok, Windows Updates dauern dann sehr viel länger ...
Aber wenn das Betriebssystem weis das es wenig hat geht es auch gleich ganz anders damit um. -
@bahnuhr sagte in Ram läuft voll:
Zählt man bei deiner Addition nur die aktiven VM dazu?
na eigentlich alle angelegten, sonst müsste ich ja jedesmal erst durchrechen, ob ich die oder jene Maschine laufen lassen kann, ohne das es zu Problemen kommen kann.
@bahnuhr sagte in Ram läuft voll:
Ich starte jede Nacht meine VM iob neu damit diese nicht voll läuft
das ist eigentlich nicht nötig, das regelt das System von alleine (sollte zumindest)
-
Guten Morgen,
ich habe den iob in einer VM und dort 6GB Ram zugewiesen.
Und auch dieses "Balloning" ist an.
Sollte man dies ausschalten ? -
@bahnuhr jepp. Dann versucht er bei der VM nicht den Speicher zurück zu holen
-
@bananajoe sagte in Ram läuft voll:
@bahnuhr jepp. Dann versucht er bei der VM nicht den Speicher zurück zu holen
So, ich habs jetzt einmal bei der VM iob ausgeschaltet.
In der Übersicht steht es jetzt so:
Ist dies standardmäßig eingeschaltet ?
Bei den anderen ist der Haken noch drin.
Überall raus ? -
@bahnuhr öhm ich hab nur meinen Senf dazu gegeben weil es um Virtualisierung gibt, deine "was auch immer Lösung die ich oben im Text nicht finde" kenne ich nicht. Ich kann nur VMware ...