Sauvegarder la configuration d’un hôte ESXi : 4 méthodes différentes
La virtualisation offre plusieurs avantages pour les opérations de sauvegarde et de récupération, qui constituent la base de la protection des données, de la continuité opérationnelle et de la disponibilité. Plus important encore, la virtualisation permet d’effectuer des sauvegardes sans agent et basées sur des images, au niveau de l’hôte. Ces types de sauvegardes peuvent capturer l’intégralité de la VM, y compris sa configuration et ses données. Cependant, il est également important de protéger les hôtes, car le bon fonctionnement des hôtes ESXi est essentiel au bon fonctionnement des VMs. Il est recommandé de pour sauvergarder également la configuration ESXi, car une sauvegarde utilisable de l’hôte peut vous aider à restaurer la configuration de l’hôte en quelques minutes sans avoir à configurer un serveur ESXi à partir de zéro. Poursuivez votre lecture pour découvrir les différentes méthodes pour sauvegarder l’hôte ESXi.
Méthode 1 : utilisation de la ligne de commande ESXi pour sauvergarder les hôtes ESXi
L’utilisation de la ligne de commande ESXi est la méthode la plus abordable pour sauvergarder la configuration d’un hôte ESXi. Vous n’avez pas besoin d’installer de logiciel supplémentaire pour utiliser la ligne de commande ESXi. Il vous suffit d’activer le shell ESXi et l’accès SSH à distance à un hôte ESXi. Une fois connecté à votre hôte ESXi via SSH, vous pouvez exécuter les commandes. La configuration ESXi est enregistrée automatiquement chaque heure dans le fichier /bootblank/state.tgz. Pour cette raison, vous devez vous assurer que la configuration ESXi actuelle est enregistrée dans les fichiers de configuration ESXi dès maintenant afin de garantir que toutes les modifications apportées à la configuration ESXi depuis la dernière sauvegarde automatique sont enregistrées. Pour ce faire :
- Vérifiez et synchronisez la configuration ESXi avec le stockage persistant :
vim-cmd hostsvc/firmware/sync_config - Pour sauvergarder la configuration ESXi une fois la synchronisation terminée :
vim-cmd hostsvc/firmware/backup_config
Vous recevrez alors un lien pour télécharger le configBundle.Archive tgz from l’hôte ESXi.
http://*/downloads/UUID/configBundle-ESXiNameOrIPAddress.tgz
- Remplacez l’astérisque (*) par l’adresse IP de votre hôte ESXi. Le fichier d’archive qui contient la sauvegarde à sauvegarder de la configuration ESXi est enregistré dans le répertoire /scratch/downloads pendant une courte période (quelques minutes).

