Gibt es mit PVE 2.x ggf. Änderungen bei der RAM-Nutzung, bzw. deren Anzeige bei VMs?

jim_os

Renowned Member
Oct 8, 2022
379
250
68
Germany
Moin zusammen

Ich habe vorgestern auf einer weiteren Kiste einen neuen, weiteren PVE Host in Betrieb genommen und bei dem die z.Z. aktuelle PVE Version installiert und am laufen. D.h. auf dem neuen PVE Host läuft aktuell PVE 9.2.2 mit Kernel 7.0.2-6-pve. Dann habe ich auf dem neuen PVE Host eine Linux NAS VM eingerichtet und zwar genau so - sprich mit der gleichen NAS-Version - wie sie bisher auch schon auf dem alten PVE Host lief. Bei dem neuen PVE Host wird jetzt bei der NAS VM dauerhaft eine RAM-Nutzung von über 100 % angezeigt, was halt vorher bei dem alten Host nicht der Fall war.

Da Bilder ja bekanntlich mehr als Worte sagen. :D

Kiste 1 mit dem älteren PVE Host
Alter_PVE_Host.png

Kiste 2 mit dem neuen PVE Host
Neuer_PVE_Host.png

Auf dem alten Host läuft z.Z. nur eine Home Assistant VM und auf dem neueren PVE Host nur die NAS VM.

Die RAM-Auslastung der NAS VM bei dem alten PVE Host, auf dem aktuell noch PVE 9.1.9 mit Kernel 6.17.13-3-pve läuft, sah bisher so aus.

NAS_VM_RAM_alt.png
Von dem der VM zugewiesenen RAM von 10GB wurden lt. Anzeige immer zwischen 2 - 3 GB genutzt.

Die RAM-Auslastung der NAS VM bei dem neuen PVE Host. Auf dem läuft aktuell: PVE 9.2.2 mit Kernel 7.0.2-6-pve

NAS_VM_RAM_neu.png
NAS_VM_RAM_Day_neu.png

Der RAM-Verbrauch wird bei der NAS-Software selber dann mit lediglich 4 % von den zugewiesenen 8GB angegeben.

Die Einstellungen für Memory sind bei beiden NAS-VM identisch.

Alte NAs VM
Mem_Config_alte_VM.png
Neue NAS VM
Mem_Config_neue_VM.png


Ja ich weiß das das Thema RAM-Nutzung und was dann wie angezeigt wird in den letzten Jahren schon häufiger mal ein Thema war und ja mir ist durchaus bewusst das nicht genutztes RAM verschwendetes RAM ist, :D aber irgendwie muss es da m.E. jetzt irgendwelche Veränderungen gegeben haben, denn ansonsten kann ich mir dieses unterschiedliche RAM-Nutzungsverhalten, oder halt die RAM-Nutzungsanzeige, nicht wirklich erklären.

Hat dazu ggf. Irgendjemand eine Erklärung/Idee?

Edit: Vielleicht noch eine Ergänzung. Bei der NAS VM auf dem neuen PVE Host ist der QEMU Guest Agent installiert und aktiv.

VG Jim
 
Last edited:
Hi UdoB,

danke für den Link, aber was hat das Update von PVE 8 auf PVE 9 und das was dann da unter "VM Memory Consumption Shown is Higher" steht, mit meiner Frage zu tun? Bei mir geht es um eine Linux NAS VM die unter PVE 9 mit exakt den gleichen Einstellungen auf zwei verschiedenen PVE Host installiert ist. Halt einmal unter PVE 9.1.9 mit Kernel 6.17.13-3-pve und einmal unter PVE 9.2.2 mit Kernel 7.0.2-6-pve.

Irgendwie verstehe ich jetzt den Zusammenhang mit Deinem Link nicht, aber vielleicht habe ich dabei ja auch Irgendetwas übersehen?


Edit: Was mir gerade noch eingefallen ist. Bei der alten NAS VM auf dem PVE Host mit PVE 9.1.9 mit Kernel 6.17.13-3-pve ist kein QEMU Guest Agent installiert. Ich kann mich jetzt aber leider nicht mehr genau daran erinnern wann ich dann den QEMU Guest Agent bei der neuen NAS VM auf dem neuen PVE Host mit PVE 9.2.2 mit Kernel 7.0.2-6-pve nachinstalliert und aktiviert habe. Theoretisch kann es sein das ich das gestern um ca. 14.00 Uhr gemacht habe, was dann ggf. diesen Sprung bei der angezeigten RAM-Nutzung erklären könnte.

