Backup der ESXi-Hostkonfiguration: 4 verschiedene Methoden
Die Virtualisierung bietet mehrere Vorteile für Backup- und Wiederherstellungsvorgänge, die das Rückgrat der Datensicherheit, der Betriebskontinuität und der Verfügbarkeit bilden. Vor allem ermöglicht die Virtualisierung agentenlose und imagebasierte Backups auf Host-Ebene. Diese Art von Backups kann die gesamte VM erfassen, einschließlich der VM-Konfiguration und der VM-Daten.Es ist jedoch wichtig, auch die Hosts zu schützen, da gesunde ESXi-Hosts für den ordnungsgemäßen Betrieb von VMs wichtig sind. Es wird empfohlen, auch die ESXi-Konfiguration zu sichern, da Sie mit einem nutzbaren Host-Backup die Host-Konfiguration in wenigen Minuten wiederherstellen können, ohne einen ESXi-Server von Grund auf neu einrichten zu müssen. Lesen Sie weiter, um mehr über die verschiedenen Methoden für die ESXi-Host-Sicherung zu erfahren.
Methode 1: Sichern von ESXi-Hosts über die ESXi-Befehlszeile
Die Verwendung der ESXi-Befehlszeile ist die kostengünstigste Methode, um eine ESXi-Host-Konfiguration zu sichern. Sie müssen keine zusätzliche Software installieren, um die ESXi-Befehlszeile zu verwenden. Sie müssen lediglich Aktivieren Sie die ESXi-Shell und den Remote-SSH-Zugriff auf einen ESXi-Host.Sobald Sie über SSH eine Verbindung zu Ihrem ESXi-Host hergestellt haben, können Sie die folgenden Befehle ausführen.Die ESXi-Konfiguration wird stündlich automatisch gespeichert unter /bootblank/Zustand.tgz Datei. Aus diesem Grund sollten Sie sicherstellen, dass die aktuelle ESXi-Konfiguration sofort in die ESXi-Konfigurationsdateien geschrieben wird, um sicherzustellen, dass alle seit der letzten automatischen Speicherung vorgenommenen Änderungen an der ESXi-Konfiguration gespeichert werden. Gehen Sie dazu wie folgt vor:
- Überprüfen und synchronisieren Sie die ESXi-Konfiguration mit persistentem Speicher:
vim-cmd hostsvc/firmware/sync_config - Sichern Sie die ESXi-Konfiguration, sobald die Synchronisierung abgeschlossen ist:
vim-cmd hostsvc/firmware/backup_config
Als Ergebnis erhalten Sie einen Link zum Herunterladen der Konfigurationspaket.tgz Archiv vom ESXi-Host.
http://*/downloads/UUID/configBundle-ESXiNameOrIPAddress.tgz
- Ersetzen Sie das Sternchen (*) mit der IP-Adresse Ihres ESXi-Hosts. Die Archivdatei, die das ESXi-Backup enthält, wird gespeichert unter /scratch/Herunterladen Verzeichnis für einen kurzen Zeitraum (einige Minuten).

