Hohe load avg sobald Homeassistant (VM) läuft

BTRFS kann - mit nocow - auch SWAP.
Ich hab jetzt erstmal die VM auf 1.5G Ram und 1 CPU-Core reduziert.
Ich hatte gerade übrigens eine kleine Load-Eskalation:
Code:
top - 22:09:50 up  6:37,  3 users,  load average: 3,35, 71,19, 69,84
Tasks: 461 total,   1 running, 457 sleeping,   0 stopped,   3 zombie
%CPU(s): 15,0 us,  6,2 sy,  0,0 ni, 78,8 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
MiB Spch:   7724,5 total,     70,0 free,   4846,3 used,   2808,2 buff/cache
MiB Swap:      0,0 total,      0,0 free,      0,0 used.   2814,0 avail Spch

Die VM war auf einmal gestoppt (kein OOM Killer zu sehen, der war aber heute um 16h mal aktiv.
 
naja, dann war meine vorhersage wg. OOM Killer doch richtig. Also SWAP muss her. ;) Und wenn möglich auf 16GB RAM noch.
Ergänzung ()

Vor allem weiß du nicht, welches Prozess in dem Moment vom Kerner abgeschossen wird. Das wird so gemacht, das das OOM Problem schnell gelöst wird. Kann auch ein wichtiges Prozess treffen.
Ergänzung ()

henfri schrieb:
Ich hatte gerade übrigens eine kleine Load-Eskalation:
Du kannst noch mit iotop sehen, welche Prozesse hier das verursachen.
Ergänzung ()

Und htop (v3+) kann auch I/O anzeigen.
1716064889615.png

Man muss dafür den Tab in den Einstellungen aktivieren. Aber das verursacht dann auch mehr Last in der Umgebung.
 
Zuletzt bearbeitet:
henfri schrieb:
Und wie ist deine Load vor/nach VM start?
Auch wenn dein Problem nun wahrscheinlich zu wenig RAM ist.

Ohne VM 0.13 1 min LoadAVG, mit HA um die 0.4-0.5

2 vCPU mit 4 GB RAM auf einem HP T630 (AMD GX-420, 16GB Ram, 1GB SWAP und SSD), also bedeutend schwächer.

Mach dich auch kundig ob der Unifi Controller bei dir ständig laufen muss, der braucht alleine schon viel RAM.
 
Zuletzt bearbeitet:
Hallo,

xammu schrieb:
Auch wenn dein Problem nun wahrscheinlich zu wenig RAM ist.
Verständnisfrage: Wie erzeugt zu wenig RAM eine hohe LOAD (wenn man kein Swap hat)? Müsste dann nicht einfach irgendwann der OOM zuschlagen und - wenn nicht - es keinen Effekt haben?

Ich hab jetzt die Tipps umgesetzt:
  • SWAP eingerichtet (nocow)
  • HA nicht mehr als VM, sondern als Docker (das hat richtig was gebracht)
  • Unifi starte ich nur bei Bedarf

Ich bin jetzt auch bei 0.4.
Ich hab zudem in Homeassistant den profiler laufen lassen und es stellt sich raus, dass 50% der CPU Zeit durch HomeConnect beansprucht werden. Mit homeconnect_alt wird es nicht besser.

Gruß,
Hendrik
 
  • Gefällt mir
Reaktionen: klapproth
henfri schrieb:
Verständnisfrage: Wie erzeugt zu wenig RAM eine hohe LOAD (wenn man kein Swap hat)? Müsste dann nicht einfach irgendwann der OOM zuschlagen und - wenn nicht - es keinen Effekt haben?
Hier müsste man genauer schauen, wenn die Load steigt, was da los ist. D.h. welche Prozesse sind dafür verantwortlich.

Aber eine Load von 1-2 in einem kurzen Zeitraum ist ja nix wildes. Da würde ich mir kein Stress machen.
henfri schrieb:
Ich bin jetzt auch bei 0.4.
Aber was ist das Ziel? Eine Load auf 0.1 zu drücken? Du hast viel am Laufen und wenn es genutzt wird, dann geht die Load hoch. Alles doch normal.
Ergänzung ()

Zu Erklärung. Wenn wenig RAM vorhanden ist, dann muss Kernel häufig was lesen und schreiben. Da kann kaum was gecached werden. Und das führt zu steigender Load.
 
Ja, ich bin jetzt auch zufrieden.
Aber ich war im Durchschnitt der letzten Woche >1.
Der Speicher ist jetzt nur noch zu 3G ausgelastet. Da muss ich also auch nicht aufrüsten.

Gruß,
hendrik
 
  • Gefällt mir
Reaktionen: oicfar
henfri schrieb:
Der Speicher ist jetzt nur noch zu 3G ausgelastet. Da muss ich also auch nicht aufrüsten.
RAM ist da um genutzt zu werden.. :)

henfri schrieb:
Hallo,


Verständnisfrage: Wie erzeugt zu wenig RAM eine hohe LOAD (wenn man kein Swap hat)? Müsste dann nicht einfach irgendwann der OOM zuschlagen und - wenn nicht - es keinen Effekt haben?
Der Cache reicht beispielsweise nicht aus. Gerade DiskIO braucht viel Cache, vorallem Datenbanken.

Auf dieser Seite der Punkt "How Linux uses RAM (very simplified)"
https://askubuntu.com/questions/157793/why-is-swap-being-used-even-though-i-have-plenty-of-free-ram

Speicher: 7,5Gi 5,3Gi 111Mi 58Mi 2,1Gi 2,3Gi
7,5 GB gesamt
5,3 GB Benutzt
111 MB frei
2,1 GB für Cache und Puffer.
2,3 GB verfügbar

Wenn nun kein Platz für Cache mehr ist, muss Linux mehr auf Platte schreiben.
Erst wenn kein Platz für Programme mehr ist, kommt ein OOM.
Verfügbar ist etwas irreführend. Wenn Linux mehr für Programme benötigt verkleinert es Cache und Buffer, daher rechnet Linux die 2.1 GB zum Verfügbaren.

So sieht das bei mir aus:

Code:
root@omv:~# free -mh
              gesamt       benutzt     frei      gemns.  Puffer/Cache verfügbar
Speicher:       14Gi       3,7Gi       1,3Gi       6,7Mi         9Gi        10Gi
Swap:          974Mi       1,0Mi       973Mi
root@omv:~#
 
Zuletzt bearbeitet:
Hallo,

hier die Ausgabe human-readable
Code:
free -mwh
              gesamt       benutzt     frei      gemeins.   Puffer        Cache   verfügbar
Speicher:      7,5Gi       2,5Gi        94Mi        53Mi        40Mi       4,9Gi       5,0Gi
Swap:             0B          0B          0B

Da sehe ich gerade, dass nach dem Reboot der Swap nicht mehr aktiv ist - muss wohl in die fstab (swapon hatte ich gestern durchgeführt).

Ein paar Minuten später wird noch nix vom Swap verwendet:
Code:
 free -mwh
              gesamt       benutzt     frei      gemeins.   Puffer        Cache   verfügbar
Speicher:      7,5Gi       2,5Gi        77Mi        53Mi        41Mi       4,9Gi       5,1Gi
Swap:          8,0Gi       520Ki       8,0Gi

Wie gesagt, jetzt ohne VM und load bei 0.35 im langfristigen mittel.

Gruß,
Hendrik
 
Die Swap Nutzung wird in den kommenden 1-2 Tagen sichtbar werden.
 
  • Gefällt mir
Reaktionen: henfri

Ähnliche Themen

Zurück
Oben