Hohe IO Delay Werte

BigBen

Well-Known Member
Jun 18, 2015
135
4
58
Germany
Hallo,

sobald mehr als 3 virtuelle Systeme laufen, heben die IO Delay Werte spürbar ab. Folglich reagieren die Systeme immer langsamer.

Solange es sich bei den virtuellen Systemen nur um Linux handelt geht es noch.

Schlimm wird es meistens, wenn zusätzlich ein virtuelles Windows-System läuft. Dann kann man nicht mehr von einem performantes Proxmox-System sprechen.

Als Flaschenhals wurde die Festplatten vom Typ SATA ausgemacht.

Eingesetzt werden Festplatten vom Hersteller Western Digital aus der Roten Serie (spezielle NAS-Geräte, die im 24h Betrieb arbeiten)

Bevor ich mir nun andere Festplatten zulege, wollte ich nun mal herum fragen, welche Festplatten optimaler Weise zum Einsatz kommen sollten.

Ich habe erfahren, dass ein performanter zugriff auf die Festplatten durch einen großen Cache erzielt werden kann.

Die virtuellen Festplatten werden alle im RAW-Format abgespeichert.

Auszug einer VM-Beispiel-Config:

virtio0: local:201/vm-201-disk-1.raw,size=300G

Auch das Verteilen der Image-Dateien auf verschiedene Platten hat nicht viel gebracht.

Folgende Komponente kommen zum Einsatz:

Mainboard: Asus P8B-E/4L
CPU(s): 8 x Intel(R) Xeon(R) CPU E3-1230 V2 @ 3.30GHz (1 Socket)
RAM: 32 GB

Die Festplatten sind nicht in einem RAID zusammen geschaltet worden.

Softwaremäßig:
Proxmox Version 5.2

proxmox-ve: 5.2-2 (running kernel: 4.13.16-2-pve)
pve-manager: 5.2-1 (running version: 5.2-1/0fcd7879)
pve-kernel-4.15: 5.2-2
pve-kernel-4.13: 5.1-45
pve-kernel-4.15.17-2-pve: 4.15.17-10
pve-kernel-4.15.17-1-pve: 4.15.17-9
pve-kernel-4.13.16-3-pve: 4.13.16-49
pve-kernel-4.13.16-2-pve: 4.13.16-48
pve-kernel-4.13.16-1-pve: 4.13.16-46
pve-kernel-4.13.13-6-pve: 4.13.13-42
pve-kernel-4.13.13-5-pve: 4.13.13-38
pve-kernel-4.13.13-4-pve: 4.13.13-35
pve-kernel-4.13.13-3-pve: 4.13.13-34
pve-kernel-4.4.98-3-pve: 4.4.98-102
pve-kernel-4.4.83-1-pve: 4.4.83-96
pve-kernel-4.4.76-1-pve: 4.4.76-94
pve-kernel-4.4.67-1-pve: 4.4.67-92
pve-kernel-4.4.62-1-pve: 4.4.62-88
pve-kernel-4.4.59-1-pve: 4.4.59-87
pve-kernel-4.4.49-1-pve: 4.4.49-86
pve-kernel-4.4.44-1-pve: 4.4.44-84
pve-kernel-4.4.40-1-pve: 4.4.40-82
pve-kernel-4.4.35-2-pve: 4.4.35-79
pve-kernel-4.4.35-1-pve: 4.4.35-77
pve-kernel-4.4.24-1-pve: 4.4.24-72
pve-kernel-4.4.21-1-pve: 4.4.21-71
pve-kernel-4.4.19-1-pve: 4.4.19-66
pve-kernel-4.4.16-1-pve: 4.4.16-64
pve-kernel-4.4.13-2-pve: 4.4.13-58
pve-kernel-4.4.13-1-pve: 4.4.13-56
pve-kernel-4.4.10-1-pve: 4.4.10-54
pve-kernel-4.4.8-1-pve: 4.4.8-52
pve-kernel-4.4.6-1-pve: 4.4.6-48
pve-kernel-4.2.8-1-pve: 4.2.8-41
pve-kernel-4.2.6-1-pve: 4.2.6-36
corosync: 2.4.2-pve5
criu: 2.11.1-1~bpo90
glusterfs-client: 3.8.8-1
ksm-control-daemon: 1.2-2
libjs-extjs: 6.0.1-2
libpve-access-control: 5.0-8
libpve-apiclient-perl: 2.0-4
libpve-common-perl: 5.0-32
libpve-guest-common-perl: 2.0-16
libpve-http-server-perl: 2.0-9
libpve-storage-perl: 5.0-23
libqb0: 1.0.1-1
lvm2: 2.02.168-pve6
lxc-pve: 3.0.0-3
lxcfs: 3.0.0-1
novnc-pve: 0.6-4
proxmox-widget-toolkit: 1.0-18
pve-cluster: 5.0-27
pve-container: 2.0-23
pve-docs: 5.2-4
pve-firewall: 3.0-9
pve-firmware: 2.0-4
pve-ha-manager: 2.0-5
pve-i18n: 1.0-5
pve-libspice-server1: 0.12.8-3
pve-qemu-kvm: 2.11.1-5
pve-xtermjs: 1.0-5
qemu-server: 5.0-26
smartmontools: 6.5+svn4324-1
spiceterm: 3.0-5
vncterm: 1.5-3
zfsutils-linux: 0.7.9-pve1~bpo9
 
