Die 25 wichtigsten Befehle für VMware ESX und ESXi
Mit Direkt-Befehlen für VMware ESX-Server und ESXi lassen sich Virtual Machines schnell, effizient und automatisiert steuern und konfigurieren.
Jeder Administrator einer virtualisierten Umgebung weiß, wie schwierig es sein kann, eine VMware-Infrastruktur in den Griff zu bekommen. Hilfreich dafür ist eine umfassende Automatisierung grundlegender Verwaltungsaufgaben. Zwar lassen sich VMware ESX-Hosts über eine grafische Benutzeroberfläche verwalten, allerdings bevorzugen Administratoren in Rechenzentren oft den direkteren Zugriff über die Service-Konsole von VMware. Dabei verwenden sie die ESX-Befehlszeile zur Fehlerbehebung sowie für die Netzwerk-Konfiguration oder die Neukonfiguration von Hosts. VMware bietet eine Reihe von Befehlen zur Automatisierung dieser Aufgaben, für die Identifizierung von Problemen in der virtualisierten Infrastruktur, die Feineinstellung der Leistung von Virtual Machines (VM) und mehr.
In diesem Leitfaden zur Befehlszeile von VMware erläutere ich die 25 wichtigsten und nützlichsten Befehle für ESX Server und ESXi. Dazu zählen sowohl Linux- als auch ESX-spezifische Befehle. Viele davon können mit dem Remote Command Line Interface (RCLI) verwendet werden, das in vSphere die neue Bezeichnung vSphere CLI trägt und für ESX wie ESXi genutzt werden kann.
Die wichtigsten Befehle unter Linux
Für die ESX-Service-Konsole lassen sich viele Linux-Befehle verwenden, weil diese auf Red Hat Linux basiert. Im Folgenden finden Sie eine Liste der am häufigsten verwendeten Linux-Befehle sowie einige VMware-spezifische Varianten.
- Find/cat/grep Diese Befehle werden für die Suche und Anzeige von Dateien sowie für die Detailsuche verwendet. Mit Find wird nach bestimmten Dateien gesucht, während der Befehl cat die Inhalte von Dateien anzeigt und Dateien miteinander verknüpft. Der Befehl grep wiederum dient zur Suche nach bestimmten Textabschnitten innerhalb einer Datei. So können Administratoren diese Befehle für die Suche nach bestimmten Elementen der Infrastruktur verwenden, beispielsweise für die Suche nach Snapshot-Dateien. Darüber hinaus ermöglichen sie auch die Anzeige von Protokoll- und Konfigurationsdateien sowie die Suche nach Informationen innerhalb von Dateien.
- Tail Zeigt den letzten Teil einer Text-basierten Datei an und ermöglicht zudem die Überwachung der Ausgabe in die Datei in Echtzeit. Mit diesem Befehl lassen sich Protokolldateien in Echtzeit überwachen.
- Service Dient zum Starten, Anhalten und Neustarten der auf dem Host-Server ausgeführten Services (oder Programme). Zu den häufig verwendeten ESX-Services zählen mgmt-vmware, vmware-vpxa, firewall, vmware-hostd und vmware Web Access. Der Befehl ermöglicht das erneute Starten nicht mehr reagierender Services sowie einen Neustart nach Änderungen an der Konfiguration.
- Nano und vi Für die Bearbeitung von Textdateien. Im Vergleich zu vi ist nano ein benutzerfreundlicher und einfacherer Editor. Allerdings verfügt vi über mehr Funktionen und ist leistungsstärker. Mit Texteditoren lassen sich die Konfigurationsdateien auf einem EXS-Host bearbeiten.
- Su und sudo Mit diesen Befehlen lässt sich der Zugriff auf Dateien steuern und eine Verwendung des Root-Account verhindern. Su gewährt Benutzerkonten mit Zugriffsbeschränkungen die Rechte eines Superusers (oder Root-Users). Sudo führt die Befehle unter dem Namen eines anderen Nutzers aus. Dies kann in der Konfigurationsdatei „sudoers“ festgelegt werden.
- ls Zeigt Datei- und Verzeichnisinformationen an. Mithilfe bestimmter Schalter (z. B. ltr) lassen sich detaillierte Informationen zu einer Datei anzeigen, beispielsweise Eigentümer, Größe, Berechtigungen sowie Datum und Uhrzeit der letzten Änderung.
- Df und vdf Für die Anzeige von Informationen über das Dateisystem (Partitionen), einschließlich des freien Festplatten-Speichers. Die Anzeige von Virtual Machine File System (VMFS)-Laufwerken ist mit dem Befehl df nicht möglich. Vdf ist die VMware-Variante dieses Befehls, mit der auch Informationen zu VMFS-Laufwerken angezeigt werden. Beide Befehle verwenden den Schalter H, der die Ausgabe in lesbarer Form anzeigt (also als 2 GB statt als 2,016,044).
- Ps und kill Mit diesen Befehlen kann das Beenden nicht mehr reagierender VMs erzwungen werden, falls diese sich weder hoch- noch herunterfahren lassen. Ps zeigt den Status des Hosts oder auf diesem gerade ausgeführte Prozesse an. Der Befehl kann viele Schalter verwenden, nutzt meist jedoch EF. Dieser zeigt sämtliche Informationen zu allen aktuell laufenden Prozessen an. Der Befehl kill wird häufig zusammen mit dem Befehl ps verwendet, um das Beenden bestimmter laufender Prozesse zu erzwingen.
- Ping und vmkping Diese Befehle ermöglichen eine grundlegende Fehlersuche im Netzwerk. Mit Ping lassen sich die Verbindungen zu anderen Hosts und Geräten im Netzwerk testen. Dazu wird ein Internet Control Message Protocol-Paket versandt und auf eine Antwort gewartet. Bei Vmkping handelt es sich um die VMware-spezifische Variante des Befehls Ping. Sie nutzt den IP-Stack des VMkernel, um den VMkernel-Port eines anderen ESX-Hosts „anzupingen“. So ermöglicht der Befehl eine Fehlersuche in vMotion und bei Problemen mit dem Netzwerk-Storage.
Die wichtigsten VMware ESX- und ESXi-Befehle
Diese VMware ESX- und ESXi-Befehle lassen sich über die ESX-Service-Konsole (lokal oder aus der Ferne mithilfe von Secure Shell) sowie über RCLI (in VMware Infrastructure 3) und vSphere CLI (in vSphere) ausführen. Beachten Sie die Umbenennung vieler Befehle von der alten Version esxcfg- in vicfg- (also zum Beispiel statt esxcfg-nics.pl jetzt vicfg-nics.pl) in RCLI und vSphere CLI. Die Funktionsweise beider Befehle ist identisch, allerdings plant VMware die Migration von esxcfg- auf vicfg-.
- Der vielseitige Befehl vmkfstools ist so etwas wie das Schweizer Taschenmesser für virtuelle Laufwerke. Er ermöglicht das Kopieren, Konvertieren, Umbenennen, Importieren und Exportieren sowie die Anpassung der Größe von Dateien auf virtuellen Laufwerken.
- Esxtop Für die Suche nach Fehlern bei Performance-Problemen. Der Befehl liefert Performance-Statistiken für Nutzung von CPU, Speicher, Laufwerk und Netzwerk in Echtzeit sowie als historische Daten.
- Esxcfg-nics Dieser Befehl dient zur Anzeige und Konfiguration von Netzwerk-Karten (Network Interface Cards, NICs). Er zeigt den NIC-Status an und bietet eine Möglichkeit für die Konfiguration von Geschwindigkeit und Duplex-Modus der Netzwerkkarten.
- Esxcfg-vswitch Für die Anzeige und Konfiguration virtueller Schalter. Mit diesem Befehl können Sie das Netzwerk konfigurieren, falls eine Verwendung des vSphere Client nicht möglich ist. Der Befehl konfiguriert Port-Gruppen und verknüpft diese mit physischen NICs (als uplinks bezeichnet). Zudem ermöglicht er die Konfiguration von virtuellen LAN-IDs, Cisco Discovery Protocol (CDP) und der MTU von vSwitches.
- Esxcfg-vswif und esxcfg-vmknic Diese beiden Befehle dienen zur Anzeige und Konfiguration spezieller Port-Gruppen auf vSwitches. Esxcfg-vswif konfiguriert die Netzwerk-Schnittstellen der ESX-Service-Konsole, die auch als vswif Ports bezeichnet werden.
- Esxcfg-vmknic Konfiguriert die VMkernel-Netzwerkschnittstellen, die für vMotion und zur Verbindung mit Network File System- und iSCSI-Netzwerk-Storage-Geräten erforderlich sind.
- Vmware-cmd Dieser vielseitig einsetzbare Befehl dient zum Verwalten und Abrufen von Informationen von virtuellen Maschinen. Er ermöglicht die Änderung des Energiestatus von VMs, die Verwaltung von Snapshots, das An- und Abmelden von VMs sowie das Abrufen oder Festlegen verschiedener VM-Informationen.
- Vimsh und vmware-vim-cmd Über die Funktionsweise dieser komplexen Befehle sollten Sie sich absolut im Klaren sein, bevor Sie sie anwenden. Bei vimsh handelt es sich um eine mächtige Shell für die Ausführung von Befehlen. Sie bietet außerdem die Möglichkeit zur Anzeige und Konfiguration vieler Einstellungen. VMware-vim-cmd ist eine Art Frontend von vimsh und ermöglicht die Verwendung des Befehls ohne Kenntnis aller Switches, die für vimsh benötigt werden.
- Vihostupdate und esxupdate Aktualisieren und Patchen von ESX- und ESXi-Hosts. Esxupdate wird für die ESX-Service-Konsole und vihostupdate für die RCLI/vSphere CLI verwendet. Darüber hinaus ermöglicht vihostupdate35 das Patchen von Hosts für die ESX- und ESXi-Version 3.5.
- Svmotion ist ein RCLI/vSphere CLI-Befehl für die Initiierung von Storage vMotion-Sitzungen. So lässt sich die virtuelle Festplatte einer VM während des Betriebs in einen anderen Datenspeicher verschieben. In Version 3.5 von ESX stellte dieser Befehl die einzige Möglichkeit zur Initiierung einer Storage vMotion-Sitzung dar. Diese Funktion wurde in vSphere der vSphere Client GUI hinzugefügt.
- Esxcfg-mpath Für die Anzeige und das Festlegen aller Pfade von einem Host zu seinen Storage-Geräten.
- Esxcfg-rescan Mit diesem Befehl kann ein Host einen bestimmten Storage-Adapter erneut scannen und so neue Storage-Geräte erkennen. Er ist ein sehr praktisches Tool zur Identifizierung neu hinzugefügter Storage-Geräte sowie bei der Entfernung oder Änderung von Geräten im Storage-Netzwerk.
- Esxcfg-scsidevs und esxcfg-vmhbadevs Anzeigen von Informationen über die mit einem Host verbundenen Storage-Geräte. Esxcfg-vmhbadevs wurde in ESX 3.5 verwendet und in vSphere durch esxcfg-scsidevs ersetzt.
- Esxcfg-firewall Für die Anzeige von Informationen über und zur Konfiguration der integrierten Firewall, mit der die ESX-Service-Konsole geschützt ist. Der Befehl öffnet und blockiert bestimmte TCP/IP-Ports für die Kommunikation der Service-Konsole mit anderen Netzwerk-Geräten.
- Über den Befehl esxcfg-info lassen sich jede Menge Informationen über den Host abrufen, auf dem er ausgeführt wird. Es besteht die Möglichkeit zur Umleitung der Informationen in eine Textdatei, um auf diese Weise die Host-Konfiguration zu dokumentieren.
- Esxcfg-auth Dient zur Konfiguration der Authentifizierung der Service-Konsole an einem ESX-Host. Er ermöglicht die Authentifizierung an einem externen LDAP- oder Active-Directory-Server sowie das Festlegen verschiedener lokaler Sicherheitseinstellungen.
- Bei Vm-support handelt es sich um ein leistungsstarkes Tool zur Erfassung von Informationen, das in der Regel für die Fehlersuche verwendet wird. Der Befehl fasst viele Konfigurationsdaten, Protokolldateien und Ausgaben vieler Befehle in einer einzigen .tgz-Archivdatei zusammen. Er kann darüber hinaus zur Anzeige von VM-Daten sowie zum erzwungenen Beenden von VMs verwendet werden, falls diese nicht mehr reagieren.
Die meisten der oben genannten Befehle können mit unterschiedlicher Syntax, verschiedenen Optionen und Schaltern verwendet werden. Sie ermöglichen in der Regel aber auch die Ausführung ohne weitere Option. Nähere Informationen über diese 25 ESX- und ESXi-Befehle finden Sie in folgender Dokumentation:
- Installations- und Referenzhandbuch zur VSphere-Befehlszeilenschnittstelle
- ESX-Konfigurationshandbuch (Anhänge)
- Verzeichnis von Linux-Befehlen
Eric Siebert ist ein IT-Veteran mit mehr als 25 Jahren Erfahrung in den Bereichen Programmierung, Netzwerk-Technologie sowie Telekommunikation und System-Administration. Als Moderator des VMware community VMTN-Forums hat er den Status „Guru“ erreicht und betreibt die VMware-Informationsseite VMware-land.com.