Vous pouvez trouver l’adresse IP de votre hôte ESXi dans l’interface de la console directe ESXi ou dans la ligne de commande à l’aide de la commande :
esxcli network ip interface ipv4 getL’adresse IP de l’hôte ESXi utilisé dans l’exemple actuel est 192.168.101.208.
- Téléchargez l’archive ESXi à sauvegarder dès que possible et conservez-la dans un endroit sûr.
Comment automatiser la sauvegarde de la configuration ESXi dans la ligne de commande ESXi
L’avantage d’une interface en ligne de commande réside dans sa capacité à automatiser les tâches, et la sauvegarde des configurations ESXi ne fait pas exception. Passons en revue les étapes à suivre pour y parvenir :
- Créez un répertoire pour stocker les fichiers de sauvegardes sur votre magasin de données ESXi :
mkdir /vmfs/volumes/datastore1/ESXi_backup - Créer un script pour sauvergarder la configuration ESXi :
vi /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh - Ajoutez les lignes suivantes au script :
vim-cmd hostsvc/firmware/sync_configvim-cmd hostsvc/firmware/backup_configfind /scratch/downloads/ -name *.tgz -exec cp {} /vmfs/volumes/datastore1/ESXi_backup/ESXi_config_backup_$(date +'%Y%m%d_%H%M%S').tgz ;
- Enregistrez le fichier et quittez vi:
:wqREMARQUE : pour plus de commodité, vous pouvez également inclure le nom d’hôte ESXi ou l’adresse IP dans le nom du fichier à sauvegarder. Cela vous aidera à éviter toute confusion avec plusieurs hôtes ESXi.
- Rendez le script exécutable :
chmod +x /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh - Accédez au répertoire où se trouve le script :
cd /vmfs/volumes/datastore1/ESXi_backup/ - Exécutez le script :
./esxi_backup.sh - Überprüfen, dass ein fichier à sauvegarder erstellt wurde:
ls -al
- Assurez-vous que le script de sauvegarde de la configuration ESXi s’exécute selon un programme (automatiquement). Modifier la configuration du planificateur à cette fin :
vi /var/spool/cron/crontabs/root - Ajoutez la chaîne suivante pour effectuer la sauvegarde de la configuration ESXi chaque jour à 2 h 10 du matin :
10 02 * * * /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh
- Enregistrez les modifications dans le fichier. Pour enregistrer les modifications dans le fichier en lecture seule, entrez :
:wq!Vous pouvez également modifier les autorisations d’accès au fichier avant de le modifier :
chmod +w /var/spool/cron/crontabs/root
Une fois configuré, le fichier ESXi sera sauvergarder automatiquement chaque nuit à 2 h 10 dans le fichier suivant : ESXi_config_bakup_date_time.tgz
Comment procéder à la récupération de la configuration ESXi dans la ligne de commande ESXi
Vous devez disposer d’ESXi de la même version et du même numéro de build que l’hôte ESXi sauvergarder installé sur la machine sur laquelle vous souhaitez restaurer la configuration ESXi. Cette règle s’applique à toutes les méthodes de récupération de la configuration ESXi abordées dans cet article. Si vous souhaitez restaurer la configuration ESXi sur un hôte ESXi installé à partir de zéro (nouvellement installé), vous devez définir l’adresse IP de l’interface réseau utilisée pour le réseau de gestion ESXi et activer l’accès SSH. L’UUID doit être identique sur le serveur ESXi pour sauvergarder et sur le serveur ESXi sur lequel la configuration sera restaurée. Les étapes de récupération de la configuration ESXi sont décrites dans la section suivante.
- Une fois que vous avez préparé votre hôte ESXi fraîchement installé pour restaurer la configuration ESXi from une sauvegarde, connectez-vous à l’hôte ESXi via SSH et mettez l’hôte en cours de maintenance (les VMs sont arrêtées dans ce mode).
esxcli system maintenanceMode set --activé yesou
vim-cmd hostsvc/maintenance_mode_enter - Copiez l’archive contenant la sauvegarde de la configuration ESXi dans un répertoire sur l’hôte ESXi par l’intermédiaire d’un client SCP, par exemple WinSCP. Copiez l’archive configBundle-xxxx.tgz depuis l’ordinateur local vers le répertoire /tmp/ du serveur ESXi de destination.

- Renommez le fichier configBundle-xxxx.tgz en configBundle.tgz avant de saisir la commande permettant de restaurer la configuration ESXi. Sinon, vous obtiendrez le message d’erreur suivant : «Le fichier /tmp/configBundle.tgz est introuvable ».
Vous pouvez renommer le fichier dans le shell ESXi auquel vous vous êtes connecté via SSH :
mv /tmp/configBundle-esxi6-7b.localdomain.tgz /tmp/configBundle.tgz - Restaurer la configuration ESXi :
vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgzAprès avoir exécuté cette commande, un hôte ESXi sera redémarré automatiquement.

- Après avoir redémarré le serveur ESXi, quittez le mode maintenance. Vous pouvez ensuite utiliser l’hôte comme d’habitude.
esxcli system maintenanceMode set --activé noou
vim-cmd hostsvc/maintenance_mode_exit
Comment modifier l’UUID pour restaurer la configuration ESXi
Vous pouvez utiliser l’une des deux méthodes suivantes pour vérifier l’UUID du serveur ESXi :
- Dans l’interface de ligne de commande ESXi :
esxcfg-info -u - Dans le fichier Manifest.txt situé dans l’archive à sauvegarder configBundle.tgz que vous avez créée à l’aide des commandes expliquées ci-dessus.

