Tipps: Kostenloses PS-Skript vCheck

vSphere-Monitoring per PowerCLI

| Autor: Thomas Drilling

Drillings Open-Source-Eck
Drillings Open-Source-Eck (Bild: Thomas Drilling)

In großen virtuellen Umgebungen ist die sekundengenaue Systemüberwachung mit Trend-Analyse, Dashboards und mehrstufigen Warnsystemen gang und gäbe. Tool der Wahl bei vSphere ist hier vRealize Operations. Für kleine Unternehmen reicht aber häufig auch täglicher Zustandsbericht, wie ihn das Power-CLI-Skript vCheck liefert.

Das Verwalten und Automatisieren von vSphere-Umgebungen findet zunehmend über PowerShell statt. VMwares Power-Shell-Implementation hört auf den Namen PowerCLI und hat die Perl-basierte Remote-Verwaltung per RemoteCLI in vielen Unternehmen abgelöst. Mit Erscheinen der PowerShell-Version 6.0 ist die Kommandoschnittstelle noch mächtiger geworden. Selbst Nutzer mit wenig Programmiererfahrung können leicht nach fertigen CMDLets oder gar ausgefeilten Power-CLI-Skripten googlen, von denen Viele frei verfügbar sind.

vCheck kann mehr

Sehr populär ist z. B. vCheck vom Power-CLI-Entwickler Alan Renouf (virtu-al.net). Dabei ist vCheck schon längst nicht mehr nur ein einfaches PowerCLI-Skript, sondern über die Jahre zu einer ausgefeilten Berichts-Engine mit HTML-Ausgabe mutiert. Das Skript lässt sich sogar dank einer ebenfalls stetig wachsenden Plugin-Familie erweitern.

VCheck hat eine offizielle Projektseite, lässt sich aber am schnellsten als ZIP-Datei via Github herunterladen und in einem beliebigen Verzeichnis entpacken. Zum Ausführen braucht man zwangsläufig eine Windows-Maschine mit installierter PowerCLI.
vCheck konfigurieren
Für die Erst-Konfiguration von vCheck braucht man die FQDN oder IP-Adresse des vCenter-Servers, eines administrativen Account, dar wenigstens das Leserechte auf sämtliche Objekte im vCenter hat und die FQDN oder IP-Adresse eines SMTP-Servers, sofern man die eigenen Berichte per Mail empfangen möchte. Nach dem Starten der PowerCLI (als Administrator) wechselt man in das Verzeichnis des heruntergeladenen vCheck-Skriptes und setzt zunächst die die Execution-Policy wie folgt auf „Unrestricted“:

Set-ExecutionPolicy Unrestricted

Danach kann man das vCheck-Skript wie folgt starten:

.\vCheck.ps1

, wobei ein Ersteinrichtungsassistent mit einer Reihe meist selbsterklärender Fragen durch die initiale Konfiguration führt. Danach folgen Fragen zur eigenen Umgebung, wobei man Parameter und Schwellenwerte sinnvollerweise so wählt, dass der Bericht möglichst kurz ausfällt oder später nur Abweichungen vom Normalbetrieb zeigt, d. h. Checks wie „License Reporting“ oder Anfragen, die sich auf eine vSAN-Umgebung beziehen, können wohl viele Nutzer einfach deaktivieren.

Was aber tatsächlich an die eigene Umgebung angepasst werden muss sind Ausschlussparameter wie z. B. der Name des Benutzers, der Snapshots anlegen darf (etwa für Veeam Backup) oder die Namen etwaiger lokaler Datastores auf den Hosts. Sollten die Einstellungen nicht (mehr) passen, kann man den vCheck-Einrichtungsassistenten jederzeit mit

.\vCheck.ps1 –config

erneut aufrufen.

Übernimmt man im ersten Teil des Einrichtungsassistenten die meisten Default-Vorschläge, wird vCheck so eingerichtet, dass der Bericht nach dem Ausführen einmalig im Browser angezeigt, nicht aber per Mail versandt wird, d. h. für ein unbeaufsichtigtes Ausführen müsste man solche Einstellungen quasi umkehren.

vCheck benutzen

Ist die Erstkonfiguration abgeschlossen, startet vCheck unmittelbar mit dem „Einsammeln“ von Betriebsdaten und erstellt dann den Bericht, wozu das Skript Benutzername und Passwort für den Zugriff auf die vSphere-Umgebung abfragt. Selbstverständlich ist es auch möglicher, den Skript-Lauf in eine Scheduled-Task zu packen und quasi nach den eigenen Zeitplan-Vorstellungen automatisch laufen zu lassen.