Basiques
Avoir la liste des VMs enregistrer sur l’hôte (on obtient ainsi le VMid):
vim-cmd vmsvc/getallvms
Avoir la liste des VMs allumées sur l’hôte (on obtient ainsi le WorldID):
esxcli vm process list
Forcer l’arrêt propre d’une VM:
esxcli vm process kill -t soft -w <WorldID>
Forcer l’arrêt brutal d’une VM (en dernier recours):
esxcli vm process kill -t force -w <WorldID>
Avoir l’état d’une VM:
vim-cmd vmsvc/power.getstate <VMid>
Eteindre une VM:
vim-cmd vmsvc/power.off <VMid>
Allumer une VM:
vim-cmd vmsvc/power.on <VMid>
Redémarrer une VM:
vim-cmd vmsvc/power.reboot <VMid>
Recharger la configuration d’une VM (après modification du fichier .vmx):
vim-cmd vmsvc/reload <VMid>
Supprimer tous les Snapshots d’une VM:
vim-cmd vmsvc/snapshot.removeall <VMid>
Avoir une estimation de l’espace nécessaire pour consolider un Snapshot d’une VM:
vim-cmd vmsvc/get.spaceNeededForConsolidation <VMid>
Enregistrer une VM sur l’hôte:
vim-cmd solo/registervm /vmfs/volumes/datastore/VM2/VM2.vmx
Désenregistrer une VM d’un hôte:
vim-cmd hostsvc/unregister <VMid>
Avoir le résumé d’une VM:
vim-cmd vmsvc/get.summary <VMid>
Opérations sur les disques virtuels
Créer un disque virtuel:
vmkfstools -c 10G /vmfs/volumes/datastore1/VM3/VM3_1.vmdk
Ajouter un disque virtuel existant à une VM (en SCSI0:1):
vim-cmd vmsvc/device.addexisting <VMid> /vmfs/volumes/datastore1/VM3/VM3_1.vmdk 0 1
Ajouter un disque à une VM (l’équivalent des 2 précédentes commandes):
vim-cmd vmsvc/device.diskadd <VMid> 10G 0 1 datastore1
Convertir un disque virtuel de Thin en Thick:
vmkfstools -j /vmfs/volumes/datastore1/VM1/VM1.vmdk
Convertir un disque virtuel de Thick en Thin:
vmkfstools -K /vmfs/volumes/datastore1/VM1/VM1.vmdk
Agrandir la taille d’un disque virtuel:
vmkfstools -X 15G /vmfs/volumes/datastore1/VM1/VM1.vmdk
Opérations sur l’hôte ESXi
Réinitialiser la configuration en mode usine (comme à la fin de l’installation):
/sbin/firmwareConfig.sh –reset
Attribuer une licence à l’hôte:
vim-cmd vimsvc/license –set XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Mettre l’hôte en Mode Maintenance:
vim-cmd hostsvc/maintenance_mode_enter
Sortir l’hôte du Mode Maintenance:
vim-cmd hostsvc/maintenance_mode_exit
Synchroniser et sauvegarder la config de l’hôte (fichier généré dans /scratch/downloads):
vim-cmd hostsvc/firmware/sync_config
vim-cmd hostsvc/firmware/backup_config
Restaurer la config d’un hôte (à partir du fichier /tmp/configBundle.tgz):
vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
Avoir la liste des patchs installés sur un hôte:
esxcli software vib list
Installer un patch manuellement (être en mode maintenance):
esxcli software vib update –depot=/vmfs/volumes/datastore1/ESXi500-201109001.zip
Autoriser un service sur le firewall de l’hôte:
esxcli network firewall ruleset set -r snmp -e true
Désactiver le firewall de l’hôte:
esxcli network firewall set -e false
Afficher la liste des codes erreur VMkernel:
vmkerrcode -l
Afficher la version de l’hôte:
esxcli system version get
Avoir la configuration des paramètres avancés:
esxcli system settings advanced list
Lancer l’interface DCUI (peut-être utile en SSH), faire un Ctrl + C pour quitter :
dcui
Opérations sur les Services
Vérifier l’état du service « hostd »:
/etc/init.d/hostd status
Redémarrer le service « hostd »:
/etc/init.d/hostd restart
Redémarrer l’agent vCenter (« vpxa »):
/etc/init.d/vpxa restart
Redémarrer tous les services:
services.sh restart
Activer le SSH temporairement (jusqu’au prochain redémarrage):
/etc/init.d/SSH start
Activer et démarrer le SSH de façon permanente:
vim-cmd hostsvc/enable_ssh
vim-cmd hostsvc/start_ssh
Avoir la configuration du démarrage automatique de tous les services
chkconfig -l
Opérations sur la configuration réseau
Avoir la liste des interfaces réseau physique:
esxcli network nic list
Créer un vSwitch:
esxcli network vswitch standard add -v vSwitch1
Ajouter une interface physique à un vSwitch:
esxcli network vswitch standard uplink add -u vmnic1 -v vSwitch1
Ajouter un PortGroup à un vSwitch:
esxcli network vswitch standard portgroup add -p LAN -v vSwitch1
Ajouter une interface physique à un PortGroup (définir les interfaces actives):
esxcli network vswitch standard portgroup policy failover set -a vmnic0,vmnic1 -p LAN
Définir le VLAN d’un PortGroup:
esxcli network vswitch standard portgroup set -v 40 -p LAN
Associer une interface VMkernel à un PortGroup:
esxcli network ip interface add -i vmk1 -p NFS
Définir l’IP d’une interface VMkernel:
esxcli network ip interface ipv4 set -i vmk1 -I 10.40.1.1 -N 255.255.255.0 -t static
Activer le CDP sur un vSwitch:
esxcli network vswitch standard set –cdp-status both -v vSwitch1
Modifier le MTU d’une interface VMkernel:
esxcli network ip interface set -m 9000 -i vmk1
Modifier le MTU d’un vSwitch:
esxcli network vswitch set -m 9000 -v vSwitch1
Opérations sur le Stockage
Afficher la liste des LUNs:
esxcli storage nmp device list
Afficher la liste des chemins:
esxcli storage nmp path list
Afficher la correspondance entre les LUNs et les VMFS:
esxcli storage filesystem list
Faire un Rescan du SAN sur toutes les HBAs:
esxcli storage core adapter rescan –all
Ou aussi, faire un Rescan du SAN:
vim-cmd hostsvc/storage/vmfs_rescan
Rafraichir les LUNs:
vim-cmd hostsvc/storage/vmfs_refresh
Afficher la liste des volumes non-montés (car détectés comme Snapshot):
esxcli storage vmfs snapshot list
Forcer le montage d’un VMFS:
esxcli storage vmfs snapshot mount VMFS1
Resigner un VMFS:
esxcli storage vmfs snapshot resignature VMFS2
Afficher la compatibilité VAAI des volumes:
esxcli storage core device vaai status get
Activer initiateur iSCSI software:
esxcli iscsi software set -e true
Faire une redécouverte iSCSI
esxcli iscsi adapter discovery rediscover -A vmhba33
Afficher la liste des volumes NFS montés:
esxcli storage nfs list
Ajouter un volume NFS:
esxcli storage nfs add -H 10.40.1.100 -s /vol/share -v Vol_NFS
Avoir la liste des VMs allumés avec leur WorldGroupID et leur disques:
vscsiStats -l
Démarrer la collecte des stats pour une VM (s’arrête automatiquement au bout de 30 min):
vscsiStats -w <WorldGroupID> -s
Afficher un histogramme de latences des performances collectées:
vscsiStats -w <WorldGroupID> -p latency
Arrêter la collecte des stats d’une VM:
vscsiStats -x <WorldGroupID> -s