Vous ne pouvez pas modifier l’UUID du serveur ESXi, car cet identifiant est généré en fonction du matériel. Cependant, vous pouvez procéder à la récupération de la configuration ESXi de l’hôte ESXi A sur l’hôte ESXi B après avoir modifié l’UUID dans le fichier Manifest.txt stocké dans l’archive de sauvegarde de configuration ESXi configBundle.tgz. Voyons maintenant comment modifier l’UUID pour appliquer la configuration sauvergarderée à un autre serveur physique. Le serveur A est le serveur dont la configuration a été pour sauvergarder, et le serveur B est le serveur auquel la configuration sera appliquée.
Étape 1
Vérifiez l’UUID sur l’hôte ESXi auquel vous souhaitez appliquer la configuration sauvergarder (serveur B). Cela peut être fait à l’aide d’au moins deux méthodes, mais la deuxième méthode vous permet également de vérifier la version ESXi :
- Exécutez la commande
esxcfg-info -u. - Pour sauvergarder la configuration du serveur ESXi B :
vim-cmd hostsvc/firmware/sync_configvim-cmd hostsvc/firmware/backup_config - Copiez l’archive de copie de sauvegarde dans le répertoire temporaire et accédez à ce répertoire :
cp /scratch/downloads/_hash_value_/configBundle-localhost.localdomain.tgz /tmpcd /tmp/ - Extraire les fichiers from l’archive :
tar zxvf configBundle.tgz - Ouvrez le fichier Manifest.txt avec vi et vérifiez la valeur UUID (vous verrez une ligne séparée avec l’UUID). Notez l’UUID :
vi Manifest.txtDans notre cas, l’UUID est 1E9E4D56-B724-DFBE-D19D-4C2D827E0188.
- Vous pouvez supprimer les fichiers temporaires dans le répertoire /tmp/:
rm configBundle-localhost.localdomain.tgz Manifest.txt state.tgz
Étape 2
- Copiez l’archive de configuration configBundle.tgz à sauvegarder du serveur ESXi A vers le serveur B, par exemple dans le répertoire/tmp/, puis accédez à ce répertoire.
- Extrayez les fichiers from l’archive configBundle.tgz:
tar zxvf configBundle.tgz - Ouvrez le fichier Manifest.txt avec vi et remplacez la valeur UUID du serveur A par celle du serveur B :
vi Manifest.txtDans notre cas, nous remplaçons 9EA94D56-7E39-96A8-AB45-DF31EF0971EC par 1E9E4D56-B724-DFBE-D19D-4C2D827E0188.
Enregistrez le fichier et quittez l’éditeur de texte :
:wq
- Renommez votre fichier source configBundle.tgz en configBundle1.tgz, par exemple (si le nom de votre fichier de sauvegarde de configuration ESXi diffère de configBundle.tgz, vous pouvez ignorer cette étape) :
mv configBundle.tgz configBundle1.tgz - Tar Manifest.txt, state.tgz et jumpstrt.gz vers une nouvelle archive configBundle.tgz:
tar zcvf configBundle.tgz Manifest.txt state.tgz jumpstrt.gz - Mettez l’hôte ESXi en mode maintenance et restaurez la configuration :
esxcli system maintenanceMode set --activé yesvim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
Méthode 2 : Comment pour sauvergarder un hôte ESXi avec l’interface CLI vSphere
Une autre interface de ligne de commande fournie par VMware pour gérer les hôtes VMware ESXi est vSphere CLI (à ne pas confondre avec VMware PowerCLI). Vous devez installer vSphere CLI sur une machine fonctionnant sous Linux ou Windows pour gérer les hôtes ESXi à distance. Perl est nécessaire pour installer vSphere CLI. L’avantage d’utiliser vSphere CLI réside dans sa commodité et la puissance de bash sous Linux. Cette méthode est particulièrement pratique pour ESXi 6.x. Si vous utilisez ESXi 8, optez pour les autres méthodes expliquées dans cet article.
Installation et configuration de vCLI
- Téléchargez la version requise de vSphere CLI pour votre système d’exploitation from le site Web de VMware. Ubuntu Linux est utilisé dans cet exemple.
- Accédez au répertoire où se trouve le fichier téléchargé et extrayez les fichiers from l’archive :
tar -zxvf VMware-vSphere-CLI-6.5.0-4566394.x86_64.tar.gz - Installez les paquets requis :
apt-get install -y perl-doc libmodule-build-perl libssl-dev libxml-libxml-perl libsoap-lite-perl libuuid-perl build-essentialLa recommandation officielle de VMware est d’installer cet ensemble de paquets :
apt-get install ia32-libs build-essential gcc uuid uuid-dev perl libssl-dev perl-doc liburi-perl libxml-libxml-perl libcrypt-ssleay-perl - Accédez au répertoire où se trouvent les fichiers extraits et exécutez le programme d’installation :
./vmware-install.pl - Lisez et acceptez le contrat de licence. Si le programme d’installation vous demande d’installer certains modules requis, tapez y et installez les modules.

- Dans notre cas, certains modules doivent être installés manuellement. Ils peuvent être installés par l’intermédiaire du shell interactif de Perl.

Entrez dans le shell interactif de Perl :
perl -MCPAN -e shell - Exécutez la commande pour installer le module Perl requis :
installer Devel::StackTraceInstallez les autres modules de la même manière.

REMARQUE: Dans notre cas, un module n’a pas pu être installé dans le shell Perl interactif, mais nous pouvons installer ce module à l’aide de la commande dans la console Ubuntu :
apt-get install libcrypt-ssleay-perl - Après avoir installé les modules Perl, relancez le programme d’installation VMware vSphere CLI.
- L’installation s’est terminée avec succès, et vous pouvez voir l’écran suivant dans ce cas :

- Essayons maintenant d’utiliser l’interface CLI vSphere et saisissons la commande suivante dans la console Linux pour afficher la liste des appliances du serveur ESXi :
esxcli --server 192.168.101.208 liste des appliances de stockage principauxOù 192.168.101.208 est l’adresse IP du serveur ESXi.

