Marco Burmeister

  private Homepage



VMWare ESXi 6.7 updaten



Nach der erfolgreichen Installation von ESXi 6.7 muss das System auch mal gepatcht werden. An dieser Stelle soll erläutert werden, wie ESXi 6.7 auf ein neueren Patchlevel von ESXi 6.7 upgedatet werden kann.

Die Seite ist in die folgenden Bereiche eingeteilt:

Hinweis:
Die Nutzung der hier geschilderten Anleitung geschieht auf eigene Gefahr!




top Erklärung

Das Update von ESXi 6.7 wird in diesem Text anhand des Updates auf die Version vom August 2020 gezeigt werden.

top Voraussetzungen

Funktionierende ESXi 6.7 Installation.

top Ablauf

Die Installation selbst ist auch für Anfänger im Bereich ESXi durchzuführen.

  1. ESXi 6.7 starten
  2. SSH Console aktivieren
  3. via Putty anmelden an ESXi 6.7 oder Console verwenden
  4. anmelden als User
    root
  5. Prüfen der aktuellen Version
    Befehl:
    vmware -vl
    Ausgabe:
    
    VMware ESXi 6.7.0 build-15820472
    VMware ESXi 6.7.0 Update 3
    		
  6. Das eigentliche Update wird Online mittels http-Zugriff in das Internet stattfinden. Daher muss http erlaubt werden:

    (Anmerkung: \ = Zeilenumbruch)
    esxcli network firewall ruleset set -e true -r httpClient
    
    esxcli network firewall ruleset \
    set -e true -r httpClient			
    		
  7. Verfügbare Profile / Depots ermitteln:

    (Anmerkung: \ = Zeilenumbruch)
    esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep -i ESXi-6.7
    
    esxcli software sources profile \
    list -d \
    https://hostupdate.vmware.com/\
    software/VUM/\
    PRODUCTION/main/vmw-depot-index.xml\
    | grep -i ESXi-6.5
    		
    Der String hinter dem
    grep -i
    schränkt die Ausgabe ein. Alternativ kann noch ein
    | sort
    angehängt werden, um die Ausgabe zu sortieren.
    Die Einstiegsversion hat normalerweise eine ca. 7-stellige Zahl. Die Updates haben dann eine Zahl als Anhängsel an dem Namen, die u.a. ein Datum darstellt.
  8. In den Wartungsmodus wechseln oder sicherstellen, dass keine VM läuft.
    Das geht entweder via Weboberfläche oder mit dem ESXi-Shell Befehl:

    (Anmerkung: \ = Zeilenumbruch)
    vim-cmd /hostsvc/maintenance_mode_enter
    
    vim-cmd \
    /hostsvc/maintenance_mode_enter
    		
  9. Update durchführen. Ich habe die Option
     --no-hardware-warning
    ergänzt, weil ich eine nicht freigegebene Netzwerkkarte zusätzlich im Rechner habe.

    (Anmerkung: \ = Zeilenumbruch)
    Syntax:
    esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p [Name_Version]-standard --no-hardware-warning
    Beispiel:
    esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.7.0-20200804001-standard --no-hardware-warning
    Syntax:
    
    esxcli software profile update -d \
    https://hostupdate.vmware.com/\
    software/VUM/\
    PRODUCTION/main/vmw-depot-index.xml \
    -p [Name_Version] \
     --no-hardware-warning
    		
    Beispiel:
    
    esxcli software profile update -d \
    https://hostupdate.vmware.com/\
    software/VUM/\
    PRODUCTION/main/vmw-depot-index.xml \
    -p ESXi-6.7.0-20200804001-standard \
     --no-hardware-warning
    		
    Die Software wird direkt bei VMWare heruntergeladen und gleich eingespielt. Das kann einige Minuten dauern, bis ein Ergebnis auf dem Bildschirm erscheint.
  10. Bildschirmausgabe auf Fehler untersuchen. Kurz nach dem Befehl sollte der Text in der folgenden Art auftauchen. Dann war alles erfolgreich.

    (Anmerkung: \ = Zeilenumbruch)
    Update Result
       Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
       Reboot Required: true
    		
    Update Result
    Message: The update completed \
    successfully, but the system \
    needs to be rebooted for the \
    changes to be effective.
    Reboot Required: true
    		
    Sollte hingegen die folgende Meldung erscheinen, so ist die Software in Teilen zu installieren - siehe folgenden Punkt.

    (Anmerkung: \ = Zeilenumbruch)
     [OSError]
     [Errno 28] No space left on device
     Please refer to the log file for more details.
    		
     [OSError]
    [Errno 28] No space left \
    on device
    Please refer to the log \
    file for more details.
    		
    Die Recherche nach dem Fehler erfolgt im Logfile
    /var/log/esxupdate.log
  11. Wenn das Einspielen des vorherigen Schritts nicht erfolgreich war ist folgendes zu tun: (ansonsten diesen Punkt überspringen und mit dem nächsten weiter machen)
    Schritte:
    1. Umstellen des Auslagerungsbereichs auf den Datenspeicherbereich.
    2. Einspielen der VMWareTools im Vorwege
    3. Einspielen des Updates ohne die VMWare Tools (also statt Endung "standard" - die Endung "no-tools" verwenden.
    Anleitung zu den Schritten:
    1. Umstellen des Auslagerungsbereichs auf den Datenspeicherbereich:
      Hierfür im ESXi Web-Interface anmelden. Dann das Menü
      Verwalten
      ->
      System
      ->
      Auslagerung
      auswählen. Im folgenden Menü auf der rechten Seite kann man nun einen Datenspeicher auswählen - es werden dort keine Daten gelöscht!
      Nach der Auswahl ist die Einstellung sofort aktiv und es kann mit den nächsten Schritten weiter gehen.
      Dieser Schritt ist nur einmalig durchzuführen. Im Anschluss an die Patch-Aktion kann auch der alte Werte wieder eingestellt werden.
    2. VMWareTools sind nun im Vorwege von Hand einzuspielen. Der konkrete Name des VIB-Files kann dem Logfile
      /var/log/esxupdate.log
      entnommen werden, welches beim ersten Versuch des Einspielens mit Informationen gefüllt worden ist.
      Syntax:

      (Anmerkung: \ = Zeilenumbruch)
      esxcli software vib install -v https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/esx/vmw/vib20/tools-light/VMware_locker_tools-light-<Version>-<Build>.vib
      		
      
      esxcli software vib install \ 
      -v https://hostupdate.vmware.com \
      /software/VUM/PRODUCTION/main/esx \
      /vmw/vib20/tools-light/ \
      VMware_locker_tools-light-\
      	-.vib 
      		
      Beispiel:

      (Anmerkung: \ = Zeilenumbruch)
      esxcli software vib install -v https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/esx/vmw/vib20/tools-light/VMware_locker_tools-light_11.1.1.16303738-16701467.vib
      		
      
      esxcli software vib install \ 
      -v https://hostupdate.vmware.com \
      /software/VUM/PRODUCTION/main/esx \
      /vmw/vib20/tools-light/ \
      VMware_locker_tools-light_ \
      11.1.1.16303738-16701467.vib
      		
    3. Nun kann das Update ohne die VMWare-Tools nochmals eingespielt werden. Die haben wir im vorherigen Schritt ja schon upgedatet. Ich habe die Option
       --no-hardware-warning
      ergänzt, weil ich eine nicht freigegebene Netzwerkkarte zusätzlich im Rechner habe.

      (Anmerkung: \ = Zeilenumbruch)
      Syntax:
      esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p [Name_Version]-no-tools --no-hardware-warning
      Beispiel:
      esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.7.0-20200804001-no-tools --no-hardware-warning
      Syntax:
      
      esxcli software profile update -d \
      https://hostupdate.vmware.com/\
      software/VUM/\
      PRODUCTION/main/vmw-depot-index.xml \
      -p [Name_Version] \
       --no-hardware-warning
      		
      Beispiel:
      
      esxcli software profile update -d \
      https://hostupdate.vmware.com/\
      software/VUM/\
      PRODUCTION/main/vmw-depot-index.xml \
      -p ESXi-6.7.0-20200804001-no-tools \
       --no-hardware-warning
      		
      Die Software wird direkt bei VMWare heruntergeladen und gleich eingespielt. Das kann einige Minuten dauern, bis ein Ergebnis auf dem Bildschirm erscheint.
  12. Wir sollten nun auf jeden Fall eine Bildschirmausgabe haben auf der viele installierte Komponenten stehen. Kurz nach dem zuletzt ausgeführten Befehl (oben in der Ausgabe des Befehls) sollte ein Text in der folgenden Art auftauchen.

    (Anmerkung: \ = Zeilenumbruch)
    Update Result
       Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
       Reboot Required: true
    		
    Update Result
    Message: The update completed \
    successfully, but the system \
    needs to be rebooted for the \
    changes to be effective.
    Reboot Required: true
    		
    Damit wäre das Update erfolgreich eingespielt.
  13. Der http- Zugriff ist nun nicht mehr notwendig und sollte wieder verboten werden:
    esxcli network firewall ruleset set -e false -r httpClient
    esxcli network firewall ruleset set -e \
     false -r httpClient
  14. Maintenance-Mode deaktivieren.
    Das geht entweder via Weboberfläche oder mit dem ESXi-Shell Befehl:

    (Anmerkung: \ = Zeilenumbruch)
    vim-cmd /hostsvc/maintenance_mode_exit
    
    vim-cmd \
    /hostsvc/maintenance_mode_exit
    		
  15. Rechner rebooten
  16. Nach dem Reboot kann mit dem Kommandozeilen-Befehl
    vmware -lv
    die aktive Version angezeigt werden.
  17. ESXi kann verwendet werden
  18. Prüfen der aktuelle Version
    Befehl:
    vmware -vl
    Ausgabe:
    
    VMware ESXi 6.7.0 build-16713306
    VMware ESXi 6.7.0 Update 3
    		
Ich nutze beim esxcli-Befehl immer die update Option statt der Option install, die ebenfalls möglich wäre, weil dann nur die Pakete, aus dem Bundle, die bereits vorhanden waren, durch neue Versionen ersetzt und nicht enthaltene Pakete nicht gelöscht werden (siehe auch Hetzner Wiki oder VMWare Dokumentation).

top Links zum Thema

Hinweis:
Für die Richtigkeit der Daten übernehme ich keine Gewähr!
Für den Inhalt von Internet-Seiten, auf die von dieser Seite verwiesen wird, übernehme ich keine Verantwortung!