Performance-Probleme innerhalb des Servers
Server: Server verfügen über mehrere CPU-Sockel sowie Hauptspeicher und PCIe-Busse, die in enger Beziehung miteinander stehen. Es wird nicht empfohlen, die Daten über verschiedene PCIe-Ports, die verschiedene Seiten des NUMA-Busses (Non-Uniform Memory Access) ansprechen, zu verteilen. Dies löst oft IO-Konflikte aus und veranlasst den PCI- Adapter die Datenflut in der CPU-Queue zu unterbrechen. Man sollte deshalb sämtliche PCIe-Adapter so platzieren, dass sie einen Bezug auf dieselbe Seite des NUMA-Busses besitzen. Zudem sollte bei Linux die IRQ-Balance die Interrupts verwalten. Hyper-V und vSphere administrieren dies nach Erstellung einer virtuellen Maschine automatisch.
Bei OS Multi-Pathing sollten die Best Practices der Array-Hersteller bezüglich Multi-Pathing oder anderen Verteilungsmethoden befolgt werden. Für die Leistungsanalyse bietet Windows perfmon. In Linux kommen dafür verschiedene Tools in Frage, beispielsweise iostat, vmstat oder sar, um die Performance zu messen.
Hypervisor Tuning: Zum optimalen Einstellung der Host-PCI-Geräte (HBA) sind mehrere Infodocs von VMware erhältlich. Zusätzlich gibt es Hersteller-Plugins, die das Array selbständig einstellen.
Zusätzlich hilft das ESXtop-Tool, vSphere Latenzen auf Hypervisor-Ebene zu analysieren und überprüft die VAAI-Statistiken auf die korrekte Funktion von VAAI.
InGuest Tuning: Auch für Maßnahmen, die beispielsweise dazu dienen, das Gastbetriebssystem so einzustellen, dass es weniger CPU-Ressourcen verwendet, gibt es verschiedene Ratgeber im Netz. So könnte man anstelle eines LSI Logic Controllers auch PVSCSI-Controller in einer virtuellen Maschine auf VMware-basis nutzen.
Unter Linux erstellt und steuert udev (userspace /dev) Dateisysteme mit spezifischen Offsets um ein ausgeglichenes IO-Verhalten herbeizuführen.
Dieselben Tools, die auf dem Betriebssystem des physischen Servers laufen, sind auch auf der virtuellen Maschine verfügbar beziehungsweise nutzbar. Für die Leistungsmessung des Gastbetriebssystems wäre das in Windows perfmon, bei Linux iostat, vmstat und sar.
(hal)