- L’empreinte SHA-1 du serveur n’est pas fiable et la connexion à l’hôte ESXi a échoué. Cela signifie que vous devez définir l’empreinte digitale pour des raisons de sécurité. Essayons une autre commande :
esxcli --server 192.168.101.208 --thumbprint B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA system maintenanceMode getLe nom d’utilisateur et le mot de passe seront demandés dans la console en mode interactif.

Évitez d’utiliser des commandes où le nom d’utilisateur et le mot de passe sont saisis en texte clair comme ceci :
esxcli --server 192.168.101.208 --username root --mot de passe TestPass_555 --thumbprint B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA system maintenanceMode getREMARQUE : ceci est pour des raisons de sécurité. Les commandes exécutées sont enregistrées dans Linux jusqu’à ce que vous exécutiez la commande
history -cpour effacer l’historique. Si vous souhaitez éviter d’utiliser le mode interactif et de saisir manuellement un identifiant et un mot de passe, vous pouvez enregistrer la session ESXi dans un fichier et utiliser ce fichier lors de l’exécution des commandes. La sauvegarde des sessions présente une sécurité supérieure à la saisie d’un mot de passe en texte clair dans la commande. La sauvegarde des sessions est expliquée ci-dessous.
Enregistrement d’une empreinte digitale pour la connexion aux hôtes ESXi
Il n’est pas pratique de saisir une empreinte ESXi à chaque fois pour exécuter une commande. Heureusement, il est possible d’enregistrer l’empreinte digitale et d’exécuter d’autres commandes avec vSphere CLI sans définir d’empreinte digitale.
- Accédez au répertoire :
cd /usr/lib/vmware-vcli/apps/general/ - Exécutez la commande comme suit :
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s serveur -t empreinte digitaleDans notre exemple particulier, la commande est :
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s 192.168.101.208 -t B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA
- Vous pouvez désormais exécuter des commandes dans l’interface CLI vSphere sans avoir à saisir une empreinte digitale à chaque fois :
esxcli --server 192.168.101.208 system maintenanceMode get
Cependant, vous devez toujours saisir un nom d’utilisateur et un mot de passe. Vous pouvez configurer vSphere CLI pour exécuter des commandes sans avoir à saisir un mot de passe à chaque fois, comme indiqué dans les sections ci-dessous.
Utilisation d’un fichier de session pour se connecter aux hôtes ESXi
L’utilisation d’un fichier de session enregistré est l’une des méthodes permettant d’éviter de saisir un nom d’utilisateur et un mot de passe lors de l’exécution d’une commande sur un hôte ESXi distant par l’interface CLI vSphere.
- Créez un répertoire pour stocker les fichiers de configuration ESXi à sauvegarder, par exemple /backup/.
mkdir /à sauvegarder - Allez dans ce répertoire :
cd /usr/lib/vmware-vcli/apps/session - Enregistrez votre session hôte ESXi autorisée dans le fichier par l’intermédiaire d’un script Perl avec la commande :
perl save_session.pl --savesessionfile /backup/192-168-101-208session --server 192.168.101.208 --username root --password TestPass_555Où :
––savesessionfile /backup/192-168-101-208session est le nom du fichier de session créé
––Le serveur 192.168.101.208 est le nom de l’hôte ESXi dont la session est enregistrée (cet hôte ESXi est utilisé dans plusieurs exemples).
––Le nom d’utilisateur root est le nom de l’utilisateur connecté à l’hôte ESXi.
––Le mot de passe TestPass_555 est le mot de passe de l’utilisateur connecté à l’hôte ESXi.
Vous pouvez désormais exécuter des commandes sans saisir un mot de passe, mais vous devez saisir la clé –sessionfile (option) et définir le chemin d’accès au fichier de session. Par exemple :esxcli --sessionfile /backup/192-168-101-208session system maintenanceMode get
Utilisation d’un fichier de configuration pour se connecter aux hôtes ESXi
L’idée derrière cette méthode est d’enregistrer les identifiants de connexion dans le fichier de configuration sous forme de texte brut et de se référer à ce fichier lors de l’exécution des commandes ESXi dans l’interface CLI vSphere.
- Créez un fichier de configuration :
vim /backup/vcli-config - Entrez les identifiants de connexion dans les champs suivants :
VI_USERNAME=root
VI_PASSWORD=TestPass_555
- Enregistrez le fichier.
- Exécutez cette commande sur le serveur ESXi distant par l’interface CLI vSphere :
esxcli --server 192.168.101.208 --config vcli-config system maintenanceMode get
REMARQUE : étant donné que les identifiants de connexion sont enregistrés sous forme de texte brut, cette méthode n’est pas sécurisée.
Utilisation d’un magasin d’identifiants de connexion pour se connecter aux hôtes ESXi
Un magasin d’identifiants de connexion est le fichier xml situé dans le répertoire utilisateur, dans le sous-répertoire vmware ~/.vmware/credstore/vicredentials.xml. L’avantage d’utiliser le magasin d’identifiants de connexion pour exécuter des commandes sur des hôtes ESXi distants est que le mot de passe n’est pas enregistré en texte clair. En conséquence, cette méthode offre une sécurité accrue.
- Pour ajouter des identifiants de connexion au magasin d’identifiants de connexion, exécutez la commande :
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add --server 192.168.101.208 --username root - Répertoriez les identifiants de connexion enregistrés dans le magasin d’identifiants de connexion pour vous assurer que les identifiants de connexion nécessaires sont présentes :
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl list - Exécutez la commande sur l’hôte ESXi distant sans entrer un mot de passe par le magasin d’identifiants de connexion :
# esxcli --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml system maintenanceMode getSi vous utilisez un utilisateur non root, le fichier d’identifiants de connexion est enregistré dans /home/nom_utilisateur/.vmware/credstore/vicredentials.xml.