NAS_VM_RAM_Day_neu.png

Kann der installierte und aktivierte QEMU Guest Agent bei der neuen NAS VM unter PVE 9.2.2 mit Kernel 7.0.2-6-pve jetzt dazu führen das bei der VM jetzt immer eine RAM-Nutzung von 100% angezeigt wird? Hm .... das werde ich direkt gleich mal testen, in dem ich den QEMU Guest Agent mal deaktiviere. :)

VG Jim
 
Last edited:
  • Like
Reactions: ThoSo
Eine Möglichkeit wäre, das QEMU 11 und der Agent das vielleicht anderst übermitteln.
Ich denke auch, das der Software Unterschied mit reinspielen könnte. Wäre interessant, wenn die andere Maschine nachziehst, ob es dann wieder gleich ist oder nicht.
Die Hardware darunter ist gleich?
Die Softwarestände in der VM sind gleich?
Oben gibt es bei Speicher in den Hardcopies 2Gb Unterschied- also für mich nicht gleich!
 
Hi ThoSo,

ich habe gerade parallel zu Deinem Posting noch einen Nachtrag bei #3 erstellt. Ich werde jetzt mal testweise den QEMU Guest Agent bei der NAS VM deaktivieren. Mal sehen was dann die RAM-Anzeige macht. :D

Nein die Hardware ist schon etwas unterschiedlich. Einmal eine Fujitsu SFF Kiste und einmal eine Lenovo Tiny Kiste. Auch die CPUs und die RAM-Ausstattung ist unterschiedlich (siehe dazu die Screenshots in #1) , aber das dürfte sich ja eigentlich nicht auf die VM auswirken. Auch nicht das bei der einen NAS VM dann 2GB RAM mehr zugewiesen sind. Die NAS VM selber zeigt ja auch nur eine RAM-Nutzung von 4 % an.

Ja die Software für die VM ist die gleiche und auch die Einstellungen bei der VM.

Edit: Das mit dem QEMU Guest Agent muss ich doch später machen. Aktuell läuft hier noch ein Kopier-Job bei der NAS-VM. :D

Edit 2: Ja es gab ja auch das QEMU 11 Update. Gut möglich das auch das da ggf. eine Rolle spielt. Ich muss und werde hier dann noch etwas weiter "forschen" müssen.... :)

VG Jim
 
Last edited:
  • Like
Reactions: ThoSo
aber was hat das ... mit meiner Frage zu tun?
Das war nur ein freundlich gemeinter Hinweis auf das Thema rund um "mehr als 100% Ram".

Wenn das unpassend ist --> bitte ignorere es ;-)
 
Kein Problem. :) Mich hat das nur ein wenig irritiert und es hätte ja auch sein können das ich ggf. etwas übersehen/überlesen habe.

VG JIm
 
Ja ich bin mir sicher. :) Eben weil die gleiche NAS VM auf dem "alten" PVE Host etwas anderes macht und anzeigt und mir die NAS-Software - in dem Fall ein vDSM - das bei beiden PVE Host anzeigt.

NAS_VM_RAM.png

D.h. der RAM-Verbrauch ist lt. Anzeige von vDSM bei beiden NAS VMs in etwa gleich und liegt bei rund 3 - 5 %. Nur PVE zeigt halt diese unterschiedlichen Werte bei dem RAM-Verbauch.

Wie gesagt vermute ich das das wohl doch etwas mit dem QEMU Guest Agent zu tun hat und daher werde ich damit dann noch ein paar Dinge durchprobieren und testen. Das mache ich dann aber vermutlich erst morgen oder so.

Auf dem alten PVE Host läuft auch noch eine OMV VM, aber die habe ich auf dem neuen PVE Host bisher noch nicht installiert. Mache ich dann vermutlich auch morgen. Dann könnte ich auch sehe was mir die beiden PVE Hosts dann dafür bzgl. RAM so anzeigen.

VG Jim
 
Last edited:
Bitte teile den Hardware TAB deiner VM und die Ausgabe von free -h und cat /proc/meminfo innerhalb dieser. Schau auch mal hier. Ich bin recht sicher dass es nichts mit dem Gast Agent zu tun hat. Was genau erwartest du wenn du der VM fest 8GB zuweist? Ich bin mehr verwundert dass sie auf dem alten Host anders reagierte. Leider sieht man die Host Memory Usage nicht auf den Diagrammen.
 
