Virtualisation

VMware ESXi : Upgrade en ligne de commande avec esxcli

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Table des matières

vmware-logo



Introduction



Dans cet article, nous allons voir comment upgrader un ESXi en ligne de commande.
Pratique pour éviter de faire ça depuis l'écran, surtout si on n'a pas d'iDRAC (Dell) ou d'iLO (HP).

Prenez soin de lire les Releases Notes de votre future version : https://docs.vmware.com/en/VMware-vSphere/7.0/rn/vsphere-esxi-70u2a-release-notes.html

Prérequis



Dans un premier temps, éteignez les VM tournant sur l'ESXi ou déplacez-les sur un autre.

On active la console SSH (Actions -> Services -> Activer le secure shell SSH)

Ensuite, on se connecte à notre ESXi :

Code BASH :
ssh root@192.168.21.248


Attention, un reboot sera demandé pour procéder à l'upgrade.


Faire l'upgrade



On utilisera la commande esxcli.

De manière générale, dans l'option -p il faut indiquer ESXi-version-build-standard. C'est le nom que vous retrouvez dans les Releases Notes sous le chapitre Images profiles


ESXi 7.0 Update 2a ESXi 7.0 Update 2a

Code BASH :
esxcli software profile update -p ESXi-7.0U2a-17867351-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml


ESXi 7.0 Update 2 ESXi 7.0 Update 2

Code BASH :
esxcli software profile update -p ESXi-7.0.2-17630552-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
 


ESXi 7.0 Update 1d ESXi 7.0 Update 1d

Code BASH :
esxcli software profile update -p ESXi-7.0U1d-17551050-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
 


Code BASH :
ESXi 6.7 P04 ESXi 670-202011002


Code BASH :
esxcli software profile update -p ESXi-6.7.0-20201104001-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml



Si vous faites tourner ESXi sur du vieux matos, pour jouer, et que vous avez un avertissement de Hardware bientôt plus supporté, vous avez ce message :

Code TEXT :
 [HardwareError]
 Hardware precheck of profile ESXi-7.0U2a-17867351-standard failed with warnings: <CPU_SUPPORT WARNING: The CPU in this host may not be supported in future ESXi releases. Please plan accordingly.>
 
 Apply --no-hardware-warning option to ignore the warnings and proceed with the transaction.
 Please refer to the log file for more details.
 


Ajoutez simplement --no-hardware-warning à la ligne de commande


Une fois fait, vous avez le message de succès vous invitant à reboot l'ESX :

Code TEXT :
Update Result
   Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
   Reboot Required: true


Lancez le reboot :

Code BASH :
reboot


Faire l'upgrade hors ligne



Sur l'ESXi de la maison, je n'ai pas pu faire la dernière mise à niveau. J'ai eu ce message d'erreur :

Code TEXT :
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-index.xml" -p "ESXi-7.0U3-18644231-standard"        
 


J'ai donc récupéré ESXi en version ZIP sur le site de VMWare : https://customerconnect.vmware.com/downloads/info/slug/datacenter_cloud_infrastructure/vmware_vsphere/7_0
Je l'ai placé à la racine de mon datastore1, puis exécuté la commande suivante :

Code BASH :
esxcli software profile update -d /vmfs/volumes/5faaf8a9-d7f802e2-c72c-1c697a69231a/VMware-ESXi-7.0U3-18644231-depot.zip -p ESXi-7.0U3-18644231-standard

Attention, le UUID du datastore peut changer chez vous :)

Et c'est passé, un reboot et c'est joué !