VMs in OVF-Vorlage exportieren und wieder importieren

Vor kurzem stand ich vor dem Problem, 30 virtuelle Maschinen von einem 4er ESX Host mit lokalen Festplatten auf einen 5er ESX Host mit Storage migrieren zu müssen.
Bei der Gelegenheit sollte direkt eine Sicherung der VMs auf einem NAS abgelegt werden.
Da die Maschinen unter der Woche unverzichtbar sind, kam als Zeitpunkt für die Migration nur das Wochenende in Frage.

Mit dem folgenden Script fällt das Wochenende für den Administrator nicht komplett ins Wasser:

Connect-VIServer -Server server -User user -Password password -ErrorAction Continue

$servers = Get-Content D:\server.txt

foreach($server in $servers)
{
   Shutdown-VMGuest -VM $server -Confirm:$false
   Start-Sleep -Seconds 60
   Get-VM -Name $server | Export-VApp -Destination "Zielverzeichnis" -Format OVF -Force
   Get-VM -Name $server | Move-VM -Destination "Zielhost" -Datastore "Datenspeicher"
   Start-VM -VM $server
   Get-VM $server | Update-Tools -NoReboot
}
Disconnect-VIServer -Force

Was macht das Script?

  1. Verbindung herstellen
  2. server.txt einlesen (in der server.txt sind die zu migrierenden Server aufgelistet)
  3. VM herunterfahren
  4. 60 Sekunden warten
  5. OVF Export in das angegebene Zielverzeichnis
  6. VM migrieren
  7. VM starten
  8. VMware Tools updaten

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.