Last edited:
Was wenn du im "Monitor" der VM "info balloon" eintippst? Vergleich den Output mit einer VM wo die Gast Sicht der RAM Anzeige wie erwartet klappt.

Denn der Guest Agent wird nicht für die Abfrage der RAM Auslastung aus Gast Sicht benötigt. Hier wird über das Ballooning Device gefragt. Das ist an sich laut Screenshot aktiv. Aber wenn wir vom Gast keine weiteren Infos bekommen, dann geht halt leider nichts.

Hier ist ein Beispiel wo die VM detaillierte Infos zurück liefert, mit einem aktuellen 7ner Kernel und pve-qemu-kvm 11.
Code:
balloon: actual=4096 max_mem=4096 total_mem=3902 free_mem=1326 mem_swapped_in=0 mem_swapped_out=0 major_page_faults=3447 minor_page_faults=303814925 last_update=1779654840
 
Moin @aaron
Denn der Guest Agent wird nicht für die Abfrage der RAM Auslastung aus Gast Sicht benötigt. Hier wird über das Ballooning Device gefragt.
OK das der QEMU Guest Agent nichts mit der RAM-Anzeige zu tun hat ist ja schon mal gut zu wissen, denn dann kann ich mir irgendwelche Versuche damit direkt sparen. :)

Ich habe
Code:
info balloon
jetzt mal bei beiden VMs ausgeführt und zusätzlich noch einmal testweise bei meiner Home Assistant VM, die noch auf dem alten PVE Host mit PVE 9.1.9 mit Kernel 6.17.13-3-pve läuft.

Das Ergebnis der Abfrage von der Home Assistant VM sieht so aus und somit so wie in Deinem Beispiel:
Code:
balloon: actual=6144 max_mem=6144 total_mem=5924 free_mem=1782 mem_swapped_in=0 mem_swapped_out=0 major_page_faults=20434 minor_page_faults=89525157 last_update=1779697106

Jetzt kommen ich zu den beiden NAS VM auf den beiden PVE Host und da wird es für mich leider immer noch nicht klarer.

Zuerst die NAS VM von dem alten PVE Host mit PVE 9.1.9 mit Kernel 6.17.13-3-pve
Code:
balloon: actual=10240 max_mem=10240

Dann die NAS VM von dem neuen PVE Host mit PVE 9.2.2 mit Kernel 7.0.2-6-pve
Code:
balloon: actual=8192 max_mem=8192

OK das würde dann ja bedeuten das von beiden NAS VM nicht die benötigten Daten geliefert werden. Dann stellt sich natürlich die Frage warum es dann zu diesem unterschiedlichen Anzeigeverhalten bzgl. RAM bei den VMs kommt.

Hier dann noch einmal alle m.M.n. relevanten Infos per Screenshots.

Zuerst die alte NAS VM auf einem Fujitsu Host mit PVE 9.1.9 mit Kernel 6.17.13-3-pve (Anm.: Die VM ist eigentlich schon außer Betrieb und wurde von mir vorhin nur für diese Tests gestartet.)

Fujitsu_NAS_VM_Hardware.png

Fujitsu_NAS_VM_Options.png
Fujitsu_NAS_VM_Summary.png
Fujitsu_NAS_VM_Memory.png
Es wird ein RAM-Verbrauch von ca. 2GB angezeigt und genau so kenne ich das für diese NAS VM auch schon aus den letzten rund 2 Jahren. D.h. ohne irgendeine Last bei der VM wurde dort kontinuierlich immer um die 2GB RAM Verbauch angezeigt.


Jetzt im Vergleich dazu die neue NAS VM auf einem Lenovo Tiny Host mit PVE 9.2.2 mit Kernel 7.0.2-6-pve

M920X_NAS_VM_Hardware.png
M920X_NAS_VM_Options.png
M920X_NAS_VM_Summary.png
M920X_NAS_VM_Memory.png

Bei der neuen NAS VM wird halt auch ohne jegliche Last nicht nur ein RAM Verbrauch von um die 2GB RAM angezeigt, sondern immer die vollen 8GB.

