der-phil
Goto Top

VMWare - maximale IO-Performance einer VM

Hallo!

Ich arbeite mich gerade mit VMWare ein, komme aber an einem Punkt nicht weiter:

Egal, was ich mache, schaffe ich nicht mehr, als ca. 100.000 IOPS innerhalb _einer_ VM.

Etwas ausführlicher:
- VMWare 6.7 U1
- Storage 1: lokales Flash Raid
- Storage 2: lokale NVMe
- Storage 3: iSCSI-Full-Flash-Storage

Alle drei Storages schaffen deutlich über 100.000 IOPS, wenn ich auf der Hardware direkt Windows 2016 installiere. Installiere ich Windows 2016 als VM fällt die Performance auf den gleichen, schlechten Wert.

Es sind keine Performancelimits konfiguriert.
Ich habe den LSI und den VMWare Paravirtualisierten Storage Treiber getestet - Ergebnis war nahezu gleich.

Kennt ihr das Problem?

Bisher habe ich irgendeinen Flaschenhals, den ich nicht finde. Mit einer zweiten VM erhalte ich zeitgleich fast die gleiche Performance --> das Storage kann mehr.

Ich wäre für alle Tipps dankbar.

Gruß
Phil

Content-Key: 393358

Url: https://administrator.de/contentid/393358

Printed on: April 23, 2024 at 20:04 o'clock

Member: SamvanRatt
SamvanRatt Nov 20, 2018 at 11:12:05 (UTC)
Goto Top
Hi Phil
ich teste zwar seltenst die Performance einer VM, aber generell:
a) die Virtualisierung (LAN, SCSI, SAS, ....) spielt seit 5.0 keine Rolle mehr, da sie zeitlich nicht akurat sein muss; sprich es läuft immer auf Fullspeed
b) was passiert wenn du die Hardware durchreichst und damit spielst?
c) alle Zugriffe werden in deiner VM wohl über VMFS laufen, wodurch die IRQ Last dann schnell eine Rolle spielt; wie viele vCPUs hast du bisher vergeben in allen VMs und wie viele sind's real?
d) wie misst du die IOPS? iometer, fio, bonnie++, hdtach ?

Gruß
Sam
Member: chgorges
chgorges Nov 20, 2018 at 11:28:17 (UTC)
Goto Top
Mich interressiert an der Stelle eher die Hardware.

a) Was ist das für ein Server
b) Was ist das genau für ein RAID-Controller
c) Welche RAID-Controllertreiber werden unter SRV 2016 auf Blech installiert
d) Welche RAID-Controllertreiber werden auf dem ESXi-Host installiert
Member: Der-Phil
Der-Phil Nov 20, 2018 updated at 11:46:15 (UTC)
Goto Top
Hallo!

Ich messe mit Microsoft diskspd, 8k, 50% write.

Der Server ist ein Supermicro-System, Intel Scalable 4114, 96 GB Ram
Die VM hat 8 vCPUs.
NVMe ist eine Intel 900P
Lokales Raid ist ein Raid 10 aus 6x Intel S4610 an einem LSI 9361-4i
iSCSI-Storage ist ein Starwind iSCSI-Cluster mit 40 SSDs


Die Frage ist einfach: Habt ihr überhaupt einmal deutlich über 100.000 IOPS in einer VM gemessen?

Grüße
Phil
Member: Der-Phil
Der-Phil Nov 20, 2018 at 11:51:17 (UTC)
Goto Top
Hallo!

Das hier ist etwas älter, aber auch nicht:
1 Mio IOPS pro Host, aber nur 100k IOPS pro VM:
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpa ...

Seite 13...
Member: aqui
aqui Nov 20, 2018 at 12:21:21 (UTC)
Goto Top
Steht in den Conclusions aber ganz anders !!
A single VM running on vSphere 5.0 is capable of supporting 300,000 I/O operations per second
Geht also wohl doch !
Man muss nur die entsprechende Anzahl an Paravirtual SCSI controller in die VM bringen egal ob man sie nutzt oder nicht dann gehts auch über 100k.
Member: Der-Phil
Der-Phil Nov 20, 2018 at 12:50:10 (UTC)
Goto Top
Hallo!

Ja, aber dann habe ich wieder keine 300.000 IOPS, sondern 3x100.000 IOPS, wenn ich mehrere SCSI-Controller benötige.
Member: Henere
Henere Nov 20, 2018 updated at 22:45:35 (UTC)
Goto Top
Servus,

welche Version nutzt Du ? Diskspd v2.0.17 ?
Mit welchen Parametern genau ? Dann würde ich das hier mal vergleichsweise auf nem Hyper-V laufen lassen. (Rein interessehalber. Hab zwar nicht ganz so viel Speicherplätze aber wäre mal interessant zu wissen.)

Grüße, Henere

Nachtrag: Die 2.0.21a ist wohl aktuell
Member: emeriks
emeriks Nov 21, 2018 at 08:02:40 (UTC)
Goto Top
Hi,
mal am Rande, interessehalber:
Welche Anwendung willst Du denn in einer VM laufen lassen, welche >100.000 IOpS produziert?

E.
Member: Th0mKa
Th0mKa Nov 21, 2018 updated at 14:37:47 (UTC)
Goto Top
Zitat von @Der-Phil:

Ja, aber dann habe ich wieder keine 300.000 IOPS, sondern 3x100.000 IOPS, wenn ich mehrere SCSI-Controller benötige.

Moin,

du machst das dann wie MS z. B. für ähnlich gelagerte Fälle in Azure empfiehlt, du machst drei VMDKs an drei Controllern und fasst das ganze logisch mit Storage Spaces zu einer Striped Disk zusammen.

/Thomas