Ich bin ein großer Fan von PowerShell Einzeilern.
Vor Updates, Upgrades oder sonstigen Arbeiten am ESX Server, sollte man unbedingt die Konfiguration sichern. Ein ESXi ist schnell installiert, aber bis eine verlorene Konfiguration wieder rekonstruiert ist, können Stunden vergehen.
Musste man früher zum Export einer ESXi Konfiguaration noch eine SSH Shell zum Host öffnen oder mittels vSphereCLI arbeiten, so kann man dies jetzt sehr einfach mit einem Einzeiler in PowerCLI machen.
Backup
Connect-VIserver myvc.mydomain.com
Anmelden als vc Administrator.
Get-VMhost | Get-VMHostFirmware -BackupConfiguration -DestinationPath "C:\temp"
Innerhalb weniger Sekunden befinden sich die Konfigurationen aller im vCenter registrierten ESXi Hosts im Verzeichnis c:\temp.
Möchte man nur die Konfiguration eines einzelnen Hosts sichern, lautet der Befehl:
Get-VMHostFirmware -VMHost myesx.mydomain.com -BackupConfiguration -DestinationPath "C:\temp"
Restore
Im Fehlerfall muss man natürlich die Konfiguration wieder rekonstruieren können. Scheitert der ESXi Bootvorgang nach den Servicearbeiten, weil z.B. das Bootmedium beschädigt ist, so installiert man kurzerhand einen neunen ESXi Server, vergibt eine IP Adresse und spielt die Konfiguration zurück.
Vor dem Restore muss sich der Host im Wartungsmodus befinden.
Set-VMHost -VMHost esx1.mydomain.com -State "Maintenance"
Jetzt kann die Konfig zurück gesichert werden.
Set-VMHostFirmware -VMHost esx1.mydomain.com -Restore -Force -SourcePath c:\temp\configBundle-esx1.mydomain.com.tgz
Ein Reboot und der Host ist wieder der alte.
Links
vSphere PowerCLI Cmdlets Reference – Get-VMHostFirmware
vSphere PowerCLI Cmdlets Reference – Set-VMHostFirmware