Auf beiden PVE Host läuft exakt die gleiche Version von vDSM auf dem Gast. Bei beiden NAS VMs wird bei der Gast Software (vDSM) ein ähnlicher RAM-Verbrauch angezeigt, wie er bereits in #9 zu sehen ist. Da ich hier im Posting nur max. 10 Screenshots posten darf hier nur ein Screenshot dazu. In dem Fall von der neue NAS VM unter PVE 9.2.2 mit Kernel 7.0.2-6-pve. Also die bei der PVE beim Gast < 100 % RAM-Verbrauch anzeigt.

M920X_NAS_Res_Mon.png

Ich sehe bei der Einrichtung der beiden NAS VM keine für mich relevanten Unterschiede die das unterschiedliche Verhalten der RAM-Anzeige erklären könnten. Außer das eben zwei unterschiedliche PVE und Kernel Versionen genutzt werden.

Vielleicht noch als Anmerkung: Für mich ist die RAM-Verbrauchsanzeige bei der PVE VM jetzt auch nicht "kriegsentscheidend", :D weil es dadurch ja vermutlich auch keinerlei Auswirkungen auf die VM gibt, aber mir ist dieser Unterschied halt aufgefallen und daher versuche ich zu verstehen woran das ggf. liegen könnte. :)

Edit: Da ich bei dem alten PVE Host ja eh irgendwann noch die PVE Updates installieren muss und somit bei dem danach dann auch PVE 9.2.2 mit Kernel 7.0.2-6-pve installiert ist, bin ich mal gespannt was mir dann danach für ein RAM-Verbrauch für die alte NAS VM angezeigt wird. Mal sehen ob ich für das PVE Update dann heute noch Zeit und Lust habe. :)

VG Jim
 

Attachments

  • M920X_NAS_VM_Hardware.png
    M920X_NAS_VM_Hardware.png
    54.3 KB · Views: 1
Last edited:
Mal sehen ob ich für das PVE Update dann heute noch Zeit und Lust habe. :)
Da ich jetzt gerade beides hatte habe ich jetzt bei dem alten PVE Host auch die Updates installiert. D.h. auf beiden Kisten läuft jetzt PVE 9.2.2 mit Kernel 7.0.2-6-pve.

Auf der alten Fujitsu Kiste sieht es jetzt nach dem PVE und Kernel Update

Fujitsu_PVE_9-2-2.png

aber weiterhin so aus. Für die NAS VM wird die Memory usage weiterhin korrekt angezeigt.

Fujitsu_NASVM_mit_PVE_9-2-2_ohne_Guest_Agent.png
Ergo die neue PVE Version und der neue Kernel spielen schon mal keine Rolle.

Dann habe ich auf dieser NAS VM auch noch den QEMU Guest Agent installiert. Aber auch danach wird Memory usage weiterhin korrrekt angezeigt.

Fujitsu_NASVM_mit_PVE_9-2-2_mit_Guest_Agent.png

Somit habe ich zwar immer noch keine Erklärung warum es bei zwei PVE Host mit der gleichen NAS VM zu einer unterschiedlichen Anzeige des RAM-Verbrauches kommt, aber ich weiß zumindest schon mal das es nicht an der PVE und auch nicht an der Kernel Version liegt. D.h. zumindest meine ursprüngliche Frage ist damit schon mal geklärt. :)

Was mir dann noch eingefallen ist ist das für die alte NAS VM noch eine ältere Loader Version benutzt wird. Auch das/die könnte als mögliche Ursache in Frage kommen. Aber darum werde ich mich heute und b.a.W. jetzt auch nicht mehr kümmern, einfach weil ich davon ausgehe:
Für mich ist die RAM-Verbrauchsanzeige bei der PVE VM jetzt auch nicht "kriegsentscheidend", :D weil es dadurch ja vermutlich auch keinerlei Auswirkungen auf die VM gibt,

Somit werde ich meine Suche nach der möglichen Ursache hier an der Stelle erst einmal beenden. Danke an alle die sich auch darüber Gedanken gemacht und mir Infos und Vorschläge geliefert haben! :) Sollte ich irgendwann in nächster Zeit doch noch etwas herausfinden werde ich das hier posten.

Da ich aber vermutlich wieder und weiterhin OMV als NAS VM nutzen werde, wird das Verhalten der beiden jetzigen NAS VMs mit vDSM für mich wohl ein Rätsel bleiben. :D