Dans la capture d’écran ci-dessous, vous pouvez voir comment les identifiants de connexion sont enregistrés dans le fichier de stockage des identifiants de connexion.

Utilisation de l’interface CLI vSphere pour sauvergarder la configuration de l’hôte ESXi
Maintenant que vous avez configuré vSphere CLI sur la machine Ubuntu Linux, vous pouvez exécuter les commandes et pour sauvergarder la configuration ESXi :
- Accédez au répertoire /usr/bin/:
cd /usr/bin - Pour créer une sauvegarde de la configuration ESXi sans saisir le nom d’utilisateur et le mot de passe, utilisez l’une des commandes ci-dessous.
- Pour le nom d’utilisateur et le mot de passe enregistrés dans le magasin d’identifiants de connexion, utilisez la commande :
vicfg-cfgbackup --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml -s /backup/192-168-101-208-esxi-cfg.tgz - Ou après avoir enregistré la session dans le fichier de session, utilisez la commande :
vicfg-cfgbackup --sessionfile /backup/192-168-101-208session -s /backup/192-168-101-208-esxi-cfg.tgz
REMARQUE : les commandes vicfg- sont obsolètes. Si vicfg ne fonctionne pas dans votre cas, utilisez les commandes ESXCLI équivalentes dans l’interface de ligne de commande lorsque vous travaillez avec des hôtes ESXi des dernières versions. Consultez les commandes pour connaître les autres méthodes de sauvegardes de la configuration ESXi.
L’inconvénient de l’option –sessionfile est le délai d’expiration après 30 minutes inactif suivant l’exécution de la dernière commande dans l’interface CLI vSphere. Après cela, vous devez vous authentifier et créer à nouveau un fichier de session.
- Si vous souhaitez créer une sauvegarde de la configuration ESXi tout en saisissant un mot de passe en mode interactif, vous pouvez exécuter la commande suivante :
vicfg-cfgbackup --server 192.168.101.208 -s /backup/192-168-101-208-esxi-cfg.tgz
- Pour le nom d’utilisateur et le mot de passe enregistrés dans le magasin d’identifiants de connexion, utilisez la commande :
Comment automatiser la sauvegarde à sauvegarder de la configuration ESXi
Si votre environnement évolue de manière dynamique et que la configuration des hôtes ESXi change souvent, la sauvegarde manuelle des hôtes ESXi peut s’avérer peu pratique. Dans ce cas, vous pouvez automatiser la sauvegarde de votre configuration ESXi par ajout d’une commande de sauvegarde ou d’un script de sauvegarde qui contient plusieurs commandes au planificateur. Crontab est un outil pour planifier sous Linux.
- Modifiez la configuration du planificateur sous Linux afin d’exécuter automatiquement et périodiquement la commande ESXi à sauvegarder.
crontab -eREMARQUE: Si vous modifiez la configuration du crontab pour la première fois, vous devez sélectionner l’éditeur de texte par défaut qui doit être utilisé pour modifier la configuration du crontab. Dans notre exemple, nous utilisons /usr/bin/vim.basic à cette fin.
Le format de la configuration crontab est le suivant :
minutes heures jour_du_mois mois jour_de_la_semaine commande
- Sauvegardons la configuration de l’hôte ESXi chaque soir à 3 h 25 par ajout de la ligne suivante à la configuration crontab :
25 03 * * * /usr/bin/vicfg-cfgbackup–server192.168.101.208–config/backup/vcli-config -s /backup/192-168-101-208-esxi-cfg-cron.tgz
- Écrivez la configuration du planificateur crontab et quittez l’éditeur de texte vim (utilisé dans cet exemple) :
:wq
- Attendons après 3 h 25 pour vérifier le répertoire dans lequel les fichiers de configuration à sauvegarder ESXi doivent être enregistrés :
ls -alComme vous pouvez le voir sur la capture d’écran ci-dessous, le fichier à sauvegarder de la configuration de l’hôte ESXi a été créé automatiquement à 03h25.

