VMware Performance Vergleich SCSI Controller und NVMe Controller
Heutzutage werden immer mehr Workloads in virtuellen Maschinen (VMs) ausgeführt, darunter auch Workloads die deutlich mehr IO im Gastbetriebssystem benötigen. Bei einer VM auf VMware vSphere werden in der Standardkonfiguration alle virtuellen Festplatten (VMDKs) an den LSI Logical SAS SCSI Adapter angeschlossen. Dieser Adapter wird von allen Betriebssystemen ohne Installation zusätzlicher Treiber erkannt, bietet aber nicht immer die beste Performance, insbesondere wenn ein SSD RAID oder NVMe Storage eingesetzt wird. In diesem Artikel haben wir die virtuellen Storage Controller LSI Logical SAS, VMware Paravirtual und den NVMe Controller miteinander verglichen.
Controller Modelle
Der Standard-Controller in fast jeder VM ist der LSI Logical SAS SCSI Controller. Dieser Controller wird von jedem Gastbetriebssystem ohne zusätzliche Treiber erkannt und unterstützt. Er eignet sich für nahezu jeden Workload, der keine großen I/O Anforderungen hat, zudem ist er für die Konfiguration von Microsoft Server Cluster Service (MSCS) notwendig.
Ab ESXi 4.0 und virtueller Hardwareversion 7 ist der VMware Paravirtual Controller verfügbar. Dieser Controller wurde für High Performance Storagesysteme entwickelt, da er wesentlich höhere I/O verarbeiten kann und dabei die CPU Last reduziert. Damit der Controller vom Gastbetriebssystem genutzt werden kann, müssen die VMware Tools installiert werden.
Ab ESXi 6.5 und virtueller Hardwareversion 13 kann der VM auch ein NVMe Controller hinzugefügt werden. Dieser Controller optimiert noch einmal die Performance von SSD RAIDs, NVMe und PMEM Storage. Ab VMware vSphere 7.0 und virtueller Hardwareversion 17 ist dieser Controller in der VM default Konfiguration enthalten und ersetzt somit den SCSI Controller.
Die Auswahl des richtigen Controllers hängt von den Anwendungen innerhalb der VM ab. Wenn es sich beispielsweise um eine Office VM handelt, wird relativ wenig Performance benötigt und der Standard LSI Logical SAS SCSI Controller kann verwendet werden. Falls innerhalb der VM mehr Storage Performance benötigt wird und auch das dahinterliegende Storage System mehr Performance bietet, eignet sich in der Regel der VMware Paravirtual Controller besser. Für absolute High End Performance bei Verwendung eines SSD RAIDs, NVMe- oder PMEM-Storage und sehr hohen Performance Anforderungen innerhalb der VM ist der NVMe Controller die beste Wahl.
Performancetest
Wir haben verschiedene Performancetests zu unterschiedlichen Szenarien durchgeführt. Die Testszenarien sind lediglich Beispiele, die einzelnen Werte sollten individuell an den eigenen Workload angepasst werden, um realistische Ergebnisse zu erzielen. Details des verwendeten Testsystems:
Hardware / Software:
- Supermicro Mainboard X11DPi-NT
- 2x Intel Xeon Gold 5222 (3,80GHz, 4-Core, 16,5MB)
- 256GB ECC Registered (RDIMM) DDR4 2666 RAM 4 Rank
- 3,2 TB Samsung SSD NVMe PCI-E 3.0 (PM1725b)
- ESXi 6.7.0 Update 2 (Build 13981272)
Test-VM
- Windows 10 Pro (18362)
- 2 CPU Sockets
- 8 vCPUs
- 8GB RAM
- VMware Paravirtual
- LSI Logical SAS
- NVMe Controller
- Thick-Provisioned eager-zeroed VMDK
Performance Vergleich
Database Server
Database Server (8K Random; 70% Read; 8 Threads; 16 Outstanding IO) | |||||||
IOPS | MByte/s | Latency (ms) | CPU Usage (%) | ||||
---|---|---|---|---|---|---|---|
LSI Logical SAS | 78210.16 | 611.02 | 1.633 | 24.81 | |||
VMware Paravirtual | 153723.45 | 1200.96 | 0.832 | 31.27 | |||
NVMe Controller | 203612.54 | 1590.72 | 0.628 | 48.03 |
E-Mail Server
Email Server (4K Random; 60% Read; 8 Threads; 16 Outstanding IO) | |||||||
IOPS | MByte/s | Latency (ms) | CPU Usage (%) | ||||
---|---|---|---|---|---|---|---|
LSI Logical SAS | 83403.47 | 325.79 | 1.506 | 23.52 | |||
VMware Paravirtual | 157624.97 | 615.72 | 0.811 | 31.46 | |||
NVMe Controller | 236622.59 | 924.31 | 0.540 | 52.11 |
File Server
File Server (64K Sequential; 90% Read; 8 Threads; 16 Outstanding IO) | |||||||
IOPS | MByte/s | Latency (ms) | CPU Usage (%) | ||||
---|---|---|---|---|---|---|---|
LSI Logical SAS | 44739.43 | 2796.21 | 2.860 | 12.29 | |||
VMware Paravirtual | 53717.26 | 3357.33 | 2.382 | 16.87 | |||
NVMe Controller | 48929.05 | 3058.07 | 2.615 | 14.14 |
Streaming Media Server
Streaming Media Server (5120K Random; 80% Read; 8 Threads; 16 Outstanding IO) | |||||||
IOPS | MByte/s | Latency (ms) | CPU Usage (%) | ||||
---|---|---|---|---|---|---|---|
LSI Logical SAS | 458.16 | 2290.81 | 279.607 | 2.18 | |||
VMware Paravirtual | 504.22 | 2521.10 | 253.949 | 12.26 | |||
NVMe Controller | 505.14 | 2525.68 | 253.659 | 1.56 |
VDI Workload
VDI Workload (4K Random; 20% Read; 8 Threads; 8 Outstanding IO) | |||||||
IOPS | MByte/s | Latency (ms) | CPU Usage (%) | ||||
---|---|---|---|---|---|---|---|
LSI Logical SAS | 140155.89 | 547.48 | 0.456 | 35.69 | |||
VMware Paravirtual | 163073.26 | 637.00 | 0.392 | 37.98 | |||
NVMe Controller | 203464.89 | 794.78 | 0.314 | 49.55 |
Autor: Thomas-Krenn.AG Bei der Thomas-Krenn.AG achten wir auf den bestmöglichen Service. Um dem gerecht zu werden, haben wir unser Thomas-Krenn Wiki ins Leben gerufen. Hier teilen wir unser Wissen mit Ihnen und informieren Sie über Grundlagen und Aktuelles aus der IT-Welt. Ihnen gefällt unsere Wissenskultur und Sie wollen Teil des Teams werden? Besuchen Sie unsere Stellenangebote. |