Opérations sur les machines virtuelles
Avoir la liste des VMs enregistrées 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
Forcer l’arrêt brutal d’une VM (en dernier recours):
esxcli vm process kill -t force -w
Avoir l’état d’une VM:
vim-cmd vmsvc/power.getstate vm_id
Eteindre une VM:
vim-cmd vmsvc/power.off vm_id
Allumer une VM:
vim-cmd vmsvc/power.on vm_id
Redémarrer une VM:
vim-cmd vmsvc/power.reboot vm_id
Recharger la configuration d’une VM (après modification du fichier .vmx):
vim-cmd vmsvc/reload vm_id
Avoir une estimation de l’espace nécessaire pour consolider un Snapshot d’une VM:
vim-cmd vmsvc/get.spaceNeededForConsolidation
Enregistrer une VM sur l’hôte:
vim-cmd solo/registervm /vmfs/volumes/datastore/VM/VM.vmx
Dé-senregistrer une VM d’un hôte:
vim-cmd hostsvc/unregister
Avoir le résumé d’une VM:
vim-cmd vmsvc/get.summary vm_id
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 /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 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
Emulation de disque SSD sur ESXi
vmhba1:C0:T0:L0
vmhba1:C0:T1:L0 – 5 Go
vmhba1:C0:T2:L0 – 20 Go <-- simuler un disque SSD
vmhba1:C0:T3:L0 - 40 Go
esxcli storage nmp satp rule add –satp VMW_SATP_LOCAL –device mpx.vmhba1:C0:T2:L0 –option « enable_local enable_ssd » esxcli storage nmp satp rule add –satp VMW_SATP_LOCAL –device mpx.vmhba1:C0:T3:L0 –option « enable_local » esxcli storage core claiming reclaim -d mpx.vmhba1:C0:T2:L0 esxcli storage core claiming reclaim -d mpx.vmhba1:C0:T3:L0
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
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 192.168.1.100 -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 192.168.1.200 -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 -s
Afficher un histogramme de latences des performances collectées:
vscsiStats -w -p latency
Arrêter la collecte des stats d’une VM:
vscsiStats -x -s
Merci (c) Mika pour ta contribution