Leistungsmangel beim einfachen Setup

arnaud056

Renowned Member
Jan 3, 2016
25
4
68
Guten Tag,

ich versuche die Situation meines Heim-Servers zusammenzufassen:
- Board: MSI A320
- Proc: AMD A10-9700E (quad-Core)
- 16GB RAM
- 2x Festplatten 2,5'', 5400U/min, à 1TB, als Mirror ZFS (RAID1), SATA2
- Standard Installation von Proxmox as Stand-alone, kein "tuning" - 8GB Swap

Ergebnis: Ich schaffe es nicht, eine 3. VM (Centos server) am Laufen zu bekommen. Sobald die Maschine etwas arbeiten muss (beim booten einer VM z.B.) geht der I/O-Ratio sofort hoch (>30% bis 70%) und die 3. VM kann nicht gestartet werden (friert ein). Selbst mit nur 2 VM merkt man, dass der I/O-Ration sehr empfindlich ist.

Hintergrund Infos:
- Ursprünglich wurde die Installation mit 2 SSD (à 240GB - Mirror ZFS RAID1) durchgeführt. Damit was das ganze viel schneller. Nur nach ein paar Wochen stieg die eine Platte ständig aus dem Pool und ich habe schnell bemerkt, dass die 240GB viel zu klein sind.
- ich habe dann die VM's auf meine proxmox Test-Maschine (J1900 miniiTX, 4x 1,9GHz, 8GB RAM und 2x Festplatten 2,5'' (die gleichen, die ich jetzt in der Produktionsmaschine habe) migriert. Damit lief es gar nicht so schlecht, wenn man die kleine Leistung berücksichtigt. Es läuft in jedem Fall viel besser als bei der stärkeren Produktionsmaschine.
- Ich habe bei der Produktionsmaschine die SSDs durch 2,5'' Festplatten ersetzt und /rpool/ROOT/pve-1 per "zfs send | zfs recv" kopiert => rpool hat die Konfiguration, die mit den SSDs installiert wurde.

Ein paar Werte - alle VMs aus:
- bei der Test-Proxmox:
Code:
root@proxmox-miniITX:~# pveperf
CPU BOGOMIPS:      15993.60
REGEX/SECOND:      437320
HD SIZE:           419.04 GB (rpool/ROOT/pve-1)
FSYNCS/SECOND:     79.65
DNS EXT:           158.34 ms
DNS INT:           193.29 ms (guedel.eu)

- bei der Produktions-Proxmox:
Code:
root@vindilis:~# pveperf
CPU BOGOMIPS:      24000.00
REGEX/SECOND:      1995610
HD SIZE:           719.18 GB (rpool/ROOT/pve-1)
FSYNCS/SECOND:     87.43
DNS EXT:           167.70 ms
DNS INT:           206.81 ms (guedel.eu)

wie ich es in diesem Forum gelesen habe, habe ich dann die Sync-Funktion ausgeschaltet (es stand, u.a. dass im Falle eines "Unfalles" die letzten ca. 5 Sek. Daten verloren gehen würden , was in meinem Fall OK wäre). Das ergibt bei der Produktions-Proxmox:
Code:
root@vindilis:~# zfs set sync=disabled rpool
root@vindilis:~# pveperf
CPU BOGOMIPS:      24000.00
REGEX/SECOND:      1987960
HD SIZE:           719.18 GB (rpool/ROOT/pve-1)
FSYNCS/SECOND:     21689.96
DNS EXT:           188.64 ms
DNS INT:           184.90 ms (guedel.eu)

Damit läuft es schon viel besser, auch wenn der I/O-Ration weiterhin bei jeder Kleinigkeit hoch geht.
Ich konnte ein 3. VM und sogar eine 4. am Laufen bekommen, aber es bleibt instabil: die VMs dürfen nicht gleichzeitig, sodern in eine bestimmten reihenfolge gestartet werden, sobald der I/O wieder unter 5% gesunken ist. Manchmal muss ich die Proxmox neu starten, wenn die eine oder andere VM neu gestartet werden muss, weil der I/O über 25% bleibt und das Ganze so gut wie eingefroren ist.

Jede VM hat max. 3GB ram (=> bei 4 Stück bleibt was über für die Proxmox), eine davon hat 2 Cores, die 3 anderen nur 1 Core. Gebe ich mehr, verschlechtert sich die Situation.


Dieses Phänomen gibt es nicht bei der Test-Proxmox: ich kann alle 4 VMs gleichzeitig starten, natürlich gehen dabei alle Anzeige auf Rot aber nach 2 Minuten hat sich alles von selbst beruhig. Sogar bei eingeschalteter ZFS-Sync!


Fazit: irgendwo ist der Wurm in der "großen" Proxmox weil die "kleine" mit den selben VMs besser läuft!!!

=> woran kann es liegen?
Ich lese oft Begriffe wie "zfs_arc" oder "swappiness" auf zfs.....Setups mit separater log-Partition, SSD-Unterstützung für ZFS usw.... aber meine Kenntnisse ermöglichen mir z.Z. nicht den entsprechenden Durchblick zu bekommen und es für meinem Fall anzupassen.

=> meine Hauptfrage ist eingentlich sehr einfach: Wie kann ich diese sehr einfache Hardware-Konfiguration richtig am Laufen bekommen?
Ich habe noch eine funktionierende SSD (240GB) sowie 2 SATA-Ports zur Verfügung => vielleicht kann man damit einen besseren Setup aufbauen.