Hallo,

zwischenzeitlich wurde mit Hilfe von iotop festgestellt, dass die Bremse an den vielen nfs mount-Punkten liegt. Fast alle werden von einem VM-System beansprucht.

Über die nfs-Punkten werden über LAN diverse freigegebenen Ressourcen anderer Systeme ausgelesen.

Wenn die max. Lese Rate der Netzkarte beschränkt wird, senkt sich die hohe io Delay Auslastung erheblich.

In der betreffenden VM läuft allerdings ein Backup-Service, der den Datenbestand von vielen anderen Systeme sichert. Dieser Service läuft ständig.

Wenn nun die Lese-Rate der Netzkarte limitiert wird, braucht der Service natürlich viel länger, um die Dateien übertragen zu können.

Diesbezüglich ist mir schleierhaft, warum eine hohe Lese-Rate eine Auswirkung auf den IO Delay Rate haben kann.

Ich bi immer davon ausgegangen, dass gelesene Daten über das LAN-Netzwerk keine direkte Auswirkung auf den IO delay der Festplatten haben kann, zumal die ausgelesenen Daten nicht abgespeichert, sondern lediglich komprimiert und verschlüsselt im LAN weitergeleitet werden.

Kann mir da jemand weitere Informationen zu geben?
 
Ich habe hier auch WDRED Pro Platten am laufen. 8x2TB im ZFS Raid10. Das läuft super. Hab aber noch 4x Samsung Enterpise SSD's im ZFS Raid 10 am laufen. Zwischen SSD's und HDD's ist halt mal ein großer Unterschied. Die VM's laufen bei mir alle auf den SSD's, die Daten werden per NFS vom Proxmoxhost direkt in die VMs gemounted. Je nach App muss man halt auf SSD oder HDD.
 
Der Unterschied RED vs. RED PRO ist definitiv schon mal zu beachten, da die RPM sich doch etwas unterscheiden, und auch Cache etc. anders dimensioniert. Hinzu kommt das die WED RED HDDs für den EInsatz in Storage Systemen gedacht sind, das bedeutet eher zur Ablage von Daten, und nicht für den kontinuierlichen Lese-/Schreibzugriff. Da wirst du sicher bessere Ergebnisse mit den WD Gold erreichen!
 
Hallo,

vielen Dank für die Info.

Mit ZFS habe ich mich noch nicht auseinander gesetzt.

Mangels Platz im Tower-Gehäuse konnten nicht mehr als 4 Platten untergebracht werden, obwohl am Mainboard selbst viel mehr Platten angeschlossen werden könnten. Da die SATA-Kabel selbst nicht zu lang sein dürfen, können die Kabel schlecht nach außen zu einem Plattenkäfig geführt werden.

@fireon: Wie hast Du denn die Platten (z.B. 8x2TB) extern anschlossen? Oder kommt ein spezielles RACK-Gehäuse zum Einsatz, in dem etwa 16 (oder noch mehr) Platten Platz finden?
 
Hallo Marsian,

vielen Dank für den Hinweis auf "WD Gold". Diese Festplatten haben ja einen viel größeren Cache, wie die der RED-Serie.

Derzeit sind die Platten in einem Tower Gehäuse untergebracht. Wie ich schon im vorherigen Post geschriebnen habe, können leider keine weiteren Platten im GEhäuse montiert werden. Wie hast Du die Platten montiert?
 
@fireon: Wie hast Du denn die Platten (z.B. 8x2TB) extern anschlossen? Oder kommt ein spezielles RACK-Gehäuse zum Einsatz, in dem etwa 16 (oder noch mehr) Platten Platz finden?
Ja, ich hab mir ein RackGehäuse von Intertech besorgt. Wenns laut werden darf ist es egal dann kannste z.B. sowas nehmen. Die Kühlung ist der Hammer. Hab aber hier leise Lüfter eingebaut. Einfach auf der Seite durchschauen die haben auch fette Towergehäuse.
 
