Management en ligne de commande avec ESXCLI
Avec vSphere 5, les commandes de management en ligne de commande ont quelque peu changé. En effet, la commande « esxcli » existait déjà en vSphere 4 mais la syntaxe des commandes a changé et il y a plus de commandes disponibles. Par habitude, on utilisait le plus souvent les anciennes commandes, en vSphere 5, « esxcli » est l’outil de commande principal.
Les commandes en « esxcfg-* » sont encore disponibles en vSphere 5 mais la plupart sont obsolètes et disparaîtront dans les futures versions. De même, les commandes en « vicfg-* » utilisable à distance avec le package vCLI, ne sont pas encore obsolète mais le deviendront également avec le temps. Il faut donc déjà prendre le pli de les remplacer par « esxcli ». Cependant, les commandes suivantes n’ont pas équivalent en « esxcli »:
- vicfg-authconfig
- vicfg-cfgbackup
- vicfg-hostops
- vicfg-ipsec
- vicfg-ntp
- vicfg-route
- vicfg-snmp
- vicfg-user
La commande « esxcli » est disponible dans le shell ESXi. Elle est aussi disponible dans le package vCLI (et donc dans vMA) et en PowerCLI avec la cmdlet « Get-EsxCli« .
« esxcli » s’appuie sur le service « hostd », quand il est indisponible, on remplacera la commande par « localcli » pour bypasser le service « hostd ». Cependant, il ne faut utiliser « localcli » qu’en cas de problème du service « hostd » sinon on peut avoir des problèmes de consistance de la configuration de l’hôte.
La nouvelle syntaxe d’utilisation en vSphere 5 est la suivante:
esxcli [dispatcher_options] {namespace} [{namespace}] {cmd} [cmd options]
Dans les « dispatcher_options », il est intéressant de noter qu’il est possible de formater le résultat en sorti avec l’option « –formatter », exemple:
# esxcli–formatter=csv –format-param=fields=”Name,Mac Address,Enabled” network ip interface list
Name,MACAddress,Enabled
vmk0,00:1a:64:d0:bf:00,true,
vmk1,00:50:56:71:38:bc,true,
Il existe 10 namespaces principaux pour un ensemble de 251 commandes. Voici le premier niveau de namespaces:
| Namespace | Description |
|---|---|
| esxcli | Commandes fonctionnant sur le système esxcli lui-même, permettant aux utilisateurs d’obtenir des informations supplémentaires |
| fcoe | Commandes FCoE |
| hardware | Propriétés matérielles et commandes pour la configuration matérielle |
| iscsi | Commandes iSCSI |
| network | Opérations permettant la maintenance des réseaux sur un hôte ESXi. Incluant diverses commandes pour manipuler les composants réseau virtuel (vSwitch, portgroup, dVS, etc) ainsi que l’IP local, DNS et les paramètres généraux de réseau hôte. |
| software |
Gestion de l’image et des packages ESXi
|
| storage | Commandes Stockage |
| system | Les propriétés système et les commandes de configuration des propriétés du VMKernel |
| vm | Opérations permettant à un utilisateur de contrôler les machines virtuelles |
La commande « esxcli esxcli command list » permet d’avoir la liste complète des commandes. Rajouter la commande « –help » pour avoir le détail.
Voici la liste de correspondance entre les anciennes commandes en ESX4.x et les commandes en ESXi5.0 avec « esxcli »:
| Ancienne commande en Service Console | Equivalence en ESXi 5.0 |
|---|---|
| esxcfg-advcfg | esxcli system settings advanced esxcli system settings kernel |
| esxcfg-dumppart | esxcli system coredump |
| esxcfg-info | esxcli hardware esxcli network |
| esxcfg-firewall | esxcli network firewall |
| esxcfg-swiscsi esxcfg-hwiscsi |
esxcli iscsi |
| esxcfg-module | esxcli system module |
| esxcfg-mpath | esxcli storage core path |
| esxcfg-nas | esxcli storage nfs |
| esxcfg-nics | esxcli network nic |
| esxcfg-rescan | esxcli storage core adapter rescan |
| esxcfg-scsidevs | esxcli storage coreesxcli storage filesystem |
| esxcfg-vmknic | esxcli network ip interface |
| esxcfg-volume | esxcli storage filesystem esxcli storage vmfs |
| esxcfg-vswitch | esxcli network vswitch standard esxcli network vswitch dvs |
| esxcli corestorage | esxcli storage core |
| esxcli network | esxcli network ip |
| esxcli swiscsi | esxcli iscsi |
| esxcli vms vm | esxcli vm process |
| esxupdate | esxcli software vib esxcli software sources |
| vmkfstools | esxcli filesystem vmfs |
| vmware-cmd | esxcli vm |
Ce tableau ne vous donne que le début de syntaxe pour leur équivalence (la liste complète des options ici).
J’espère pouvoir vous faire prochainement une liste des commandes essentielles en cas d’urgence…> c’est ici.
Voici une liste de documents complémentaires:
- KB1032479: Understanding and troubleshooting the esxcli tool in vSphere 5.0
- Technical note : Command-line Management in vSphere 5.0 for Service Console Users
- VMware ESXi 5.0 Reference with vCLI
- Major Enhancements in esxcli for vSphere 5 sur VirtuallyGhetto
- vSphere 5 Command Line Documentation: ESXCLI Command Hierarchies



Quelques exemples de commandes ESXCLI utiles ici: http://www.ivobeerens.nl/2012/11/21/useful-esxcli-commands-for-configuring-and-troubleshooting-esxi-environments/