Nebenfrage: Ist es normal, dass die eine SSD nach 3 Wochen kaputt gegangen ist??

Vielen Dank für jeden Hinweis und Anregung.

Gruß Arnaud
 
Jede VM hat max. 3GB ram (=> bei 4 Stück bleibt was über für die Proxmox), eine davon hat 2 Cores, die 3 anderen nur 1 Core. Gebe ich mehr, verschlechtert sich die Situation.
ohne auf alle details des posts einzugehen, ich orte hier eine fehleinschätzung:

zfs kann standardmäßig bis zu der hälfte des rams verwenden (also 8/16 GB RAM) dann bleibt für den host + vms nur mehr 8 (dh viel weniger als die 4*3 bzw 3*3)

das problem wird sein, das beim starten einer vm versucht wird, ram freizuschaufeln (was natürlich das io delay hochschraubt, da er die daten von disk holen muss/auf disk schreiben muss)
 
Hallo Dominik,

vielen Dank für deine Rückmeldung.

In der Tat habe die Dokumentation https://pve.proxmox.com/wiki/ZFS_on_Linux falsch verstanden: Ich dachte Minimum wäre 8GB und nicht 8 GB+ X GB für die VMs. (wieso läuft dann die kleine Proxmox mit 3VMs bei 8GB RAM??)
Also benötige ich auf längerer Zeit noch ein 16GB Riegel.
Irgendwo im www hatte ich auch gelesen, dass bei ZFS 1GB RAM pro TB Speicherplatz_Festplatte notwendig wäre. Dies scheint also bei Proxmox nicht zu gelten.

Ich habe jetzt auf 2GB RAM pro VM deduziert und 3VMs zZ am Laufen: Der I/O geht weiterhin hoch, wenn die VMs starten aber es baut sich jetzt weder swap noch KSM auf.
Ist KSM-sharing auch ein Hinweis auf zu wenig RAM? Kann man es reduzieren? Wenn ein Mal aufgebaut, scheint es weiterhin an der Stelle zu bleiben, auch wenn gar keine VM mehr laufen.
Interessant ist zu sehen, dass insgesamt ~11GB RAM in Verwendung ist, obwohl die VMs dann max. 6 verbrauchen.

Soll ich die "swappiness" auf 10 reduzieren?

Gruß Arnaud
 
dass bei ZFS 1GB RAM pro TB Speicherplatz_Festplatte notwendig wäre. Dies scheint also bei Proxmox nicht zu gelten.
das ist generell eine gute Empfehlung, wenn man gute Geschwindigkeiten erreichen will, da ZFS den RAM (so wie alle anderen Dateisysteme auch) als Cache nutzt

Ist KSM-sharing auch ein Hinweis auf zu wenig RAM? Kann man es reduzieren?
ksm sharing wird erst bei >80% Speicher Auslastung aktiv also kann das schon ein Indikator sein. Für die Konfiguration bzw (de)aktivierung ist der service ksmtuned bzw. /etc/ksmtuned.conf verantwortlich
 
OK, danke Dominik,

Das KSM-sharing ab 80% RAM-Belegung konnte ich gut beobachten.

Ich habe jetzt das Ganze halbwegs stabil am Laufen. Dafür habe ich das "Balloon" RAM-sharing der VMs deaktiviert.
Ich habe noch einen RAM-Riegel bestellt und etwas schnelleren Festplatten (HDD) organisiert.
Bin gespannt.....:)

Gruß Arnaud
 
OK, danke Dominik,

Das KSM-sharing ab 80% RAM-Belegung konnte ich gut beobachten.

Ich habe jetzt das Ganze halbwegs stabil am Laufen. Dafür habe ich das "Balloon" RAM-sharing der VMs deaktiviert.
Ich habe noch einen RAM-Riegel bestellt und etwas schnelleren Festplatten (HDD) organisiert.
Bin gespannt.....:)

Gruß Arnaud
Hi,
schnellere Platten sind definitiv wichtig. Mit zwei 5400er im Raid 1 wird das nichts!
Gut wäre auch eine vernünftige SSD (nicht consumer!) als Cache zu benutzen.

Udo
 
Hallo Udo,
2x 5400er sata2 Raid1 habe ich z.Z......
Es werden 2x7200er sata3 Raid1 werden.
Wie klein darf die SSD in meinem Fall sein (32Gb RAM)?
Danke.
Gruß Arnaud
 
Hallo Udo,
2x 5400er sata2 Raid1 habe ich z.Z......
Es werden 2x7200er sata3 Raid1 werden.
Wie klein darf die SSD in meinem Fall sein (32Gb RAM)?
Danke.
Gruß Arnaud
Hallo Arnaud,
als Schreibcache reicht 8GB sicherlich aus. Wie es mit den Lese-Cache aussieht hängt stark von deinen VMs ab, wenn die Daten im Cache sowieso nur einmal gelesen werden, wird er nicht helfen. Eine 32GB-SSD (z.B. Optane?) würde wahrscheinlich reichen.

Udo
 
Hallo Udo,
danke für die Erklärungen.
Ich werde versuchen, eine "vernünftige" 32er SSD zu besorgen.
Gruß Arnaud
 
  • Like
Reactions: fireon

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!