Windows 10/11 | VMware PowerCLI installieren und nutzen

  • Was wollen wir?

    VMware PowerCLI unter Windows 10+11 installieren


    Warum wollen wir das?

    u.a. um von VMware ESXi Hosts die Komplette Systemkonfiguration wegzusichern für einen Notfall-Restore.

    Desweiteren sind so via Powershell Scripte diverse Automatismen programmierbar die die Arbeit erleichtern können.


    Und wie geht das genau?


    *** siehe auch PDF zum Download im Anhang ***


    Zuerst eine Administrator-Powershell öffnen und nacheinander die in den Quellcode-Boxen angezeigten Powershell-Befehle ausführen.

    Code
    Install-Module vmware.powercli -Confirm:$false -AllowClobber

    jeweils mit „J“ (Ja) oder „A“ (alle) bestätigen…


    Anmerkung:

    Die Option -AllowClobber ist hier leider notwendig, da sonst der Befehl generell auf einen Fehler läuft.

    Diverse Dokus im Internet zum Thema Installation vmware.powercli weisen darauf aber leider NICHT hin !



    Code
    Get-Module -All | Where-Object name VMware -Match 
    Find-Module -name vmware.powercli 

    Code
    Import-Module VMware.Vim 


    Windows 11 spezifisch nötiger Einschub an dieser Stelle: Wenn Import-Module VMware.Vim hier auf einen Fehler läuft, die folgenden Befehle ausführen.
    Get-ExecutionPolicy -Scope CurrentUser

    Als Ergebnis wird dann sehr wahrscheinlich „Undefined“ herauskommen.
    Daher mit dem folgenden Befehl auf „Unrestricted“ umstellen !!!!

    Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser


    So wie unten im Screenshot muss dann der erfolgreiche Module-Import aussehen.

    Die gelbe Warnung kann man getrost ignorieren.




    Code
    Set-PowerCLIConfiguration -InvalidCertificateAction Ignore

    wieder mit „J“ (Ja) oder „A“ (alle) bestätigen…



    Zum Verbinden mit dem ESXi Host dann folgendes eingeben:

    (bei User nur den reinen Username abgeben, bitte ohne ein @IP/Domain dahinter im Anhang wie vielerorts in anderen Doku's beschrieben (z.b. [email protected])

    Code
    Connect-VIServer -Server Hostname/IP-adresse -User Username -Password Password -SaveCredential


    Glückwunsch....denn nun habt Ihr eine sichere Verbindung zum ESXi-Host aufgebaut. :thumbs_up::smiling_face:


    ESXi Host Config Backup:


    Wer nun seine ESXi Host-Konfiguration komplett sichern möchte....

    Code
    Get-VMHost 
    Get-VM | Where-Object PowerState PoweredOn -Match 
    Get-VMhost | Get-VMHostFirmware -BackupConfiguration -DestinationPath <Lokaler-Pfad> 


    Ergebnis:


    Im obigen DestinationPath wird dann die ESXi-Server-Konfiguration in Form einer configBundle-***.tgz Datei abgelegt.

    Der Vorgang wird im ESXi Host folgendermaßen Protokolliert.





    ESXi Host Config Restore:


    1) zum ESXi Host verbinden via Connect-VIServer ....(siehe Befehl oben)

    Code
    Connect-VIServer -Server Hostname/IP-adresse -User Username -Password Password -SaveCredential


    2) Dann den Host in den Maintenance Mode versetzen

    Code
    Set-VMHost -VMHost <IP_or_FQDN> -State "Maintenance"

    3) Restore des BackupBundles vom Sourcepath...

    Code
    Set-VMHostFirmware -VMHost <IP_or_FQDN> -Restore -Force -SourcePath <Path>


    Hinweis: Der Host wird nach einspielen des Restore's anschließend DIREKT einen Reboot des ESXi Hosts veranlassen.... !!!



    Referenzen:


    VMware PowerCLI Reference: https://vdc-repo.vmware.com/vm…505fbe846b/doc/index.html

    speziell die "VMHost"Befehle: https://vdc-repo.vmware.com/vm…05fbe846b/doc/VMHost.html



    Viel Spass....:smiling_face:



    Disclaimer: Alle Anleitungen/Tutorials sind nach bestem Wissen und Gewissen verfasst, gehen immer von den definierten Software/Firmware-Versionen aus und sind auf das englische GUI ausgelegt.

    Es gibt keine Garantien auf Erfolg. Im Falle eines Misserfolges hilft aber sicherlich die Community hier immer weiter.

    Keiner der Autoren oder der Betreiber des Forums ist für die aus der Nutzung resultierenden Probleme/Herausforderungen verantwortlich.

    Jegliche hier beschriebenen Schritte erfolgen ausnahmslos in eigener Verantwortung des Durchführenden. Eltern haften für ihre Kinder.