Table des matières
ESXi
Installation
ESXi 6.5
Installation à partir de l'image ISO.
Configuration à partir de la console
Accéder au menu “Configure Management Network” puis “IPV4 Configuration” pour configurer l'adresse IP.
Si nécessaire également modifier le vlan.
Configuration via GUI
Accéder au menu “Gérer” sur la gauche à partir de l'Hôte. Puis accéder aux onglets :
Système
Dans le menu Date et heure configurer le service NTP et le démarrer avec l'hôte.
Attribution de licence
Renseigner la clef de licence : 15026-FUHDJ-68Y88-0A886-1H9JJ
Services
Activer le service TSM-SSH pour autoriser la connexion SSH à distance.
Sécurité et utilisateurs
Dans le menu “Utilisateurs” sélectionner l'utilisateur root et modifier son mot de passe si nécessaire.
Configuration via CLI
Customisation
Profile
Modifier le fichier /etc/profile.local
export PS1="\[\033[1;40m\]\[\033[1;31m\][$(echo ${VI_USERNAME//'\'/'\\'})@\h]\[\033[1;33m\]\w >\[\033[0;32m\] " alias ll='ls -lrth' alias h='history' alias vm='/vmfs/volumes/datastore1/vm.sh' go () { case $2 in *) RELATIF="/$2" ;; esac case $1 in datastore) CHEMIN="/vmfs/volumes/datastore1" ;; iso) CHEMIN="/vmfs/volumes/datastore1/iso" ;; *) CHEMIN=$1 ;; esac cd ${CHEMIN}${RELATIF} }
script
Créer le fichier /vmfs/volumes/datastore1/vm.sh et y ajouter les droits d'exécution ensuite.
#!/bin/sh syntaxe() { cat << syntaxeEOF >&2 usage: `basename $0` -list usage: `basename $0` -status vmID usage: `basename $0` -start vmID usage: `basename $0` -stop vmID syntaxeEOF } ###### # Main ###### main() { if [ $# -eq 0 ]; then syntaxe; exit 1 fi for option in $* do case $option in -list) vim-cmd vmsvc/getallvms break ;; -status) if [ $# -lt 2 ]; then syntaxe; exit 1 else vim-cmd vmsvc/power.getstate $2 fi ;; -start) if [ $# -lt 2 ]; then syntaxe; exit 1 else vim-cmd vmsvc/power.on $2 fi ;; -restart) if [ $# -lt 2 ]; then syntaxe; exit 1 else vim-cmd vmsvc/power.reboot $2 fi ;; -stop) if [ $# -lt 2 ]; then syntaxe; exit 1 else vim-cmd vmsvc/power.off $2 fi ;; esac shift done } main "$@"
Autoriser le ssh sortant
esxcli network firewall ruleset set --ruleset-id sshClient --enabled true
Echange de clef ssh
Les clefs SSH sont à positionner dans le fichier /etc/ssh/keys-root/authorized_keys
Installation patch
Transférer l'archive zip sur le serveur ESXi.
Vérification de l'archive
esxcli software sources vib get --depot /vmfs/volumes/datastore1/ESXi650-201712001.zip
Exemple de résultat sur un package :
VMW_bootbank_shim-libfc-9-2-2-0_6.5.0-0.0.4564106 Name: shim-libfc-9-2-2-0 Version: 6.5.0-0.0.4564106 Type: bootbank Vendor: VMW Acceptance Level: VMwareCertified Summary: libfc_9_2_2_0: shim driver for VMware ESX Description: Package for driver libfc_9_2_2_0 ReferenceURLs: Creation Date: 2016-10-27 Depends: vmkapi_2_3_0_0, com.vmware.libfc-9.2.3.0 Conflicts: Replaces: Provides: com.vmware.libfc-9.2.2.0 Maintenance Mode Required: True Hardware Platforms Required: Live Install Allowed: False Live Remove Allowed: False Stateless Ready: True Overlay: False Tags: module Payloads: shim-lib
Le champ “Maintenance Mode Required” permet de verifier s’il faut rentrer en mode maintenance avant d’appliquer le patch. Pour vérifier tous les packages lancer un grep :
esxcli software sources vib get --depot=/vmfs/volumes/datastore1/ESXi650-201712001.zip | grep Maintenance
Installation des nouveaux packages
Passer en mode maintenance si nécessaire :
vim-cmd hostsvc/maintenance_mode_enter
Appliquer la mise à jour :
esxcli software vib update --depot=/vmfs/volumes/datastore1/ESXi650-201712001.zip
Résultat :
Installation Result Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective. Reboot Required: true VIBs Installed: ... VIBs Removed: ... VIBs Skipped: ...
Le champ “Reboot Required” indique si un redémarrage de l’hôte est nécessaire.
Rebooter l'hôte si nécessaire :
reboot
List patchs sur ESXi 6.5.0
- 27/07/2017 update-from-esxi6.5-6.5_update01.zip
- 03/05/2018 update-from-esxi6.5-6.5_update02.zip
- 02/07/2019 update-from-esxi6.5-6.5_update03.zip
- 20/08/2019 ESXi650-201908001.zip
- 24/10/2019 ESXi650-201910001.zip
- 12/11/2019 ESXi650-201911001.zip
- 05/12/2019 ESXi650-201912001.zip
- 19/12/2019 ESXi650-201912002.zip
- 28/05/2020 ESXi650-202005001.zip
- 30/06/2020 ESXi650-202006001.zip
- 30/07/2020 ESXi650-202007001.zip
- 15/10/2020 ESXi650-202010001.zip
- 04/11/2020 ESXi650-202011001.zip
- 19/11/2020 ESXi650-202011002.zip
- 23/02/2021 ESXi650-202102001.zip
List patchs sur ESXi 6.7.0
- 28/06/2018 ESXi670-201806001.zip
- 26/07/2018 ESXi670-201807001.zip
- 14/08/2018 ESXi670-201808001.zip
- 02/10/2018 ESXi670-201810001.zip
- 16/10/2018 update-from-esxi6.7-6.7_update01
- 11/04/2019 update-from-esxi6.7-6.7_update02
- 20/08/2019 update-from-esxi6.7-6.7_update03
- 12/11/2019 ESXi670-201911001
- 05/12/2019 ESXi670-201912001
- 07/04/2020 ESXi670-202004001
- 28/04/2020 ESXi670-202004002
- 09/06/2020 ESXi670-202006001
- 20/08/2020 ESXi670-202008001
- 15/10/2020 ESXi670-202010001
- 04/11/2020 ESXi670-202011001
- 19/11/2020 ESXi670-202011002
- 23/02/2021 ESXi670-202102001
- 18/03/2021 ESXi670-202103001
Journaux
Consulter le fichier /var/log/esxupdate.log
Vérification des versions de packages
CLI
Opérations sur l'ESXi
- Afficher la version de l’hôte
esxcli system version get
- Passer en mode maintenance
vim-cmd hostsvc/maintenance_mode_enter
- Sortir du mode maintenance
vim-cmd hostsvc/maintenance_mode_exit
- Autoriser un service sur le fw
esxcli network firewall ruleset set -r snmp -e true
- Démarrer le service ssh
vim-cmd hostsvc/start_ssh
- Activer le SSH
vim-cmd hostsvc/enable_ssh
- Lister les interfaces réseaux
esxcli network nic list
- Lister règles firewall
esxcli network firewall ruleset list
- Autoriser le ssh sortant
esxcli network firewall ruleset set --ruleset-id sshClient --enabled true
- Activation autostart sur l’ESXi
vim-cmd hostsvc/autostartmanager/enable_autostart true
- Démarrage auto vm
vim-cmd hostsvc/autostartmanager/update_autostartentry <n> poweron 90 1 stop 90 no
Paramètres : VMId StartAction StartDelay StartOrder StopAction StopDelay WaitForHeartbeat
- Interrogation séquence auto
vim-cmd hostsvc/autostartmanager/get_autostartseq
Opérations sur les VM
- Lister les vm
vim-cmd vmsvc/getallvms
- Interroger 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>
- Interrogation caractéristiques vm
vim-cmd vmsvc/get.guest <vmid>
Configuration IP
- Liste des interfaces réseau physique:
esxcli network nic list
- Créer un vSwitch
esxcli network vswitch standard add -v vSwitch<x>
- Liste des PortGroup
esxcli network vswitch standard portgroup list
- Ajouter une interface physique vmnic à un vSwitch
esxcli network vswitch standard uplink add -u vmnic<y> -v vSwitch<x>
- Ajouter un PortGroup à un vSwitch
esxcli network vswitch standard portgroup add -p <nom> -v vSwitch<x>
- Définir le VLAN d’un PortGroup
esxcli network vswitch standard portgroup set -v <vlan> -p <nom>
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
- Renommer un disque virtuel
vmkfstools -E <oldname.vmdk> <newname.vmdk>
- Agrandir la taille d’un disque virtuel
vmkfstools -X 15G /vmfs/volumes/datastore1/VM1/VM1.vmdk
- Cloner un disque virtuel en thin
vmkfstools -i <source.vmdk> -d thin <destination.vmdk>
Blades VAL DE LOIRE
esxcli network vswitch standard portgroup remove -p "VM Network" -v vSwitch0 esxcli network vswitch standard portgroup add -p 10.35.130.64-26 -v vSwitch0 esxcli network vswitch standard portgroup set -v 961 -p 10.35.130.64-26 esxcli network vswitch standard add -v vSwitch1 esxcli network vswitch standard uplink add -u vmnic1 -v vSwitch1 esxcli network vswitch standard portgroup add -p 10.1.90.128-25 -v vSwitch1 esxcli network vswitch standard portgroup set -v 1024 -p 10.1.90.128-25 esxcli network vswitch standard portgroup add -p 10.1.242.64-27 -v vSwitch1 esxcli network vswitch standard portgroup set -v 1025 -p 10.1.242.64-27 esxcli network vswitch standard add -v vSwitch2 esxcli network vswitch standard uplink add -u vmnic2 -v vSwitch2 esxcli network vswitch standard portgroup add -p TFTPBOOT -v vSwitch2
Boite à outils
Copier une VM
GUI via Export/Import
- Faire un click droit sur la VM puis choisir « Exporter »
- Lors de la création de la nouvelle VM choisir « Déployer une machine virtuelle à partir d'un fichier OVF ou OVA »
CLI via mkfstools
- Créer une nouvelle VM (vm2) avec les mêmes caractéristiques que la première (vm1)
- A partir de l'ESXi supprimer les fichiers vmdk de la nouvelle vm
cd vm2 rm *.vmdk
- Copier le ou les disque(s) de la première VM
cd vm2 vmkfstools -i ../vm1/vm1.vmdk -d thin vm2.vmdk
- Démarrer la nouvelle vm.
Récupération d'une VM VirtualBox
- Exporter la VM depuis virtualbox vers un fichier vm.ova
- Installer Vware OVFTool depuis le site vmware
- Lancer la commande : C:\Program Files\VMware\Vmware OVF Tools\ovftool.exe –lax vm.ova vm.ovf
- Ouvrir le fichier ovf avec un éditeur et remplacer :
<Item> <rasd:Address>0</rasd:Address> <rasd:Caption>sataController0</rasd:Caption> <rasd:Description>SATA Controller</rasd:Description> <rasd:ElementName>sataController0</rasd:ElementName> <rasd:InstanceID>5</rasd:InstanceID> <rasd:ResourceSubType>AHCI</rasd:ResourceSubType> <rasd:ResourceType>20</rasd:ResourceType> </Item> … <vssd:VirtualSystemType>virtualbox-2.2</vssd:VirtualSystemType>
par
<Item> <rasd:Address>0</rasd:Address> <rasd:Caption>SCSIController</rasd:Caption> <rasd:Description>SCSI Controller</rasd:Description> <rasd:ElementName>SCSIController</rasd:ElementName> <rasd:InstanceID>5</rasd:InstanceID> <rasd:ResourceSubType>lsilogic</rasd:ResourceSubType> <rasd:ResourceType>6</rasd:ResourceType> </Item> … <vssd:VirtualSystemType>vmx-13</vssd:VirtualSystemType>
- Supprimer carte son et lecteur de CD-ROM
- Supprimer le fichier MF contenant les checksum de contrôle
- Procéder à l'import depuis VMWare
Démarrage automatique des VM
Il est possible de démarrer automatiquement les VM en insérant les commandes qui vont bien dans le script /etc/rc.local.d/local.sh qui est exécuté au démarrage.
Réduire la taille d'un disque vmdk
Dépannage
Perte accès à l'ESXi
Problème
Impossible d'accéder à l'ESXi, pas de réponse au ping. Les VM fonctionnent normalement.
Solution
Accéder à la console de l'ESXi via « iLO Integrated remote Console » sur l'OA. Tester le ping de la gateway. Vérifier par « View System Logs » il est possible que la gateway ne soit pas prise en compte. Pour corriger aller dans la configuration réseau pour vérifier la définition et ressortir. Eventuellement utiliser l'entrée « Reset Management Network ».
Problème démarrage Redhat/CentOS
Problème
Erreur : dracut-initqueue[779]: Warning: dracut-initqueue timeout - starting timeout scripts
Solution
Démarrer en mode rescue puis recréer un kernel adapté au matériel
cd /boot ls initramfs-*.x86_64.img dracut –f /boot/initramfs-<kernelversion>.x86_64.img <kernelversion>.x86_64 reboot
Problème démarrage Windows
Problème
Démarrage Windows en échec, le disque n’est pas vu.
Solution
Changer le le contrôleur disque, essayer LSI Logic SAS ou autre.
Taille du disque virtuel ne diminue pas
Problème
Bien que le disque virtuel soit en “Thin provision” la taille du fichier vmdk est bien plus importante que la taille réellement occupé sur le disque. En fait la taille du fichier vmdk augmente au fur et à mesure de l'occupation du disque mais en cas de libération d'espace sur la VM, le fichier vmdk ne diminue pas.
Solution
- Défragmenter le disque sur la VM
Pour une partition ext4 :
sudo e4defrag /
Pour une partition xfs :
xfs_fsr
- Remplir de zero l'espace inutilisé du disque
dd if=/dev/zero of=wipefile bs=1M; sync; rm -f wipefile
- Tenter la commande suivante depuis la VM
sudo vmware-toolbox-cmd disk shrinkonly
- Arrêter la VM et lancer la commande suivante depuis l'ESXi :
vmkfstools -K fichier.vmdk
Messages d'erreurs avec Ubuntu 20.04
Problème
Apparition de messages dans le fichier /var/log/syslog
Jul 29 10:43:04 vm-reverse-proxy02 multipathd[717]: sda: add missing path Jul 29 10:43:04 vm-reverse-proxy02 multipathd[717]: sda: failed to get udev uid: Invalid argument Jul 29 10:43:04 vm-reverse-proxy02 multipathd[717]: sda: failed to get sysfs uid: Invalid argument Jul 29 10:43:04 vm-reverse-proxy02 multipathd[717]: sda: failed to get sgio uid: No such file or directory
Solution
- Arrêter la VM
- Click droit sur la VM « Edit Settings »
- Choisir l'onglet « VM Options »
- Cliquer sur « Advanced »
- Cliquer sur le bouton « Edit Configuration… »
- Cliquer sur « Add parameter »
- Dans la colonne « Key » indiquer « disk.EnableUUID »
- Dans la colonne « Value » renseigner « TRUE »
- Cliquer sur OK et redémarrer la VM