Die IP-Adresse Ihres ESXi-Hosts finden Sie in der ESXi-Direktkonsolenoberfläche oder in der Befehlszeile mit dem folgenden Befehl:
esxcli network ip interface ipv4 getDie IP-Adresse des im aktuellen Beispiel verwendeten ESXi-Hosts lautet 192.168.101.208
- Herunterladen Sie das ESXi-Backup-Archiv so schnell wie möglich und speichern Sie es an einem sicheren Ort.
So automatisieren Sie das Backup der ESXi-Konfiguration in der ESXi-Befehlszeile
Der Vorteil einer Befehlszeilenschnittstelle ist die Möglichkeit zur Automatisierung, und das Backup von ESXi-Konfigurationen bildet dabei keine Ausnahme. Sehen wir uns die dafür erforderlichen Schritte an:
- Erstellen Sie ein Verzeichnis zum Speichern von Sicherungsdateien auf Ihrem ESXi-Datenspeicher:
mkdir /vmfs/volumes/datastore1/ESXi_backup - Erstellen Sie ein Skript zum Sichern der ESXi-Konfiguration:
vi /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh - Fügen Sie die folgenden Zeilen zum Skript hinzu:
vim-cmd hostsvc/firmware/sync_configvim-cmd hostsvc/firmware/backup_configfind /scratch/downloads/ -name \*.tgz -exec cp {} /vmfs/volumes/datastore1/ESXi_backup/ESXi_config_backup_$(date +'%Y%m%d_%H%M%S').tgz \;
- Speichern Sie die Datei und beenden Sie das Programm. vi:
:wqHINWEIS: Zur Vereinfachung können Sie auch den ESXi-Hostnamen oder die IP-Adresse in den Namen der Datei für das Backup aufnehmen. So vermeiden Sie Verwechslungen bei mehreren ESXi-Hosts.
- Machen Sie das Skript ausführbar:
chmod +x /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh - Wechseln Sie in das Verzeichnis, in dem sich das Skript befindet:
cd /vmfs/volumes/datastore1/ESXi_backup/ - Führen Sie das Skript aus:
./esxi_backup.sh - Überprüfen Sie, ob eine Sicherungsdatei erstellt wurde:
ls -al
- Stellen Sie sicher, dass das Skript zum Backup der ESXi-Konfiguration nach Plan (automatisch) ausgeführt wird. Bearbeiten Sie dazu die Scheduler-Konfiguration:
vi /var/spool/cron/crontabs/root - Fügen Sie die folgende Zeichenfolge hinzu, um jeden Tag um 02:10 Uhr ein Backup der ESXi-Konfiguration durchzuführen:
10 02 * * * /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh
- Speichern Sie die Änderungen in der Datei. Um Änderungen in der schreibgeschützten Datei zu speichern, geben Sie Folgendes ein:
:wq!Alternativ können Sie die Dateiberechtigungen vor dem Bearbeiten der Datei ändern:
chmod +w /var/spool/cron/crontabs/root
Nach der Einrichtung wird die ESXi-Konfiguration jeden Tag um 02:10 Uhr automatisch in dieser Datei gesichert: ESXi_Konfigurationssicherung_Datum_Uhrzeit.tgz
So stellen Sie die ESXi-Konfiguration in der ESXi-Befehlszeile wieder her
Sie sollten ESXi in derselben Version und mit derselben Build-Nummer wie der gesicherte ESXi-Host auf dem Rechner installiert haben, auf dem Sie die ESXi-Konfiguration wiederherstellen möchten. Diese Regel gilt für alle in diesem Blogbeitrag behandelten Methoden zur Wiederherstellung der ESXi-Konfiguration.Wenn Sie die ESXi-Konfiguration auf einem Von Grund auf neu installierter ESXi-Host (frisch installiert) müssen Sie die IP-Adresse für die Netzwerkschnittstelle festlegen, die für das ESXi-Management-Netzwerk verwendet wird, und den SSH-Zugriff aktivieren.Die UUID muss sowohl auf dem ESXi-Server, der gesichert wurde, als auch auf dem ESXi-Server, auf dem die Konfiguration wiederhergestellt werden soll, identisch sein. Die Schritte, die zu befolgen sind, wenn die UUID-Werte unterschiedlich sind, werden im weiteren Abschnitt behandelt.So wiederholen Sie das Wiederherstellen der ESXi-Konfiguration:
- Nachdem Sie Ihren frisch installierten ESXi-Host für die Wiederherstellung der ESXi-Konfiguration aus einem Backup vorbereitet haben, verbinden Sie sich über SSH mit dem ESXi-Host und versetzen Sie den Host in den Modus der Wartung (in diesem Modus werden VMs angehalten).
esxcli system maintenanceMode set --enable yesoder
vim-cmd hostsvc/maintenance_mode_enter - Kopieren Sie das Archiv, das die ESXi-Konfigurationssicherung enthält, mit einem SCP-Client, z. B. WinSCP, in ein Verzeichnis auf dem ESXi-Host. Kopieren wir die configBundle-xxxx.tgz Archiv vom lokalen Rechner auf den /tmp/ Verzeichnis auf dem Ziel-ESXi-Server.

- Benennen Sie die configBundle-xxxx.tgz Datei an Konfigurationspaket.tgz Bevor Sie den Befehl zum Wiederherstellen der ESXi-Konfiguration eingeben. Andernfalls erhalten Sie die Fehlermeldung: „Die Datei /tmp/configBundle.tgz wurde nicht gefunden.„.
Sie können die Datei in der ESXi-Shell, mit der Sie sich über SSH verbunden haben, umbenennen:
mv /tmp/configBundle-esxi6-7b.localdomain.tgz /tmp/configBundle.tgz - Wiederherstellung der ESXi-Konfiguration:
vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgzNach Ausführung dieses Befehls wird ein ESXi-Host automatisch neu gestartet.

- Nach dem Neustart des ESXi-Servers beenden Sie den Modus der Wartung. Danach können Sie den Host wie gewohnt verwenden.
esxcli system maintenanceMode set --enable nooder
vim-cmd hostsvc/maintenance_mode_exit
So ändern Sie die UUID, um die ESXi-Konfiguration wiederherzustellen
Sie können die UUID des ESXi-Servers auf zwei Arten überprüfen:
- In der ESXi-Befehlszeilenschnittstelle:
esxcfg-info -u - In der Manifest.txt Dateien innerhalb der Konfigurationspaket.tgz Backup-Archiv, das Sie mit den oben erläuterten Befehlen erstellt haben.