Edit: Doch noch ein kleiner Nachtrag. :) Eine OMV VM verhält sich auf der Lenovo Tiny Kiste auch vollkommen korrekt was die Anzeige des RAM-Verbrauches betrifft.

OMV_VM.png
Auch die Balloon Info kommt dann wie erwartet.
Code:
# info balloon
balloon: actual=4096 max_mem=4096 total_mem=3916 free_mem=3424 mem_swapped_in=0 mem_swapped_out=0 major_page_faults=474 minor_page_faults=180419 last_update=1779725049

VG Jim
 
Last edited:
Schalt mal die "Host Memory" Datenlinie im RAM Graphen ein (in die Legende klicken). Das ist die Host sich, sprich mit dem Overhead dazu.

Irgendwelche PCI devices scheinen nicht durchgereicht zu sein, das würde eine volle Auslastung erklären. Evtl etwas anderes weshalb die VM den vollen RAM allokiert, aber nicht voll in Verwendung hat? Aus Host sicht sieht das ja trotzdem wie belegte RAM aus, weil der ja nicht in das Gast OS sehen kann, welche Bereiche wirklich in Verwendung sind, welche nur für Cache oder gar nicht verwendet werden. Sofern via Ballooning Device da keine weitere Details kommen.
 
Hallo @aaron

Du meinst ja vermutlich das, bzw. so. Das ändert nichts an der Anzeige.
NASVM_Host_Memory_Usage.png

Nein PCI-Devices werden nicht durchgereicht. Das einzige was durchgereicht wird ist ein USB-Port an dem eine USV angeschlossen ist. Aber das war vorher bei der alten NAS VM auf der Fujitsu Kiste auch der Fall.

Komisch ist ja auch das bei der alten NAS VM auf der Fujitsu Kiste auch nichts bei Ballooning geliefert wird, sondern auch einfach nur
Code:
balloon: actual=10240 max_mem=10240
Trotzdem wird bei der alten NAS VM auf der Fujitsu Kiste dann eine korrekte und nicht diese > 100% RAM-Auslastung angezeigt.

Man wird mit der Zeit ja bekanntlich auch etwas "betriebsblind", :) aber ich kann - wenn ich die Einrichtungen der beiden NAS VMs vergleiche - da keinen relevanten Unterschied erkennen. Gut einer NAS VM sind 8 und der anderen 10GB RAM zugeordnet, aber das spielt hier in dem Fall ja keine Rolle.

Die wie erwähnt einzige Idee die ich als möglich Ursache noch hätte, wäre der verwendete ARC Loader für die NAS VM. Bei der älteren NAS VM auf der Fujistu Kiste, bei der der RAM-Verbrauch korrekt angezeigt wird, wird noch eine ältere ARC Loader Version verwendet. Bei der neueren NAS VM auf der Lenovo Kiste wird die ARC Loader 3.0.7 Version benutzt.

Was ich jetzt noch mache könnte ist auf der älteren Fujitsu Kiste eine neue NAS VM mit dem ARC Loader 3.0.7 zu erstellen, um dann zu sehen wie sich damit die PVE RAM-Verbrauchsanzeige verhält. Auch könnte ich auf der neueren Lenovo Kiste jetzt einfach noch mal eine weitere NAS VM installieren. Aber heute habe ich dazu keine Lust mehr :D und wenn mache ich das erst im Laufe der Woche. Für heute mache ich jetzt eh "Feierabend" und gehe offline. Auch noch einmal danke an Dich das Du Dir zu dem "Problem" auch Gedanken machst. :)


Edit: Hier noch einmal auf die Schnelle eine Gegenüberstellung der beiden NAS VM per Screenshots. Links die Fiujitsu Kiste mit korrekter PVE RAM Anzeige bei der NAS VM und rechts dann die Lenovo Kiste mit einer PVE RAM Anzeige von > 100% für die NAS VM.

NASVM_Hardware.png

NASVM_Options.png
M.M.n. keine relevanten Unterschiede und Ballooning ist auf beiden VMs so aktiviert wie ich es hier weiter oben auch schon gepostet hatte.


VG Jim
 
Last edited:
Du könntest auch einmal das alte NAS auf die neue Kiste kopieren und mal nachsegen, ob das vom verhalten bleibt, oder ebenfalls den RAM voll belegt anzeigt.
Nur so eine Idee
VG
ThoSo