Administration

Tipps zum Monitoring virtueller Systeme

23.10.2009
Von Patrick Schwanke

Provisioning und Deprovisioning

Um die virtuelle Umgebung als Ganzes unter Kontrolle zu halten und Wildwuchs einzudämmen, hilft ein Lifecycle-Management. Temporär benötigte Maschinen werden nach Gebrauch wieder beseitigt. Bei VMs im dauerhaften Einsatz ist eine Chargeback-Lösung sinnvoll, um den Ressourcenverbrauch der VMs messen und gegebenenfalls in Rechnung stellen zu können. Die Abrechnung kann auf verschiedenen Wegen erfolgen: Die Berechnung auf Basis zuvor festgelegter Tier-Klassen bietet finanzielle Planungssicherheit, da zum Beispiel fixe Kostensätze pro verfügbare CPU angesetzt werden. Ein MRU-gestütztes (Measured Resource Utilization) Chargeback-Verfahren berücksichtigt nur die tatsächlich verbrauchten Ressourcen wie konsumierte CPU-Takte, Hauptspeicher, I/O-Volumen und effektiven Storage-Verbrauch.

Zudem ist es sinnvoll zu kontrollieren, wie viel von dem für die VMs allozierten Speicherplatz tatsächlich auch genutzt wird. Die Betrachtung lohnt sich, denn noch immer sind die Gesamtkosten für Storage auf Enterprise-Level beträchtlich.

Eine Antwort auf diese Herausforderung kann Thin Provisioning sein, um von vornherein nur den tatsächlich genutzten Speicherplatz zuzuteilen. Wie viel Speicher die VM beansprucht, lässt sich nur in ihr selbst feststellen. Meist ist es deutlich weniger als das sonst üblicherweise für die Zuteilung angesetzte Maß, das etwa der Größe der physischen Dateien der VM entspricht. Es gibt Produkte, die beide Aspekte auch in komplexen SAN/NAS-Umgebungen (Storage Area Network/Network Attached Storage) mit Tausenden von VMs zusammenbringen.

Korrelation der Daten

Überwachung einer auf VMware laufenden Oracle-Datenbank
Überwachung einer auf VMware laufenden Oracle-Datenbank

Beim Monitoring virtueller Systeme sollten demnach Daten aus der physischen und der virtuellen Sicht korreliert werden, damit man Aussagen über die Auslastung und mögliche Engpässe des Systems treffen kann. Nur dann lässt sich auch im Vorfeld sagen, wann und wo ein Ressourcenengpass entstehen wird, wann der Speicher auf physischer oder virtueller Ebene vollläuft und auf welche Anwendungen sich ein Engpass auswirken würde. Vorausschauend lässt sich dann ebenso einschätzen, ob bei physischem Clustering (zum Beispiel ESX-Cluster) genügend Ressourcen zur Verfügung stehen, um den Ausfall eines oder mehrerer Cluster-Knoten verkraften zu können, und ob die Ziele hinsichtlich der Ressourcenauslastung und damit der Kosteneinsparung erreicht werden. Erst eine umfassende Datenanalyse erlaubt es, zu beurteilen, ob und wo weitere Konsolidierungsmöglichkeiten bestehen. Solche proaktiven Alarme setzen neben einer regelmäßigen Messung der einschlägigen Auslastungs- und Performance-Daten auch ein intelligentes und vor allem automatisch vorgenommenes "Trending" voraus, um den zuständigen Administrator oder Operator rechtzeitig zu warnen.

Ein vornehmliches Ziel sollte es daher sein, die Virtualisierungsschicht nicht als neuen "Silo" in der Unternehmens-IT zu sehen, sondern Performance- und Verfügbarkeitsdaten der verschiedenen Subsysteme (Hypervisor, Betriebssystem, Anwendung, Storage etc.) zusammenzuführen und zu korrelieren. Ein solches gemeinsames Repository erlaubt das direkte Vergleichen von Performance-relevanten Daten aus Anwendungen, Datenbanken, den Betriebssystemen der beteiligten Server und der Virtualisierungsschicht.