La sauvegarde de la configuration ESXi à sauvegarder a été créée automatiquement, ce qui est formidable, mais il y a un inconvénient. À chaque fois que crontab exécute une commande planifiée pour créer la sauvegarde de la configuration ESXi, le fichier tgz précédent est remplacé par le nouveau fichier tgz. Cela peut entraîner des problèmes si la sauvegarde avec la configuration ESXi correcte créée le jour précédent est écrasée par un fichier créé le jour suivant contenant la configuration ESXi incorrecte. Pour éviter ce problème, vous devez pour sauvergarder la configuration ESXi dans différents fichiers. Créons un script simple pour enregistrer la configuration ESXi à chaque fois dans un fichier distinct avec un nom unique contenant la date et l’heure de création du fichier de sauvegarde de la configuration ESXi dans le nom du fichier. La création d’un script vous permet d’ajouter des commandes pour sauvergarder plusieurs hôtes ESXi par l’exécution d’un seul script.
- Créez le fichier esxi_backup.sh dans le répertoire /backup/ à sauvegarder :
vim /backup/esxi_backup.sh - Ajoutez les lignes suivantes au fichier :
#!/bin/bash
ESXI101_208_BACKUP_NAME= »192-168-101-208-$(date +’%Y%m%d_%H%M%S’)esxi-cfg.tgz »
vicfg-cfgbackup–server192.168.101.208–config/backup/vcli-config -s /backup/$ESXI101_208_BACKUP_NAME
- Enregistrez les modifications dans le fichier et quittez l’éditeur de texte vim :
:wq - Rendez le fichier exécutable :
chmod +x /backup/esxi_à sauvegarder.sh - Modifier la configuration du planificateur :
crontab -e - Ajoutez la ligne comme ceci :
50 06 * * * /backup/esxi_à-sauvegarder.sh
Cette ligne de configuration nous permet de configurer crontab pour qu’il exécute le script de sauvegarde de la configuration ESXi à 6 h 50.
Désactivez la tâche planifiée précédente que vous avez ajoutée par ajout de caractère # au début de la ligne.
Enregistrez la configuration.

- Warten sur le délai défini, puis vérifiez si l’archive à sauvegarder de la configuration ESXi a été créée.

Il s’agit d’un script simple qui illustre le concept d’automatisation. Vous pouvez créer des scripts complexes pour sauvergarder plusieurs hôtes ESXi.REMARQUE : Après chaque redémarrage d’ESXi ou 30 minutes d’inactif, l’authentification pour la session ESXi expire. Gardez cette fonctionnalité à l’esprit lorsque vous créez un script pour sauvegarder ESXi de manière automatisée.
Comment procéder à la récupération de la configuration ESXi dans l’interface CLI vSphere
Les conditions à remplir pour restaurer la configuration ESXi par vSphere CLI sont similaires à celles requises pour les autres méthodes. Pour restaurer la configuration ESXi, assurez-vous que l’accès à distance via SSH est activé et que l’adresse IP du serveur ESXi est connue (il est recommandé d’utiliser la même adresse IP que celle de l’hôte ESXi sauvergarder).Pour restaurer la configuration ESXi, exécutez la commande suivante :vicfg-cfgbackup --server=ESXi_host_IP_address --username=root -l backup_file Dansnotre exemple particulier, la commande est :vicfg-cfgbackup --server=192.168.101.208 --username=root -l /backup/192-168-101-208-esxi-cfg.tgz Sil’UUID de l’hôte ESXi cible sur lequel vous souhaitez restaurer la configuration est différent de l’UUID du serveur ESXi à sauvergarder (dont l’UUID est défini dans le fichier Manifest.txt à l’intérieur de l’archive de sauvergarde tgz ), vous pouvez utiliser la clé -f (force) pour remplacer l’UUID.
Vous pouvez vérifier l’UUID de l’hôte ESXi en cours d’exécution à l’aide de la commande suivante, comme vous vous en souvenez :esxcfg-info-u REMARQUE : à partir d’ESXi 7.0 U2, la substitution forcée de l’UUID ne fonctionne pas si un module TPM (Trusted Platform Module) est utilisé sur un hôte ESXi.
Méthode 3 : utilisation de PowerCLI pour sauvergarder les hôtes ESXi
Les utilisateurs qui apprécient Windows PowerShell peuvent utiliser PowerCLI pour la gestion de vSphere et pour sauvergarder les configurations ESXi. PowerCLI est un ensemble de cmdlets PowerShell. Certaines commandes PowerCLI de base sont expliquées dans cet article de blog. Pour utiliser PowerCLI afin de sauvergarder un hôte ESXi, vous devez d’abord installer PowerCLI sur votre système d’exploitation :
- Exécutez PowerCLI en tant qu’administrateur dans Windows.
- Connectez-vous à votre serveur ESXi :
Connect-VIServer ESXi_IP_address -user nom_utilisateur -password votre_mot_de_passeDans notre cas, nous utilisons les commandes suivantes :
Connect-VIServer 192.168.101.208 -utilisateur root -mot de passe TestPass_555Get-VMHostFirmware -vmhost 192.168.101.208 -BackupConfiguration -DestinationPath "C:ESXi à sauvegarder"
- Si vos hôtes ESXi sont gérés par vCenter Server, vous pouvez d’abord vous connecter à vCenter, puis pour sauvergarder la configuration ESXi sur vos hôtes dans PowerCLI sans avoir à vous authentifier chaque fois avant de pour sauvergarder la configuration de chaque hôte :
Connect-VIServer 10.10.10.16Entrez votre identifiant administratif et votre mot de passe pour accéder à vCenter Server. Une fenêtre contextuelle apparaît à cet effet.