proxmox-ve: 5.2-2 (running kernel: 4.13.16-2-pve)
pve-manager: 5.2-1 (running version: 5.2-1/0fcd7879)
pve-kernel-4.15: 5.2-2
pve-kernel-4.13: 5.1-45
pve-kernel-4.15.17-2-pve: 4.15.17-10
pve-kernel-4.15.17-1-pve: 4.15.17-9
pve-kernel-4.13.16-3-pve: 4.13.16-49
pve-kernel-4.13.16-2-pve: 4.13.16-48
pve-kernel-4.13.16-1-pve: 4.13.16-46
pve-kernel-4.13.13-6-pve: 4.13.13-42
pve-kernel-4.13.13-5-pve: 4.13.13-38
pve-kernel-4.13.13-4-pve: 4.13.13-35
pve-kernel-4.13.13-3-pve: 4.13.13-34
pve-kernel-4.4.98-3-pve: 4.4.98-102
pve-kernel-4.4.83-1-pve: 4.4.83-96
pve-kernel-4.4.76-1-pve: 4.4.76-94
pve-kernel-4.4.67-1-pve: 4.4.67-92
pve-kernel-4.4.62-1-pve: 4.4.62-88
pve-kernel-4.4.59-1-pve: 4.4.59-87
pve-kernel-4.4.49-1-pve: 4.4.49-86
pve-kernel-4.4.44-1-pve: 4.4.44-84
pve-kernel-4.4.40-1-pve: 4.4.40-82
pve-kernel-4.4.35-2-pve: 4.4.35-79
pve-kernel-4.4.35-1-pve: 4.4.35-77
pve-kernel-4.4.24-1-pve: 4.4.24-72
pve-kernel-4.4.21-1-pve: 4.4.21-71
pve-kernel-4.4.19-1-pve: 4.4.19-66
pve-kernel-4.4.16-1-pve: 4.4.16-64
pve-kernel-4.4.13-2-pve: 4.4.13-58
pve-kernel-4.4.13-1-pve: 4.4.13-56
pve-kernel-4.4.10-1-pve: 4.4.10-54
pve-kernel-4.4.8-1-pve: 4.4.8-52
pve-kernel-4.4.6-1-pve: 4.4.6-48
pve-kernel-4.2.8-1-pve: 4.2.8-41
pve-kernel-4.2.6-1-pve: 4.2.6-36
Hi,
tut nix zu Sache, aber du solltest vielleicht mal ein paar alte Kernel purgen?!

Udo
 
Hi,
Wie hast Du die Platten montiert?
wir haben haben nur 19" Systeme im RZ, und entweder sind die HDDs/SSDs Teil des Servers oder der Storage Lösung welche daran angebunden ist ;)

In deinem Fall würde ich ein großes Gehäude nehmen mit möglichst vielen HDD Slots, wie zb. http://www.chieftec.eu/de/gehäuse/e-atx/uni-serie/lbx-02b-u3.html

Fairerweise muss man allerdings auch sagen, das dein System ja schon ein bisschen älter ist, da können die HDDs ein Bottleneck sein, müssen aber nicht - gerade bei direktem Anschluss der HDDs am Board und einem Controller ohne eigenem Cache kann sich das auch bemerkbar machen.
 
Hallo Udo,

beim Posten ist mir das auch schon aufgefallen. Zwishenzeitlich wurden ein großteil der alten Kernels bereits gelöscht.

Hi,
tut nix zu Sache, aber du solltest vielleicht mal ein paar alte Kernel purgen?!
Udo
 
  • Like
Reactions: udo
Hallo,

vielen Dank für die Antworten.

Fairerweise muss man allerdings auch sagen, das dein System ja schon ein bisschen älter ist, da können die HDDs ein Bottleneck sein

Das System ist hardwaremäßig in der Tat schon etwas älter ...

Von anderer Stelle hat man mir dazu geraten, ein ZFS mit einer kleineren SSD als Cache aufzubauen. Hier können auch langsamere Festplatten verwendet werden. Die SSD-Platte nimmt in dem Fall die wegzuschreibenden Daten zügig entgegen und gibt den Befehl schnell wieder frei. Die aufgelaufenen Daten werden im Hintergrund weggeschrieben.

Als Gehäuse hat mir bislang dieses gefallen. Es bietet Platz für bis zu 8 Wechselrahmen.

Cool ist auch die Option vom Hersteller Chieftec 3 HDDs in 2 Schächter zu verbauen. Geradezu genial ist hierbei die temperatur-abhängige Steuerung der Lüfter.
 
Last edited:

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!