Sie können die UUID des ESXi-Servers nicht ändern, da die Kennung in Abhängigkeit von der Hardware generiert wird. Sie können jedoch die ESXi-Konfiguration von ESXi-Host A auf ESXi-Host B wiederherstellen, nach der Änderung der UUID in der Manifest.txt Dateien gespeichert in der Konfigurationspaket.tgz ESXi-Konfigurationssicherungsarchiv.Sehen wir uns nun an, wie Sie die UUID ändern können, um die gesicherte Konfiguration auf einen anderen physischen Server anzuwenden. Server A ist der Server, dessen Konfiguration gesichert wurde, und Server B ist der Server, auf den die Konfiguration angewendet wird.
Stufe 1
Überprüfen Sie die UUID auf dem ESXi-Host, auf den Sie die gesicherte Konfiguration anwenden möchten (Server B). Dazu gibt es mindestens zwei Methoden, wobei Sie mit der zweiten Methode auch die ESXi-Version überprüfen können:
- Führen Sie die
esxcfg-info -u - Sichern Sie die Konfiguration des ESXi-Servers B:
vim-cmd hostsvc/firmware/sync_configvim-cmd hostsvc/firmware/backup_config - Kopieren Sie das Sicherungsarchiv in das temporäre Verzeichnis und wechseln Sie in dieses Verzeichnis:
cp /scratch/downloads/_hash_value_/configBundle-localhost.localdomain.tgz /tmpcd /tmp/ - Extrahieren Sie Dateien aus dem Archiv:
tar zxvf configBundle.tgz - Öffnen Sie die Manifest.txt Dateien mit vi öffnen und den UUID-Wert überprüfen (Sie sehen eine separate Zeile mit der UUID). Notieren Sie sich die UUID:
vi Manifest.txtIn unserem Fall lautet die UUID 1E9E4D56-B724-DFBE-D19D-4C2D827E0188.
- Sie können temporäre Dateien im löschen /tmp/ Verzeichnis:
rm configBundle-localhost.localdomain.tgz Manifest.txt state.tgz
Stufe 2
- Kopieren Sie die Konfigurationspaket.tgz Backup der Konfiguration des ESXi-Servers A auf Server B, beispielsweise in das Verzeichnis /tmp/ Verzeichnis und gehen Sie zu diesem Verzeichnis.
- Extrahieren Sie Dateien aus der Konfigurationspaket.tgz Archiv:
tar zxvf configBundle.tgz - Öffnen Sie die Manifest.txt Datei mit vi und aktualisieren Sie den UUID-Wert von Server A auf die UUID von Server B:
vi Manifest.txtIn unserem Fall ändern wir 9EA94D56-7E39-96A8-AB45-DF31EF0971EC in 1E9E4D56-B724-DFBE-D19D-4C2D827E0188.
Speichern Sie die Datei und beenden Sie den Texteditor:
:wq
- Benennen Sie Ihre Quelle um Konfigurationspaket.tgz Datei an configBundle1.tgz, zum Beispiel (wenn der Name Ihrer ESXi-Konfigurations-Backup-Datei von Konfigurationspaket.tgz(Sie können diesen Schritt überspringen):
mv configBundle.tgz configBundle1.tgz - Teer Manifest.txt, state.tgz und jumpstrt.gz Dateien in einen neuen Konfigurationspaket.tgz Archiv:
tar zcvf configBundle.tgz Manifest.txt state.tgz jumpstrt.gz - Versetzen Sie den ESXi-Host in den Modus der Wartung und stellen Sie die Konfiguration wieder her:
esxcli system maintenanceMode set --enable yesvim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
Methode 2: So sichern Sie einen ESXi-Host mit der vSphere-CLI
Eine weitere von VMware bereitgestellte Befehlszeilenschnittstelle zum Verwalten von VMware ESXi-Hosts ist vSphere CLI (nicht zu verwechseln mit VMware PowerCLI). Sie sollten vSphere CLI auf einem Computer unter Linux oder Windows installieren, um VMware ESXi-Hosts remote zu verwalten. Perl Es gibt Anforderungen an die Installation von vSphere CLI.Der Vorteil der Verwendung von vSphere CLI liegt in der Bequemlichkeit und der Leistungsfähigkeit von Bash unter Linux. Diese Methode ist besonders für ESXi 6.x geeignet. Wenn Sie ESXi 8 verwenden, wählen Sie eine der anderen in diesem Artikel beschriebenen Methoden.
Installieren und Konfigurieren von vCLI
- Herunterladen Sie die für Ihr Betriebssystem erforderliche Version von vSphere CLI von der VMware-Website. In diesem Beispiel wird Ubuntu Linux verwendet.
- Gehen Sie zu dem Verzeichnis, in dem sich die heruntergeladene Datei befindet, und extrahieren Sie die Dateien aus dem Archiv:
tar -zxvf VMware-vSphere-CLI-6.5.0-4566394.x86_64.tar.gz - Installieren Sie die erforderlichen Pakete:
apt-get install -y perl-doc libmodule-build-perl libssl-dev libxml-libxml-perl libsoap-lite-perl libuuid-perl build-essentialDie offizielle Empfehlung von VMware lautet, folgende Pakete zu installieren:
apt-get install ia32-libs build-essential gcc uuid uuid-dev perl libssl-dev perl-doc liburi-perl libxml-libxml-perl libcrypt-ssleay-perl - Wechseln Sie in das Verzeichnis, in dem sich die extrahierten Dateien befinden, und führen Sie das Installationsprogramm aus:
./vmware-install.pl - Lesen und akzeptieren Sie die Lizenzvereinbarung. Wenn Sie vom Installationsprogramm aufgefordert werden, einige erforderliche Module zu installieren, geben Sie Folgendes ein: y und installieren Sie die Module.

- In unserem Verwendungsfall müssen einige Module manuell installiert werden. Sie können von der interaktiven Shell von Perl installiert werden.

Rufen Sie die interaktive Shell von Perl auf:
perl -MCPAN -e shell - Führen Sie den Befehl aus, um das erforderliche Perl-Modul zu installieren:
install Devel::StackTraceInstallieren Sie andere Module auf ähnliche Weise.

HINWEIS: In unserem Fall konnte ein Modul nicht in der interaktiven Perl-Shell installiert werden, aber wir können dieses Modul mit dem folgenden Befehl in der Ubuntu-Konsole installieren:
apt-get install libcrypt-ssleay-perl - Führen Sie nach der Installation der Perl-Module das VMware vSphere CLI-Installationsprogramm erneut aus.
- Die Installation wurde erfolgreich abgeschlossen. In diesem Fall wird der folgende Bildschirm angezeigt:

- Versuchen wir nun, vSphere CLI zu verwenden, und geben Sie den folgenden Befehl in die Linux-Konsole ein, um die Anzeige der Geräte des ESXi-Servers zu erhalten:
esxcli --server 192.168.101.208 storage core device listWobei 192.168.101.208 die IP-Adresse des ESXi-Servers ist.

- Der SHA-1-Fingerabdruck des Servers ist nicht vertrauenswürdig, und die Verbindung zum ESXi-Host ist fehlgeschlagen. Das bedeutet, dass Sie aus Gründen der Sicherheit den Fingerabdruck definieren sollten. Versuchen wir es mit einem anderen Befehl:
esxcli --server 192.168.101.208 --thumbprint B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA system maintenanceMode getDer Benutzername und das Passwort werden im interaktiven Modus in der Konsole abgefragt.

Verwenden Sie möglichst keine Befehle, bei denen Benutzername und Passwort wie folgt als Klartext eingegeben werden:
esxcli --server 192.168.101.208 --username root --password TestPass_555 --thumbprint B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA system maintenanceMode getHINWEIS: Dies geschieht aus Gründen der Sicherheit. Die ausgeführten Befehle werden in Linux gespeichert, bis Sie den Befehl
history -cBefehl zum Löschen des Verlaufs. Wenn Sie den interaktiven Modus vermeiden und die manuelle Eingabe von Benutzername und Passwort umgehen möchten, können Sie die ESXi-Sitzung in einer Datei speichern und diese Datei beim Ausführen von Befehlen verwenden. Das Speichern von Sitzungen bietet mehr Sicherheit als die Eingabe eines Passworts als Klartext im Befehl. Das Speichern von Sitzungen wird im Folgenden erläutert.
Speichern eines Fingerabdrucks zum Verbinden mit ESXi-Hosts
Es ist nicht praktisch, jedes Mal einen ESXi-Fingerabdruck einzugeben, um einen Befehl auszuführen. Glücklicherweise ist es möglich, den Fingerabdruck zu speichern und weitere Befehle mit vSphere CLI auszuführen, ohne einen Fingerabdruck zu definieren.
- Gehen Sie zum Verzeichnis:
cd /usr/lib/vmware-vcli/apps/general/ - Führen Sie den Befehl wie folgt aus:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s server -t thumbprintIn unserem speziellen Beispiel lautet der Befehl:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s 192.168.101.208 -t B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA
- Jetzt können Sie Befehle in der vSphere-CLI ausführen, ohne jedes Mal einen Fingerabdruck eingeben zu müssen:
esxcli --server 192.168.101.208 system maintenanceMode get
Sie müssen jedoch weiterhin einen Benutzernamen und ein Passwort eingeben. Sie können vSphere CLI so konfigurieren, dass Befehle ausgeführt werden, ohne jedes Mal ein Passwort eingeben zu müssen, wie in den folgenden Abschnitten beschrieben.
Verwendung einer Sitzungsdatei für das Verbinden mit ESXi-Hosts
Die Verwendung einer gespeicherten Sitzungsdatei ist eine der Methoden, um die Eingabe eines Benutzernamens und eines Passworts zu vermeiden, wenn Sie einen Befehl auf einem Remote-ESXi-Host von der vSphere-CLI ausführen.
- Erstellen Sie ein Verzeichnis zum Speichern der ESXi-Konfigurations-Backup-Dateien, zum Beispiel: /Backup/
mkdir /backup - Gehen Sie zu diesem Verzeichnis:
cd /usr/lib/vmware-vcli/apps/session - Speichern Sie Ihre autorisierte ESXi-Host-Sitzung mithilfe eines Perl-Skripts mit dem folgenden Befehl in einer Datei:
perl save_session.pl --savesessionfile /backup/192-168-101-208session --server 192.168.101.208 --username root --password TestPass_555Wo:
––savesessionfile /Backup/192-168-101-208session ist der Name der erstellten Sitzungsdatei.
––Der Server 192.168.101.208 ist der Name des ESXi-Hosts, dessen Sitzung gespeichert ist (dieser ESXi-Host wird in mehreren Beispielen verwendet).
––Der Benutzername root ist der Name des Benutzers, der mit dem ESXi-Host verbunden ist.
––Das Passwort „TestPass_555“ ist das Passwort für den Benutzer, der mit dem ESXi-Host verbunden ist.
Jetzt können Sie Befehle ausführen, ohne ein Passwort einzugeben, aber Sie sollten das ––Sitzungsdatei Taste (Option) und legen Sie den Pfad zur Sitzungsdatei fest.Beispiel:esxcli --sessionfile /backup/192-168-101-208session system maintenanceMode get
Verwenden einer Konfigurationsdatei zum Verbinden mit ESXi-Hosts
Die Idee hinter dieser Methode besteht darin, die Anmeldeinformationen als Klartext in der Konfigurationsdatei zu speichern und bei der Ausführung von ESXi-Befehlen in der vSphere-CLI auf diese Datei zu verweisen.
- Erstellen Sie eine Konfigurationsdatei:
vim /backup/vcli-config - Geben Sie die Anmeldeinformationen wie folgt ein:
VI_USERNAME=root
VI_PASSWORD=TestPass_555
- Speichern Sie die Datei.
- Führen Sie diesen Befehl von dem Remote-ESXi-Server mit der vSphere-Befehlszeilenschnittstelle aus:
esxcli --server 192.168.101.208 --config vcli-config system maintenanceMode get
HINWEIS: Da die Anmeldeinformationen als Klartext gespeichert werden, ist diese Methode nicht sicher.
Verwenden eines Speichers für Anmeldeinformationen für das Verbinden mit ESXi-Hosts
Ein Credential Store ist die XML-Datei, die sich im Benutzerverzeichnis im vmware Unterverzeichnis ~/.vmware/credstore/vicredentials.xmlDer Vorteil der Verwendung des Speichers für die Anmeldeinformationen zum Ausführen von Befehlen auf Remote-ESXi-Hosts besteht darin, dass das Passwort nicht als Klartext gespeichert wird. Dadurch bietet diese Methode eine höhere Sicherheit.
- Um Anmeldeinformationen zum Anmeldedaten-Speicher hinzuzufügen, führen Sie den folgenden Befehl aus:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add --server 192.168.101.208 --username root - Listen Sie die im Anmeldedaten-Speicher gespeicherten Anmeldeinformationen auf, um sicherzustellen, dass die erforderlichen Anmeldeinformationen vorhanden sind:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl list - Führen Sie den Befehl auf dem Remote-ESXi-Host aus, ohne ein Passwort einzugeben, indem Sie die Anmeldeinformationen verwenden:
# esxcli --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml system maintenanceMode getWenn Sie einen Nicht-Root-Benutzer verwenden, wird die Datei mit den Anmeldeinformationen gespeichert in /home/Benutzername/.vmware/credstore/vicredentials.xml

Im folgenden Screenshot sehen Sie, wie Anmeldeinformationen in der Datei für die Anmeldeinformationen gespeichert werden.

Sichern der ESXi-Host-Konfiguration mit der vSphere-Befehlszeilenschnittstelle
Nachdem Sie nun die vSphere-CLI auf dem Ubuntu-Linux-Rechner konfiguriert haben, können Sie die Befehle ausführen und die ESXi-Konfiguration sichern:
- Gehen Sie zu /usr/bin/ Verzeichnis:
cd /usr/bin - Um ein Backup der ESXi-Konfiguration zu erstellen, ohne den Benutzernamen und das Passwort einzugeben, verwenden Sie einen der folgenden Befehle.
- Verwenden Sie für Benutzernamen und Passwörter, die in den Anmeldeinformationen gespeichert sind, den folgenden Befehl:
vicfg-cfgbackup --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml -s /backup/192-168-101-208-esxi-cfg.tgz - Oder verwenden Sie nach dem Speichern der Sitzung in der Sitzungsdatei den Befehl:
vicfg-cfgbackup --sessionfile /backup/192-168-101-208session -s /backup/192-168-101-208-esxi-cfg.tgz
HINWEIS: vicfg- Befehle sind veraltet. Wenn vicfg in Ihrem Fall nicht funktioniert, verwenden Sie ESXCLI Entsprechende Befehle in der Befehlszeilenschnittstelle bei der Arbeit mit ESXi-Hosts der neuesten Versionen. Siehe Befehle für andere ESXi-Konfigurations-Backup-Methoden.
Der Nachteil der Verwendung des ––Sitzungsdatei Die Option ist der Leerlauf, wenn nach Ausführung des letzten Befehls in vSphere CLI 30 Minuten lang keine Aktivität stattfindet. Nach diesem Leerlauf müssen Sie sich erneut authentifizieren und eine Sitzungsdatei erstellen.
- Wenn Sie ein Backup der ESXi-Konfiguration erstellen möchten, während Sie ein Passwort im interaktiven Modus eingeben, können Sie den folgenden Befehl ausführen:
vicfg-cfgbackup --server 192.168.101.208 -s /backup/192-168-101-208-esxi-cfg.tgz
- Verwenden Sie für Benutzernamen und Passwörter, die in den Anmeldeinformationen gespeichert sind, den folgenden Befehl:
So automatisieren Sie das Backup der ESXi-Konfiguration
Wenn Sie eine sich dynamisch verändernde Umgebung haben und die Konfiguration der ESXi-Hosts häufig geändert wird, ist ein manuelles Backup der ESXi-Hosts möglicherweise nicht praktikabel. In diesem Fall können Sie das Backup Ihrer ESXi-Konfiguration automatisieren, indem Sie dem Scheduler einen Befehl zum Backup oder ein Sicherungs-Skript hinzufügen, das mehrere Befehle enthält. Crontab ist ein Scheduler unter Linux.
- Bearbeiten Sie die Scheduler-Konfiguration unter Linux, damit der Befehl zum Backup der ESXi-Konfiguration regelmäßig und automatisch ausgeführt wird.
crontab -eHINWEIS: Wenn Sie die crontab-Konfiguration zum ersten Mal bearbeiten, sollten Sie den Standard-Texteditor auswählen, der zum Bearbeiten der crontab-Konfiguration verwendet werden muss. In unserem Beispiel verwenden wir /usr/bin/vim.basic zu diesem Zweck.
Das Format der crontab-Konfiguration lautet wie folgt:
Minuten Stunden Tag_des_Monats Monat Wochentag Befehl
- Sichern wir die ESXi-Host-Konfiguration jeden Abend um 03:25 Uhr, indem wir die folgende Zeile zur crontab-Konfiguration hinzufügen:
25 03 * * * /usr/bin/vicfg-cfgbackup ––Server 192.168.101.208 ––config /Backup/vcli-config -s /Backup/192-168-101-208-esxi-cfg-cron.tgz
- Schreiben Sie die Konfiguration des crontab Scheduler und den Texteditor beenden vim (das in diesem Beispiel verwendet wird):
:wq
- Warten wir bis nach 03:25 Uhr, um das Verzeichnis zu überprüfen, in dem die ESXi-Sicherungskonfigurationsdateien gespeichert werden müssen:
ls -alWie Sie im folgenden Screenshot sehen können, wurde die Datei zum Backup der ESXi-Host-Konfiguration um 03:25 Uhr automatisch erstellt.

Nun wurde das ESXi-Backup automatisch erstellt, was großartig ist, aber es gibt einen Nachteil. Jedes Mal, wenn crontab einen geplanten Befehl zum Erstellen des ESXi-Backups ausführt, wird die vorherige tgz Die Dateien werden von der neuen überschrieben. tgz Datei. Dies kann zu Problemen führen, wenn die vor zwei Tagen erstellte Sicherung mit der korrekten ESXi-Konfiguration durch eine am nächsten Tag erstellte Datei mit der falschen ESXi-Konfiguration überschrieben wird. Um dieses Problem zu vermeiden, sollten Sie die ESXi-Konfiguration in verschiedenen Dateien sichern.Erstellen wir ein einfaches Skript, um die ESXi-Konfiguration jedes Mal als separate Datei mit einem eindeutigen Namen zu speichern, der das Datum und die Zeit der Erstellung der ESXi-Konfigurationssicherungsdatei im Namen der Datei enthält. Durch das Erstellen eines Skripts können Sie Befehle zum Sichern mehrerer ESXi-Hosts hinzufügen, indem Sie ein einziges Skript ausführen.
- Erstellen Sie die esxi_backup.sh Datei im Verzeichnis /backup/:
vim /backup/esxi_backup.sh - Fügen Sie den Dateien folgende Zeilen hinzu:
#!/bin/bash
ESXI101_208_BACKUP_NAME=“192-168-101-208-$(datum +’%Y%m%d_%H%M%S‘)esxi-cfg.tgz“
vicfg-cfg-Sicherung ––Server 192.168.101.208 ––config /backup/vcli-config -s /backup/$ESXI101_208_BACKUP_NAME
- Schreiben Sie die Änderungen in die Datei und beenden Sie den Texteditor vim:
:wq - Machen Sie die Datei ausführbar:
chmod +x /backup/esxi_backup.sh - Bearbeiten Sie die Scheduler-Konfiguration:
crontab -e - Fügen Sie die Zeile wie folgt hinzu:
50 06 * * * /backup/esxi_backup.sh
Mit dieser Konfigurationszeile können wir crontab so einstellen, dass das ESXi-Backup-Skript um 06:50 Uhr ausgeführt wird.
Deaktivieren Sie die zuvor hinzugefügte geplante Aufgabe, indem Sie das Zeichen # am Anfang der Zeile einfügen.
Speichern Sie die Konfiguration.

- Warten Sie die festgelegte Zeit ab und überprüfen Sie dann, ob das ESXi-Konfigurations-Backup-Archiv erstellt wurde.

Dies ist ein einfaches Skript, das die Idee der Automatisierung veranschaulicht. Sie können komplexe Skripte erstellen, um mehrere ESXi-Hosts zu sichern.HINWEIS: Nach jedem Neustart von ESXi oder nach 30 Minuten Leerlauf läuft die Authentifizierung für die ESXi-Sitzung ab. Beachten Sie diese Funktion, wenn Sie ein Skript für die automatisierte ESXi-Sicherung erstellen.
So stellen Sie die ESXi-Konfiguration in der vSphere-Befehlszeilenschnittstelle wieder her
Die Anforderungen für die Wiederherstellung der ESXi-Konfiguration mithilfe der vSphere-CLI ähneln den Anforderungen für andere Methoden. Um die ESXi-Konfiguration wiederherzustellen, stellen Sie sicher, dass der Fernzugriff über SSH aktiviert ist und die IP-Adresse des ESXi-Servers bekannt ist (es wird empfohlen, dieselbe IP-Adresse wie die IP-Adresse des gesicherten ESXi-Hosts zu verwenden).Um die ESXi-Konfiguration wiederherzustellen, führen Sie folgenden Befehl aus:vicfg-cfgbackup --server=ESXi_host_IP_address --username=root -l backup_fileIn unserem speziellen Beispiel lautet der Befehl:vicfg-cfgbackup --server=192.168.101.208 --username=root -l /backup/192-168-101-208-esxi-cfg.tgzWenn sich die UUID des Ziel-ESXi-Hosts, auf dem Sie die Konfiguration wiederherstellen möchten, von der UUID des gesicherten ESXi-Servers unterscheidet (dessen UUID in der Manifest.txt Datei innerhalb der tgz Backup-Archiv), können Sie die -f Schlüssel (Force), um die UUID zu überschreiben.
Sie können die UUID des laufenden ESXi-Hosts mit dem folgenden Befehl überprüfen:esxcfg-info -uHINWEIS: Ab ESXi 7.0 U2 funktioniert die UUID-Zwangsüberschreibung nicht, wenn auf einem ESXi-Host ein TPM (Trusted Platform Module) verwendet wird.
Methode 3: Verwenden von PowerCLI zum Sichern von ESXi-Hosts
Benutzer, die Windows PowerShell mögen, können PowerCLI für das Management von vSphere und zum Sichern von ESXi-Konfigurationen. PowerCLI ist eine Reihe von PowerShell-Cmdlets. Einige grundlegende PowerCLI-Befehle werden in dieser Blogbeitrag.Um PowerCLI zum Sichern des ESXi-Hosts zu verwenden, müssen Sie zunächst PowerCLI installieren auf Ihrem Betriebssystem:
- Führen Sie PowerCLI als Administrator unter Windows aus.
- Verbinden Sie sich mit Ihrem ESXi-Server:
Connect-VIServer ESXi_IP_address -user user_name -password your_passwordIn unserem Verwendungsfall verwenden wir die folgenden Befehle:
Connect-VIServer 192.168.101.208 -user root -password TestPass_555Get-VMHostFirmware -vmhost 192.168.101.208 -BackupConfiguration -DestinationPath \"C:\backup ESXi host\"
- Wenn Ihre ESXi-Hosts von vCenter Server verwaltet werden, können Sie zunächst eine Verbindung zu vCenter herstellen und dann die ESXi-Konfiguration auf Ihren Hosts in PowerCLI sichern, ohne sich vor jeder Sicherung der Hostkonfiguration erneut authentifizieren zu müssen:
Connect-VIServer 10.10.10.16Geben Sie Ihren Namen für die Verwaltung und Ihr Passwort für den Zugriff auf vCenter Server ein. Zu diesem Zweck erscheint ein Popup-Fenster.

- Wenn Ihre ESXi-Hosts von vCenter Server verwaltet werden, können Sie zunächst eine Verbindung zu vCenter herstellen und dann die ESXi-Konfiguration auf Ihren Hosts in PowerCLI sichern, ohne sich vor jeder Sicherung der Hostkonfiguration erneut authentifizieren zu müssen:
- Sichern Sie die ESXi-Konfiguration jedes Hosts:
Get-VMHostFirmware -vmhost 10.10.10.61 -BackupConfiguration -DestinationPath \"C:\backup ESXi host\"Get-VMHostFirmware -vmhost 10.10.10.46 -BackupConfiguration -DestinationPath \"C:\backup ESXi host\"
So stellen Sie die ESXi-Konfiguration in PowerCLI wieder her
- Führen Sie VMware PowerCLI als Administrator der Verwaltung aus.
- Verbinden Sie sich mit dem ESXi-Host, auf dem Sie die Konfiguration wiederherstellen möchten. In unserem Beispiel wiederholen wir die Wiederherstellung der Konfiguration auf dem ESXi-Host mit der IP-Adresse 192.168.101.208.
- Versetzen Sie den ESXi-Host in den Modus der Wartung:
Set-VMHost -VMHost 192.168.101.208 -State Maintenance - Stellen Sie sicher, dass alle auf diesem ESXi-Host befindlichen VMs ausgeschaltet oder auf einen anderen ESXi-Host migriert sind, bevor Sie die ESXi-Konfiguration wiederherstellen. Beachten Sie, dass der ESXi-Host nach Ausführung des Befehls zum Wiederherstellen der Konfiguration automatisch neu gestartet wird.
- Konfiguration mit dem
Set-VMHostFirmware restoreBefehl:Set-VMHostFirmware -vmhost 192.168.101.208 -Restore -SourcePath \"C:\backup ESXi host\configBundle-192.168.101.208.tgz\" -HostUser root -HostPassword TestPass_555
Die Version, Build-Nummer und UUID des ESXi-Hosts, auf dem die Konfiguration wiederhergestellt wird, müssen mit der Version, Build-Nummer und UUID des ESXi-Hosts übereinstimmen, dessen Backup Sie zur Wiederherstellung der Konfiguration verwenden. Verwenden Sie die -Kraft Geben Sie den Befehl ein, um die UUID-Prüfung zu überspringen.
Methode 4: Manuelles Backup und Wiederherstellen der ESXi-Konfiguration
Sie sollten auch auf eine Situation vorbereitet sein, in der Sie sich nicht bei Ihrem ESXi-Host anmelden können oder wenn ein ESXi-Host nicht booten kann und Sie die Befehlszeilenschnittstelle nicht verwenden können, um den Befehl zum Sichern oder Wiederherstellen der ESXi-Konfiguration auszuführen. Dies kann aufgrund von Hardwarefehlern oder Softwareproblemen geschehen. In diesem Fall ist es besser, zu wissen, wie man eine ESXi-Konfiguration manuell sichert und wiederherstellt.Wie Sie sich vielleicht aus der Standardeinstellung erinnern crontab Konfiguration auf einem ESXi-Host, die /sbin/auto-backup.sh Das Skript wird stündlich und bei jedem Neustart oder Herunterfahren eines ESXi-Hosts ausgeführt. Dieses Skript dient dazu, die im Speicher abgelegte ESXi-Konfiguration zu sichern. /bootbank/Zustand.tgz Dateien.HINWEIS: Das /bootbank/Zustand.tgz Die Dateien dürfen nicht verschlüsselt sein, um diese Methode verwenden zu können.Die ESXi-Konfiguration wird im RAM des Computers gespeichert, wenn ein ESXi-Server ausgeführt wird (die entsprechende RAM-Festplatte wird auf dem /etc/ Verzeichnis). Beim Booten von ESXi werden Systemdateien aus dem /bootbank/Zustand.tgz Archiv zu den /etc/ Verzeichnis. Sie können die Datei manuell kopieren. /bootbank/Zustand.tgz Dateien, wenn Ihr ESXi-Host läuft, mithilfe eines SCP-Clients wie WinSCP (der Remote-SSH-Zugriff muss aktiviert sein). Alternativ können Sie von der Live-DVD booten und die state.tgz Dateien manuell, wenn Ihr ESXi-Host nicht bootfähig ist (z. B. aufgrund eines Hardwarefehlers).
Manueller Workflow für die Wiederherstellung
- Bereiten Sie das zuvor mit ESXi Shell, vSphere CLI oder PowerCLI erstellte Backup-Archiv vor. Der Name der Datei lautet Konfigurationspaket-192-168-101-208.tgz In unserem Fall können Sie die Datei beispielsweise auf einen USB-Stick kopieren und diesen Stick in einen USB-Port des ESXi-Servers einstecken, auf dem Sie die Systemkonfiguration wiederherstellen müssen.
- Starten Sie den Rechner, auf dem ESXi installiert ist, von der Live-CD/DVD. Sie können die Ubuntu-Installations-CD als Live-CD/DVD verwenden.
- Öffnen Sie die Konsole (Terminal) in Linux.
- Liste der Partitionen:
ls -al /dev/sd*fdisk -l | grep /dev/sdaIn diesem Fall benötigen wir die /dev/sda5/ Partition, die als Microsoft-Basisdaten gekennzeichnet ist.
ESXi-Festplattenpartitionen wurden in dem Blogbeitrag über ESXi von einem USB-Stick booten und ESXi-Passwort-Wiederherstellung.

Wir sind interessiert an der /dev/sda5 Partition in diesem Fall.
- Erstellen Sie das Verzeichnis, in das die Partition /dev/sda5 gemountet wird:
mkdir /mnt/sda5 - Hängen Sie die Partition der Festplatte in dieses Verzeichnis ein:
mount /dev/sda5 /mnt/sda5 - In der /mnt/sda5 Verzeichnis finden Sie die state.tgz Datei, die die ESXi-Konfiguration enthält. Dieses Verzeichnis (in dem state.tgz gespeichert wird) wird als /bootblank/ wenn ein ESXi-Host gebootet wird.
- Kopieren Sie das ESXi-Konfigurationssicherungsarchiv vom USB-Stick auf den /tmp/Verzeichnis von Ubuntu, das von der Live-DVD geladen wurde. In unserem Beispiel kopieren wir:
cp /media/Ubuntu/Ubuntu\ 18.0/backup_ESXi_host/configBundle-192-168-101-208.tgz /tmp/configBundle.tgz - Extrahieren Sie Dateien aus dem Backup-Archiv:
tar zxvf /tmp/configBundle.tgz - Sie können sehen, dass die state.tgz Die Dateien werden aus dem Archiv extrahiert:
ls -al /tmp/ - Umbenennen des Originals state.tgz Datei, die sich auf dem /dev/sda5 Partition gemountet auf /mnt/sda5/
mv /mnt/sda5/state.tgz /mnt/sda5/state-old.tgz - Kopieren Sie die state.tgz Dateien, die Sie aus dem ESXi-Konfigurations-Backup-Archiv extrahiert haben (Konfigurationspaket.tgz) zum /tmp/ Verzeichnis:
cp /tmp/state.tgz /mnt/sda5/ - Gemountete Partitionen unmounten:
umount /dev/sda5/ - Starten Sie den Server neu. Nehmen Sie die Ubuntu Live-DVD aus dem Laufwerk und booten Sie den Computer von der Festplatte, auf der ESXi installiert ist.
init 6
Jetzt sollte Ihre ESXi-Konfiguration wiederhergestellt sein.
Schlussfolgerung
Die Verwendung der ESXi-Befehlszeilenschnittstelle ist vorteilhaft, da Sie keine zusätzliche Software installieren müssen. Die Vorteile der vSphere-Befehlszeilenschnittstelle (CLI) sind die Möglichkeit, Befehle von Linux-Rechnern remote auszuführen, und die Möglichkeit, das Backup der ESXi-Konfiguration zu automatisieren. PowerCLI hingegen dürfte Windows-Benutzern gefallen.Wenn ein ESXi-Host nicht funktionsfähig ist und Sie den Host nicht booten können, können Sie die Konfiguration manuell zum Backup sichern und wiederherstellen. Beachten Sie, dass Bootblank-Informationen und Informationen zu VMs nicht in der ESXi-Konfigurationssicherungsdatei gespeichert werden. Nach der Wiederherstellung der ESXi-Konfiguration müssen Sie möglicherweise virtuelle Maschinen in Ihrem Inventar registrieren.Es wird empfohlen, zusätzlich zum Backup von ESXi-Hosts auch Ihre vSphere-Virtuellen Maschinen zu sichern. NAKIVO Backup & Replication ist eine universelle Backup-Lösung, mit der Sie Ihre VMware-VMs, Hyper-V-VMs, Amazon EC2-Instanzen sowie physische Linux- und Windows-Server sichern können.