Toutes les commandes esxcli pour VMware vSphere / ESXi

L’administration et la maintenance d’un environnement de virtualisation VMware se fait principalement par interface graphique. Avec un navigateur web sur les versions récentes (5.5, 6.0, 6.5, 7.0) ou via un client lourd (vSphere Client) sur les versions plus anciennes, la quasi totalité des fonctions se gèrent à distance depuis un poste client ou une simple VM hébergée. Mais lorsque l’hôte ne fonctionne plus correctement, qu’il soit seul ou membre d’un cluster, le dépannage ne peut pas forcément se faire à distance s’il s’agit par exemple d’un problème de réseau. L’interface directe du serveur de virtualisation ne sera pas d’une grande aide puisque l’écran de console VMware vSphere / ESXi / ESX est très limité, permettant surtout de gérer les cartes réseau et son adressage IP pour le management.

Pas affiché de manière claire, il est cependant possible d’accéder à un terminal pour exécuter des commandes propres à l’univers de VMware. Ce tutoriel liste les commandes majeures d’un environnement VMware vSphere / ESXi / ESX, qu’il soit sous licence payante ou en version gratuite (Hypervisor). Ces commandes sont nommées « esxcli » par VMware. Il ne s’agit donc pas ici des commandes vmkfstools.

 

Activer esxcli sur un hôte VMware

Méthode physique, quand rien ne va plus

1. Brancher un écran sur le serveur physique.

2. Se connecter (F2) à la console VMware (Direct Console User Interface – DCUI).

3. Aller sur « Troubleshooting Mode Options » :

4. Activer « Enable ESXi Shell » :

5. Revenir en arrière au menu principal (Echap).

6. Accéder à l’interface de console en tapant sur ALT + F1.

7. Revenir à la console graphique avec ALT + F2.

 

Méthode normale, depuis le VMware vSphere Client

1. Se connecter à l’hôte unique ou au membre du cluster VMware depuis le vSphere Client.

2. Sélectionner l’hôte sur lequel il faut activer esxcli.

3. Aller à l’onglet « Configuration » et « Profil de sécurité » (Security Profile en anglais).

4. Dans la section « Services » cliquer sur « Propriétés » (en haut à droite de l’écran).

5. Dans la liste qui s’ouvre, sélectionner « Shell ESXi » et cliquer sur le bouton « Options » :

6. Cocher « Démarrer et arrêter avec l’hôte » puis cliquer sur le bouton « Démarrer » avant de valider deux fois par OK. Cela active le démarrage automatique avec l’hôte, comme un service.

7. L’interface locale est maintenant activée pour les commandes esxcli.

 

Commandes VMware ESXCLi

Ces commandes sont une base à enrichir de paramètres et de variables.

esxcli device : liste

esxclielxnet : gérer les drivers Emulex elxnet

esxcli esxcli : liste toutes les commandes esxcli

esxcli fcoe : commandes pour FCOE (Fiber Channel Over Ethernet)

esxcli graphics : commandes graphiques pour gérer l’hôte

esxcli hardware : afficher des informations sur le matériel du serveur

esxcli iscsi : afficher et gérer le matériel iSCSI

esxcli network : gérer le virtual network, les vswitch et VMkernel network interfaces

esxcli nvme : gérer les disques NVMe

esxcli rdma : superviser les périphériques RDMA (Remote Direct Memory Access)

esxcli sched : gérer le swap système

esxcli software : afficher et gérer les profils et les VIB

esxcli storage : gérer le stockage (SAN ou – DAS Direct Attached Storage)

esxcli system : commandes pour gérer le système

esxcli vm : afficher et pouvoir arrêter de force une machine virtuelle bloquée

esxcli vsan : gérer le Virtual SAN

Ces commandes seules ne suffisent pas, il faut les utiliser avec des arguments.

 

Commandes ESXCLi fréquemment utilisées

Exemples de commandes souvent utilisées pour gérer un hôte VMware qui fonctionne correctement ou qui a planté.

esxcli system version get : afficher la version exacte avec numéro de build et nombre de patchs de VMware ESXi

esxcli system hostname get : afficher le hostname et le nom FQDN du serveur

esxcli system stats installtime get : afficher la date d’installation initiale de l’ESXi

esxcli system account list : afficher la liste des utilisateurs de l’hôte

esxcli system account add -d="Nouvel utilisateur" -i="newuser" -p="pass-W0rd" -c="pass-W0rd"

créer un nouveau compte utilisateur ESXi

esxcli system maintenanceMode set –enable true : passer en mode maintenance (deux « – » avant le enable)

esxcli system shutdown reboot -d 10 -r « raison du reboot » : redémarrer l’hôte, à exécuter après la mise en mode maintenance (délai en secondes)

esxcli network firewall set –enable true|false : activer ou désactiver le firewall ESXi

esxcli network ip interface ipv4 get : afficher la configuration réseau IPv4

esxcli software vib list : afficher la liste des VIB installés (par exemple utilisés pour les updates vSphere)

esxcli vm process list : lister les machines virtuelles démarrées sur l’hôte

esxcli vm process kill -w 1234 -t soft : gérer et tuer des VM qui ne répondent plus par l’interface graphique vSphere Client ou Web Client

esxcli storage vmfs extent list : lister tous les volumes VMFS

esxcli storage filesystem list : afficher les volumes VMFS, NFS, etc

Quitter la version mobile