Archiv für Juli, 2013

Kleine Einführung in einige vmware Performance Metriken und was sie bedeuten

Um das Thema Memory Metriken fortzuführen hier nun die Betrachtung der Metrik Memory.Consumed. Dieser ergänzt direkt den Artikel über die Metrik Memory.Active.

Heute – Memory.Consumed

Die Metrik Memory.Consumed findet man sowohl unter VMs als auch auf Host bzw. Clusterebene. Sie wird auf VM Ebene ermittelt. Was sagt diese nun aus?

Original vmware: Amount of machine memory used on the host. Consumed memory includes virtual machine memory, service console memory, and VMkernel memory. consumed memory = total host memory – free host memory

Auf deutsch: „Betrag des Memory der von einem VM auf dem Host tatsächlich konsumiert wird. Dazu gehört der Verbrauch der VM als auch der sog. Virtualisierungsoverhead (vmkernel + VMM). „

Ganz einfach erklärt

Im Gegensatz zur Memory.Active Metrik summiert die Metrik Memory.Consumed allen Host Speicher auf den eine VM „benötigt“. Dazu zählen auch Memory Pages die „gelegentlich“ genutzt werden. Eine VM mit hohem Memory.Consumed Wert im Vergleich zum konfigurierten vRAM ist damit als „Speicherfresser“ erkannt und muß geg. vRAM seitig erweitert werden bzw. mit einer Memory Reservation versehen werden.

Beispiel: Eine VM die mit 13GB vRAM konfiguriert wurde und 12GB RAM „konsumiert“ ist „gut ausgelastet“

Performance Chart VM Advanced

Performance Chart VM Advanced

 

Fazit

Die Metrik Memory.Consumed zeigt den gesamten RAM der von einer VM „konsumiert“ wird. Dazu gehört der vRAM + der gesamte Virtualisierungs Overhead. Hier ist auch der Virtual Machine Monitor [VMM] enthalten. Dieser Metrik sollte für Berechungen der Gesamtbelastung einer Umgebung genutzt werden.

Kleine Einführung in einige vmware Performance Metriken und was sie bedeuten

Nach dem Artikel zur Metrik CPU.Ready und CPU.Usage folgen nun einige Essentielle Metriken die den Memory (RAM) Verbrauch bzw. den belegten RAM darstellen. Anfangen möchte ich mit der Metrik Memory.Active.

Heute – Memory.Active

Die Metrik Memory.Active findet man sowohl unter VMs als auch auf Host bzw. Clusterebene. Was sagt diese nun aus?

Original vmware: Sum of the active guest physical memory of all powered on virtual machines on the host, plus memory used by basic VMkernel applications. Active memory is estimated by the VMkernel.“

Auf deutsch: „Summe der aktive von den Virtuellen Maschinen [VMs] genutzte physikalische Memory Pages auf einem Host (Hostebene) bzw. auf Clustereben, Summe über alle Hosts im Cluster. Für VMs nur die der aktuell betrachteten VM. Zusätzlich kommen noch Werte für vmkernel Basisdienste dazu. Diesen Wert schätzt der vmkernel!“

Ganz einfach erklärt

Aktiv belegter physikalischer Speicher des Hostes bezogen auf alle VMs (Hostebene) oder einer dedizierten VM (VM Ebene). Da jede VM zusätzlich Basisdienste des vmkernel nutzt, wird der Betrag noch aufgeschlagen. Somit ergibt sich der Gesamt-Aktiv genutzte physikalische Hostspeicher (z.B. per VM). Es handelt sich um einen Schätzwert des vmkernel. Daher ist es oft besser den Memory.Consumed Wert hinzuzuziehen um zu sehen was eine VM z.Z. tatsächlich Konsumiert. (Diese Metrik kommt im nächsten Artikel!)

Für Memory.Active werden Min/Max und Mittelwerte (Average) angegeben. Die Einheit ist KiloByte [KB].

Beispiel: Eine VM ist mit mit 3GB vRAM konfiguriert und zeigt auf dem Summary Tab eine Memory Usage von 124 MB an.

Summary Tab VM

Summary Tab VM

Dieses bedeutet, das die VM von konfigurierten 3GB z.Z. im Mittel (Average) nur 124 MB nutzt.

Also praktisch im Leerlauf arbeitet.

Im Performance Grafen der VM unter Advanced – Memory würden zeitgleich folgende Werte dargestellt:

Werte im Performance Chart der VM

Werte im Performance Chart der VM

Fazit

Wenn eine VM einen besonders hohen Memory.Active Wert anzeigt, sollte geg. die vRAM Konfiguration angepasst werden. Ein sehr kleiner Wert, wie im Beispiel, zeigt eine VM die nichts zu tun hat ( idle). Ein Vergleich mit dem Memory.Consumed Wert ist sehr sinnvoll.