iX 10/2017
S. 142
Praxis
Virtualisierung
Aufmacherbild

VMware-Umgebungen per vSphere-Kommandozeile verwalten

Tipphilfe

VMware baut seine CLI-Werkzeuge weiter aus und um. Neue Befehle erschließen auch Datacenter-Funktionen, und manche Neuerung erleichtert dem Administrator den Alltag.

Für die Administration von vSphere-Strukturen bietet VMware zahlreiche kommandozeilenbasierte Methoden und Werkzeuge (die aktuelle Zusammenstellung veröffentlicht der Hersteller online, siehe „Alle Links“ am Artikelende). Universelles Herzstück sind die ESXCLI-Kommandos, die lokal in der ESXi-Shell und remote ausgeführt werden können. Für Letzteres war bislang der vSphere Management Assistant (vMA) eine beliebte Option. Die derzeit aktuelle vMA-Version 6.5 soll laut VMware jedoch die letzte sein; der Nachfolger heißt VMware Command-Line Interface (vCLI) und übernimmt die Versionsnummer vom Vorgänger.

vCLI kann man nach einer Registrierung von der VMware-Website herunterladen. Es läuft auf den Linux-Plattformen RHEL Server 6.6, 7.1, 7.2, 7.3, Ubuntu 12.04, 14.04, 15.10, 16.04, SLES 11 SP3 und SLES 12 sowie unter Windows 8, 10, Server 2008 und Server 2012 (bei allen 64 Bit). Die Windows-Variante installiert neben vCLI das vSphere SDK for Perl – ActivePerl oder Strawberry Perl muss man jedoch selbst ergänzen. Nach einer Installation muss Windows laut der VMware-Dokumentation neu gestartet werden.

Befehlssätze für Hosts und den Cluster

vCLI im Einsatz auf einem Windows-System (Abb. 1)

Parallel zu den ESXCLI-Kommandos installiert die Software die relativ jungen Datacenter-CLI-Kommandos (DCLI). Dazu kommen vmkfstools (Werkzeuge für Operationen in vSphere-Datenspeichern) und die vicfg-Kommandos. Letztere sind noch enthalten, gelten jedoch als überholt; VMware empfiehlt, auf ESXCLI umzusteigen.

Die Datacenter-CLI-Tools (DCLI) bieten unter anderem eine komfortable Auto-Vervollständigen-Funktion (Abb. 2).

Die DCLI-Kommandos besitzen außer einem Scripting- einen interaktiven Modus und sind einigen vSphere-Verantwortlichen womöglich noch nicht bekannt; dabei kann insbesondere der interaktive Modus mit seiner Auto-Komplettierung Zeit und Mühe sparen.

DCLI kommuniziert nicht mit einem Host, sondern mit dem vSphere Automation API Endpoint, der Bestandteil eines vCenter-Servers (Windows-VM oder Appliance) ist. Die Tools sind seit vSphere 6.0 enthalten und benutzen eine REST-Schnittstelle (REST API for vSphere). Im Übrigen gibt es von VMware Automation-SDKs für Java, .NET, Perl, Python, Ruby und REST. Neben der Installation per vCLI ist DCLI mit vSphere 6.5 automatisch auf jedem vCenter-Server unter Windows sowie jeder vCenter-Server-Appliance enthalten. Parallel dazu gibt es das PowerShell-basierte PowerCLI, aktuell in der Version 6.5.2 erhältlich.

Für Notfälle gibt es als letzten Weg die localcli-Kommandos. Deren Handhabung und Syntax ähneln ESXCLI, sie sind aber auch dann noch lokal auf dem ESXi-Host benutzbar, wenn etwa der Host-Dienst hostd (das Management-Herzstück jedes ESXi-Servers) nicht mehr reagiert. Ein Problem mit hostd kann leicht dazu führen, dass ein ESXi-Host nicht mehr übers Netz administriert werden kann, sondern nur noch per lokaler Konsole oder Remote-Management-Schnittstelle des Serverherstellers. localcli-Kommandos sollten ausschließlich auf Anweisung von VMware benutzt werden. Unter „Alle Links“ findet sich der Verweis auf einen Fall, bei dem hostd nicht mehr reagierte und localcli erfolgreich zum Einsatz kam, um die ESXi-Firewall manuell zu deaktivieren.

Viele vSphere-Verantwortliche nutzen die lokale ESXi-Shell für Notfall-Troubleshooting, vCLI für die tägliche Administration und PowerCLI für komplexe Automatisierung und Berichte. Insbesondere PowerCLI sollte man nicht unterschätzen: Die schlichte Handhabung und die mächtigen Funktionen haben die Beliebtheit dieses Werkzeugs in den letzten Jahren gesteigert. Außerdem enthält PowerCLI das Commandlet Get-EsxCli, mit dem man ESXCLI-Kommandos in einer PowerShell-Konsole ausführen kann.

PowerCLI im Einsatz: Im Beispiel wird das Intervall der vSAN-Integritätsprüfung von 60 auf 30 Minuten reduziert (Abb. 3).

Mit Version 6.5 des VMware-Hauptprodukts vSphere (siehe Test in iX 1/2017 [1]) kamen zahlreiche Neuerungen für die Kommandozeile hinzu, die jedoch wenig Beachtung fanden. Mit PowerCLI 6.5 gibt es ein neues Move-VM-Commandlet. Damit lassen sich virtuelle Maschinen (VMs) im Betrieb zwischen vCentern migrieren (Cross vCenter vMotion), aber auch zwischen unterschiedlichen vSphere-Single-Sign-on-Domänen. Ein umfangreiches Update haben die PowerCLI-Datenspeicherfunktionen mit Version 6.5 erfahren: Für vSAN kann man etwa Cluster-Konfigurationen einsehen und modifizieren (Get/Set-VsanClusterConfiguration), vSAN-Fault-Domains administrieren (Set-VsanFaultDomain), Funktionstests durchführen (Test-VsanClusterHealth) sowie die Netz- und Datenspeicherleistung prüfen (Test-VsanNetworkPerformance, Test-VsanStoragePerformance).