- Si vos hôtes ESXi sont gérés par vCenter Server, vous pouvez d’abord vous connecter à vCenter, puis pour sauvergarder la configuration ESXi sur vos hôtes dans PowerCLI sans avoir à vous authentifier chaque fois avant de pour sauvergarder la configuration de chaque hôte :
- Pour sauvergarder la configuration ESXi de chaque hôte :
Get-VMHostFirmware -vmhost 10.10.10.61 -BackupConfiguration -DestinationPath "C:ESXi à sauvegarder"Get-VMHostFirmware -vmhost 10.10.10.46 -BackupConfiguration -DestinationPath "C:ESXi à sauvegarder"
Comment restaurer la configuration ESXi dans PowerCLI
- Exécutez VMware PowerCLI en tant qu’administrateur.
- Connectez-vous à l’hôte ESXi sur lequel vous souhaitez procéder à la récupération de la configuration. Dans notre exemple, nous procédons à la récupération de la configuration sur l’hôte ESXi avec l’adresse IP 192.168.101.208.
- Mettre l’hôte ESXi en mode maintenance :
Set-VMHost -VMHost 192.168.101.208 -State MAINTENANCE - Assurez-vous que les VMs résidant sur cet hôte ESXi sont mises hors tension ou migrées vers un autre hôte ESXi avant la récupération de la configuration ESXi. Sachez qu’après avoir exécuté la commande de restauration de la configuration, l’hôte ESXi redémarrera automatiquement.
- Restaurez la configuration à l’aide de la commande
Set-VMHostFirmware restore:Set-VMHostFirmware -vmhost 192.168.101.208 -Restore -SourcePath "C:backup ESXi hostconfigBundle-192.168.101.208.tgz » -HostUser root -HostPassword TestPass_555
La version, le numéro de build et l’UUID de l’hôte ESXi sur lequel la configuration subit une récupération doivent correspondre à la version, au numéro de build et à l’UUID de l’hôte ESXi dont vous utilisez la sauvegarde à sauvegarder pour restaurer la configuration. Utilisez la clé -force dans la commande pour ignorer la vérification de l’UUID.
Méthode 4 : Sauvegarde et restauration manuelles de la configuration ESXi
Vous devez également être prêt à faire face à une situation dans laquelle vous ne pouvez pas vous connecter à votre hôte ESXi ou dans laquelle un hôte ESXi ne peut pas amorcer et vous ne pouvez pas utiliser l’interface de ligne de commande pour exécuter la commande permettant de sauvergarder ou de restaurer la configuration ESXi. Cela peut être dû à une défaillance matérielle ou à des problèmes logiciels. Dans ce cas, il est préférable de savoir comment sauvergarder et procéder à la récupération manuellement d’une configuration ESXi. Comme vous vous en souvenez certainement, dans la configuration crontab par défaut d’un hôte ESXi, le script /sbin/auto-backup.sh est exécuté tous les heures et à chaque redémarrage ou arrêt d’un hôte ESXi. Ce script est destiné à pour sauvergarder la configuration ESXi stockée dans la mémoire dans le fichier /bootbank/state.tgz.REMARQUE : Le fichier /bootbank/state.tgz ne doit pas être soumis à un chiffrement pour utiliser cette méthode. La configuration ESXi est stockée dans la mémoire RAM de l’ordinateur lorsqu’un serveur ESXi est en cours d’exécution (le disque RAM approprié est monté sur le répertoire /etc/ ). Lorsque ESXi est démarré, les fichiers système sont extraits de l’archive /bootbank/state.tgz vers le répertoire /etc/ from l’amorçage. Vous pouvez copier manuellement le fichier /bootbank/state.tgz si votre hôte ESXi est en cours d’exécution en utilisant un client SCP tel que WinSCP (l’accès SSH à distance doit être activé). Si ton hôte ESXi n’est pas amorçable (par exemple, à cause d’un problème matériel), tu peux aussi amorcer le DVD Live et copier le fichier state.tgz à la main.
Workflow de récupération manuelle
- Préparez l’archive à sauvegarder que vous avez créée précédemment à l’aide du shell ESXi, de l’interface CLI vSphere ou de PowerCLI. Dans notre cas, le nom du fichier est configBundle-192-168-101-208.tgz. Vous pouvez copier le fichier sur une clé USB, par exemple, puis insérer cette clé dans un port USB du serveur ESXi sur lequel vous devez procéder à la récupération de la configuration système.
- Amorçage from le CD/DVD live sur la machine où ESXi est installé. Vous pouvez utiliser le disque d’installation Ubuntu comme un CD/DVD live.
- Ouvrez la console (terminal) sous Linux.
- Listez les partitions :
ls -al /dev/sd*fdisk -l | grep /dev/sdaDans ce cas, nous avons besoin de la partition /dev/sda5/ marquée comme données de base Microsoft.
Les partitions de disque ESXi ont été mentionnées dans l’article de blog à propos de l’amorçage d’ESXi from une clé USB et de la récupération du mot de passe ESXi.

