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