Suchen

Wichtige VMware Performance-Metriken für CPU, Storage und Netzwerk VM-Performance-Probleme erkennen und beseitigen

Autor / Redakteur: Alex Rosemblatt, Jonathan Klick* / Ulrich Roderer

Virtualisierung erzeugt neue Herausforderungen für das Management von Rechenzentren: Anwendungen konkurrieren um dynamische und shared Ressourcen wie Storage, CPU-Zyklen und Speicher. Im Folgenden sollen einige wichtige Metriken von VMwares vCenter besprochen werden, die helfen, Engpässe und Kapazitätsprobleme zu erkennen und zu lösen.

Firmen zum Thema

Die Komplexität von gesharten Ressourcen in einem virtualisierten Rechenzentrum erfordert das ständige Überwachen von Metriken.
Die Komplexität von gesharten Ressourcen in einem virtualisierten Rechenzentrum erfordert das ständige Überwachen von Metriken.
(Bild: vkernel)

Kapazitätsengpässe können auftreten bei Platten, Platten-I/O, im Netzwerk, Speicher oder bei CPU-Ressourcen. Leidet eine VM unter einem Engpass, wirkt sich das negativ auf die Performance der Applikation aus, die in der VM läuft.

Die Analyse von Metriken ist allerdings aufwendig. Es sollten mindestens 10 mal pro Stunde Daten von jeder VM erhoben und analysiert werden. Die dabei anfallende Datenmenge ist enorm. In einem Environment mit 100 VMs erzeugen die Metriken in einer Periode von 30 Tagen zirka 17 Million Datenpunkte.

CPU Metriken

CPU-Metriken gehören zu den am meist diskutierten in virtuellen Umgebungen, sind aber auch die am meisten falsch interpretierten. Ein Blick auf die wichtigsten Kennzahlen.

Die Kennzahl cpu.extra.summation wird auf VM-Level erhoben und weist auf eine Differenz zwischen I/O und CPU-Geschwindigkeit hin. Diese Differenz führt zu einem Performance-Problem der VM das als I/O Wait bekannt ist.

Nach VMware ist cpu.extra.summation eine nichtreliable Meßgröße und wurde in vSphere 4.0 deshalb entfernt. Dennoch kann cpu.extra.summation nützlich sein, um Performance-Probleme zu identifizieren. Hohe Werte weisen darauf hin, dass eine VM nicht genügend CPU-Ressourcen zur Verfügung oder CPU Ready-Probleme hat.

CPU Ready-Probleme resultieren aus der Überbeanspruchung von CPUs durch konkurrierende VMs, wodurch Wartezeiten entstehen. Nach den Best Practices von VMware entsteht ein CPU Ready Bottleneck, falls mehr als fünf Prozent einer CPU-Transaktion Wartezeit ist. Es empfiehlt sich daher, nicht mehr als drei virtuelle CPUs auf einer physikalischen laufen zu lassen.

Die Metrik cpu.usagemhz.average misst die Auslastung der physikalischen CPU. Ein hoher Wert weist darauf hin, dass die CPU an die Auslastungsgrenze gerät. VMs mit einem hohen Wert können Verzögerungen aufweisen. Ein hoher Wert von cpu.usagemhz.average bedeutet nicht zwangsläufig, dass sich ein Bottleneck ankündigt. Aber die Metrik ist ein warnender Indikator.

Plattenmetriken

Ein "disk bus reset" löscht alle Befehle, die in der Warteschlange eines Hostadapter oder Disk-Bus stehen. Die Metrik disk.busResets.summation verfolgt, wann ein "disk bus reset" stattgefunden hat. Auch diese Kennzahl wird in Echtzeit auf VM-Level erhoben.

Falls eine VM Werte für disk.busResets.summation aufweist, kann das ein Indikator für schwere Plattenprobleme sein:

  • Eine Platte ist durch zu viel Traffic überlastet
  • Zu viele VMs greifen auf die Platte zu
  • Zu viele Commands von den VMs, die auf die Platte zugreifen
  • Andere Durchsatzprobleme
  • Hardwareausfall

VMs mit einem Wert für disk.busResets.summation können sich aufhängen oder sehr langsam arbeiten. Meistens muss der Storage-Administrator hinzugezogen werden, um die Ursache zu lokalisieren. Die Lösung der Probleme kann ein Hardware-Austausch sein oder typischerweise das Verschieben von VMs auf andere Datastores mit mehr Kapazität.

Die Metrik disk.commandsAborted.summation zeigt, wie oft ein Befehl an die Platte gesendet wurde und fehlschlug. Dieser Wert sollte für alle VMs null sein, ansonsten bestehen ernsthafte Plattenprobleme. (siehe: disk.busResets.summation)

disk.totalLatency.average zeigt die Latenz einer Platte. Dieser Kennwert ist nützlich um Plattenprobleme zu erkennen. Allerdings ist es kein präziser Kennwert, da viele Faktoren zu Latenz führen können wie Durchsatzprobleme von Speicher und Platten. Load Balancing und Rightsizing sind Maßnahmen, diese Probleme zu beheben.

(ID:35561650)