Dans ce cas, nous nous intéressons à la partition /dev/sda5.
- Créez le répertoire dans lequel la partition /dev/sda5 sera montée :
mkdir /mnt/sda5 - Montez la partition du disque dans ce répertoire :
monter /dev/sda5 /mnt/sda5 - Dans le répertoire /mnt/sda5, vous trouverez le fichier state.tgz, qui contient la configuration ESXi. Ce répertoire (dans lequel state.tgz est stocké) est appelé /bootblank/ lorsqu’un hôte ESXi est amorcé.
- Copiez l’archive de la configuration ESXi à sauvegarder depuis la clé USB vers le répertoire /tmp/d’Ubuntu chargé à partir du DVD Live. Dans notre exemple, nous copions :
cp /media/Ubuntu/Ubuntu 18.0/backup_ESXi_host/configBundle-192-168-101-208.tgz /tmp/configBundle.tgz - Extraire les fichiers from l’archive à sauvegarder :
tar zxvf /tmp/configBundle.tgz - Vous pouvez voir que le fichier state.tgz est extrait de l’archive :
ls -al /tmp/ - Renommez le fichier state.tgz d’origine dont l’emplacement se trouve sur la partition /dev/sda5 montée sur /mnt/sda5/.
mv /mnt/sda5/état.tgz /mnt/sda5/état-ancien.tgz - Copiez le fichier state.tgz que vous avez extrait de l’archive de sauvegarde de configuration ESXi (configBundle.tgz) dans le répertoire /tmp/:
cp /tmp/état.tgz /mnt/sda5/ - Démonter les partitions montées :
umount /dev/sda5/ - Redémarrez le serveur. Éjectez le DVD Ubuntu Live et amorcez from le disque sur lequel ESXi est installé.
init 6
Votre configuration ESXi devrait maintenant être restaurée.
Conclusion
L’utilisation de l’interface de ligne de commande ESXi est satisfaisante, car elle ne nécessite pas l’installation de logiciels supplémentaires. Les avantages de vSphere CLI sont la possibilité d’exécuter des commandes à distance par des machines Linux et la possibilité d’automatiser la sauvegarde de la configuration ESXi à sauvegarder. PowerCLI, en revanche, peut être apprécié par les utilisateurs Windows. Si un hôte ESXi n’est pas en bon état et que vous ne pouvez pas amorcer l’hôte, vous pouvez pour sauvergarder et restaurer la configuration manuellement. Notez que les informations relatives au bootblank et aux VMs ne sont pas stockées dans le fichier de sauvegarde de la configuration ESXi. Après avoir restauré la configuration ESXi, vous devrez peut-être enregistrer les machines virtuelles dans votre inventaire. Il est recommandé de sauvergarder vos machines virtuelles vSphere en plus de sauvergarder les hôtes ESXi. NAKIVO Backup & Replication est une solution de sauvegarde universelle qui peut sauvergarder vos machines virtuelles VMware, Hyper-V, vos instances Amazon EC2 ainsi que vos serveurs physiques Linux et Windows.