Tags: ESXi, Patch-Management, OS Deployment, Kommandozeile
Zwar bietet vSphere gleich mehrere Mechanismen für ein automatisiertes Upgrade von ESXi, aber beim kostenlosen vSphere Hypervisor beschränken sich diese auf wenige manuelle Verfahren. Entscheidet man sich dabei für die Kommandozeile, dann übernimmt das Dienstprogramm esxcli die gewünschte Aufgabe.
Als bevorzugtes Tool für das zentrale Upgrade von ESXi-Hosts positioniert VMware den vSphere Update Manager (VUM). Besitzt man eine Lizenz von vSphere, dann verursacht er keine Extrakosten und seine Inbetriebnahme hat sich in vSphere 6.5 deutlich vereinfacht.
Kommandozeile, Host-Client oder Setup
In kleinen Umgebungen, die ohne vCenter auskommen, ist das Upgrade über Kommandozeilen-Tools nach wie vor die gängigste Variante, auch wenn der neue Host Client ebenfalls dazu in der Lage ist. Allerdings erfordert dieser ähnlich viel Handarbeit und bietet somit bloß den Vorteil, dass man nicht an die Konsole bzw. keine SSH-Verbindung aufbauen muss.
Das Gleiche gilt erst recht für die dritte Methode, wo man einen Host von den Installationsmedien (DVD oder USB-Stick) bootet und anschließend das Setup durchläuft.
Remote-Upgrade bei ESXi Free eingeschränkt
Je nachdem welche ESXi-Version Sie einsetzen, gibt es dazu verschiedene CLI-Werkzeuge, die sich lokal oder remote nutzen lassen. Wer den freien ESXi-Hypervisor verwendet, muss allerdings auf jegliche Remote-Werkzeuge verzichten, da VMware bei diesem die verfügbaren APIs künstlich beschneidet.
Während sich also ein lizenzierter ESXi auch über das Perl-basierte vCLI oder das PowerCLI-Cmdlet InstallVMHostPatch remote aktualisieren lässt, bleibt bei ESXi Free nur der Aufruf von esxcli in der ESXi-Shell. Dies erfordert entweder physischen Zugang zum Host, wo man sie auf der DCUI via Alt+F1 erreichen kann. Alternativ baut man eine SSH-Verbindung zum ESXi-Server auf.
Als Basis für ESXi-Upgrades dienen vSphere Installation Bundles (VIBs). Wie man solche Installationspakete anpasst und einspielt, habe ich bereits im Beitrag Was sind VIBs und wie werden sie installiert? erklärt.
Upgrades über esxcli installieren
Denken Sie daran, eingeschaltete VMs vor dem Upgrade herunterzufahren oder zu migrieren und den Host in den Maintenance Mode zu versetzen.
Auf der ESXi-Shell des betreffenden Hosts findet man mit diesem Befehl schnell heraus, welche ESXi-Version aktuell läuft:
vmware -lv
Wir verzichten auf das Einrichten eines Offline-Depots und beziehen die Patches direkt von VMwares Online-Depot, wozu Sie den entsprechenden Zugriff ggf. zunächst in der ESXi-Firewall mittels
esxcli network firewall ruleset set -e true -r httpClient
zulassen müssen. Um herauszufinden, welche Profile in VMwares Online-Depot verfügbar sind, verwenden Sie
esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | sort -r
Die Sortierung nach Datum sorgt dafür, dass das neuste Profil oben steht, hier ESXi-6.5.0-20170304001-standard. Der Parameter -d referenziert dabei ein Depot. In der Abbildung ist der Acceptance Level übrigens PartnerSupported, was nicht der Voreinstellung entspricht.
Greift Ihr ESXi-Host über einen Proxy-Server auf das Internet zu, dann geben Sie diesen über den Parameter -proxy SERVER:PORT an. Mit dem gewünschten Profilnamen bewaffnet, können Sie das gewünschte Upgrade wie folgt herunterladen und nach diesem Muster anwenden:
esxcli software profile update -p ESXi-6.5.0-20170304001-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
Anschließend ist ein Reboot fällig. Den Nachweis, ob das Upgrade geklappt hat, liefert wieder
vmware –lv
Sind mehrere Hosts zu aktualisieren, dann ist es zu überlegen, ob Sie nicht ein Offline-Bundle auf einem Shared Storage bereitstellen sollten, um den mehrfachen Download des VIB vom Internet zu vermeiden.
Täglich Know-how für IT-Pros mit unserem Newsletter
Thomas Drilling arbeitet seit mehr als 20 Jahren selbständig als Redakteur und Autor für viele ehemalige und aktuelle IT-Magazine sowie Blogs. Thomas ist zudem Buchautor und IT-Consultant.
Seit 5 Jahren ist Thomas neben seiner journalistischen Tätigkeit hauptberuflicher, selbständiger IT-Trainer für VMware und Microsoft.
Seine Themenschwerpunkte sind Virtualisierung und Cloud Computing, speziell VMware, Amazon Web Services, Google Cloud und Microsoft Azure. Thomas ist zertifizierter VMware Professional, Advanced Professional und wurde von VMware in den Jahren 2016, 2017, 2018, 2019 und 2020 mit dem Blogger-Status vExpert ausgezeichnet.
Thomas ist außerdem zertifizierter AWS Solutions Architect, Sysops Engineer und Devops Engineer sowie Microsoft Certified Azure Administrator.
Thomas führt aktuell jeden zweiten Montag einen 4-tägigen Grundlagenkurs in Cloud Computing mit AWS via Zoom-Meeting durch. Weitere Informationen und Anmeldung über sein AWS-Blog.
Ähnliche Beiträge
- ESXi-Kommandozeile: Die 25 wichtigsten esxcli-Befehle
- Gartner Quadrant zu Unified Endpoint Management: Microsoft und VMware führend, nur 6 Hersteller im Vergleich
- VMware bringt App mit Benachrichtigungen zu Patches, Schwachstellen und Troubleshooting
- ESXi remote via HTTP installieren
- ESXi 7 auf SD-Karte oder USB-Stick installieren
Weitere Links
6 Kommentare
Glaube es geht mit der Methode nicht mehr:
Got no data from process: LANG=en_US.UTF-8 /usr/lib/vmware/esxcli-software sources.profile.list -d "https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-ind..."
I am also getting same error.How to resolve it?
Moin,
ich bekomme leider eine Fehlermeldung aufgrund meiner Treiber für meine Netzwerkkarte.
[root@localhost:~] esxcli software profile update -p=ESXi-6.7.0-8169922-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-inde
x.xml
[DependencyError]
VIB VFrontDe_bootbank_net51-r8169_6.011.00-2vft.510.0.0.799733 requires vmkapi_2_1_0_0, but the requirement cannot be satisfied within the ImageProfile.
VIB VFrontDe_bootbank_net51-sky2_1.20-2vft.510.0.0.799733 requires vmkapi_2_1_0_0, but the requirement cannot be satisfied within the ImageProfile.
Please refer to the log file for more details.
Eine Idee, wie ich das lösen kann? Oder muss ich noch warten?
Moin, die URL stimmt schon. Allerdings hat sich in den Befehl bei "-p=" ein überflüssiges Gleichheitszeichen eingeschlichen. Ferner muss das gewünschte Image-Profil natürlich an den aktuellen Zeitpunkt angepasst werden. Ferner ist es natürlich ein Standard-Profil von VMware. Wer spezifische Treiber (VIBS) benötigt,muss natürlich mit Imagebuilder ein eigenes individualisiertes Image/Image-Profil verwenden.
Hallo!
Gute Anleitung, wenn man das nicht so oft macht. Läuft leider auf einen Fehler:
Could not download from depot at https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-ind..., skipping (('https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-ind...', '', 'file not found'))
Gibt es eine neue URL zum Download des XML?
I am trying to upgrade my ESXi 6.7 host with below command.
esxcli software profile update -p ESXi-7.0.0-15843807-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-ind...
But getting below error,
Got no data from process: LANG=en_US.UTF-8 /usr/lib/vmware/esxcli-software profile.update -d "https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-ind..." -p "ESXi-7.0.0-15843807-standard"
Any idea how I can solve that?