How to automatically alarm and notify if a VMware VM has Snapshot

Es passiert immer wieder, dass in vSphere-Umgebungen Datastores auf Grund von „hängenden“ Snapshots voll laufen bzw. dass die Performance der virtuellen Maschinen auf Grund von misalignten „hängenden“ VMware Snapshots leiden. In großen VMWare Umgebungen ist es zu zeitaufwändig im vSphere Client zu prüfen, ob eine virtuelle Maschine einen oder vielleicht sogar mehrere VMware Snapshots hat (auf jede VM – rechte Maustaste – Snapshot Manager). Mittlerweile gibt es sehr schöne Tools (wie z.B. über die PowerGUI mit dem VMWare PowerPack), um regelmäßig zu prüfen, ob noch Snapshots an einer virtuellen Maschine vorhanden sind.
Mit diesem Beitrag möchte ich einen einfachen Weg aufzeigen, wie man sich direkt im vCenter einen Alarm erstellen kann, der

a) direkt im vSphere Client ersichtlich macht, dass an den entsprechenden VMs ein Snapshot hängt und welcher

b) auch direkt eine Benachrichtigungs-Email sendet, wenn ein VMware Snapshot, der auf eine gewisse Größe gewachsen ist, vorhanden ist

How to create a custom vCenter alarm including email notification for a VM that has Snapshot Size bigger than 1GB:

Im ersten Schritt geben wir in den globalen vCenter Einstellungen unseren Mailserver, sowie die Absenderadresse des vCenters an, unter der der vCenter die Benachrichtigungsemails versenden soll.

Im nächsten Schritt legen wir einen neuen benutzerdefinierten Alarm an. Der Alarm kann entweder auf dem vCenter Objekt angelegt werden und gilt dann für alle darunterliegenden Objekte (wie in den folgenden Screenshots gezeigt), kann aber auch gerne auf anderen vCenter Inventory Objekten angelegt werden (und gilt dann entsprechend nur für diesen Bereich).

Im aufge“pop“ten Fenster können wir den Alarm nach unseren Wünschen anpassen. Wir nennen unseren Alarm z.B. „VM has Snapshot“ (das ist der Name, der dann auch bei der Alarmierung angezeigt wird), benötigen einen Alarm aus der Kategorie „Virtual Machines“ und „Enablen“ den Alarm.

Im Reiter „Trigger“ müssen wir definieren, wann der Alarm ausgelöst wird. In meinem Beispiel bauen wir es so, dass ein „Warning“ Trigger ausgelöst wird, wenn der Snapshot über 1GB Size wächst und ab 2GB auf einen „Alert“ Trigger wechselt.

Im Reiter „Actions“ definieren wir nun noch, dass beim Wechsel des Status von „Green“ auf „Warning“ bzw. auch von „Warning“ auf „Altert“ einmalig eine Mail an unser IT-Team versendet wird und bestätigen unsere Alarm-Konfiguration.

Sobald wir den Alarm bestätigt haben und es gibt VMs, die die entsprechenden definierten Kriterien erfüllen, wird an den entsprechenden virtuellen Maschinen ein gelbes Ausrufezeichen (Warning) oder ein rotes Symbol (Alert) erscheinen. Gleichzeitig wird für die entsprechenden betroffenen VMs eine Email an die angegebene Mailadresse versendet. Beispiel:

Hat man die betroffene virtuelle Maschine ausgewählt, kann man im Reiter „Alarms“ – „Triggered Alarms“ sehen, dass unser „VM has Snapshot“ Alarm zugeschlagen hat.

Viel Spaß beim Bereinigen der Snapshots und herzlichen Glückwunsch zum gewonnenen Speicherplatz im Datastore, sowie ein kleines bisschen bis massivem Performanceschub für die betroffenen VM’s. ;)

WICHTIG: Wird ein VMware Snapshot im ausgeschalteten VM-Zustand „deleted“ / „commited“, kann die VM nicht eingeschaltet oder bearbeitet werden bis der Snapshot vollständig „deleted“ oder „commited“ ist! Und das kann bei schon längere Zeit hängenden, großen Snapshots sehr lange dauern!

– I wish I could be a Virtual Machine –

Benjamin Ulsamer

 

Advertisements