Backup della configurazione dell’host ESXi: 4 metodi diversi
La virtualizzazione offre numerosi vantaggi per le operazioni di backup e ripristino, che costituiscono la spina dorsale della protezione dei dati, della continuità operativa e della disponibilità. Soprattutto, la virtualizzazione rende possibili backup a livello di host senza agenti e basati su immagini. Questi tipi di backup possono acquisire l’intera VM, compresa la configurazione e i dati della VM.Tuttavia, è importante proteggere anche gli host, poiché host ESXi integri sono fondamentali per il corretto funzionamento delle VM. Si consiglia di eseguire anche il backup della configurazione ESXi, poiché un backup dell’host utilizzabile può aiutare a ripristinare la configurazione dell’host in pochi minuti senza dover configurare un server ESXi da zero. Continua a leggere per scoprire i diversi metodi di backup dell’host ESXi.
Metodo 1: utilizzo della riga di comando ESXi per eseguire il backup degli host ESXi
L’utilizzo della riga di comando ESXi è il metodo più conveniente per eseguire il backup della configurazione di un host ESXi. Non è necessario installare alcun software aggiuntivo per utilizzare la riga di comando ESXi. È sufficiente Abilitare la shell ESXi e l’accesso SSH remoto a un host ESXiUna volta connesso al tuo host ESXi tramite SSH, puoi eseguire i comandi.La configurazione ESXi viene salvata automaticamente ogni ora nel file /bootblank/stato.tgz file. Per questo motivo, è necessario assicurarsi che la configurazione ESXi corrente sia scritta nei file di configurazione ESXi in questo momento, per garantire che tutte le modifiche apportate alla configurazione ESXi dall’ultimo salvataggio automatico siano state salvate. Per farlo:
- Controllare e sincronizzare la configurazione ESXi con lo storage persistente:
vim-cmd hostsvc/firmware/sync_config - Eseguire il backup della configurazione ESXi una volta completata la sincronizzazione:
vim-cmd hostsvc/firmware/backup_config
Di conseguenza, riceverai un link per scaricare il configBundle.tgz archivio dall’host ESXi.
http://*/downloads/UUID/configBundle-ESXiNameOrIPAddress.tgz
- Sostituisci l’asterisco (*) con l’indirizzo IP dell’host ESXi. Il file di archivio contenente il backup della configurazione ESXi viene salvato nella cartella /scratch/scarica directory per un breve periodo di tempo (alcuni minuti).

È possibile trovare l’indirizzo IP dell’host ESXi nell’interfaccia della console diretta ESXi o nella riga di comando con il comando:
esxcli network ip interface ipv4 getL’indirizzo IP dell’host ESXi utilizzato nell’esempio corrente è 192.168.101.208
- Scarica l’archivio di backup ESXi il prima possibile e conservarlo in un luogo sicuro.
Come automatizzare il backup della configurazione ESXi nella riga di comando ESXi
Il vantaggio di un’interfaccia a riga di comando è la possibilità di automatizzare le operazioni, e il backup delle configurazioni ESXi non fa eccezione. Vediamo insieme i passaggi necessari per eseguire questa operazione:
- Crea una directory per archiviare i file di backup sul tuo archivio dati ESXi:
mkdir /vmfs/volumes/datastore1/ESXi_backup - Creare uno script per eseguire il backup della configurazione ESXi:
vi /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh - Aggiungi le seguenti righe allo 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 \;
- Salva il file e chiudi vi:
:wqNOTA: Per maggiore comodità, è anche possibile includere il nome host ESXi o l’indirizzo IP nel nome del file di backup. Ciò consentirà di evitare confusione in caso di host ESXi multipli.
- Rendi lo script eseguibile:
chmod +x /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh - Vai alla directory di ubicazione dello script:
cd /vmfs/volumes/datastore1/ESXi_backup/ - Esegui lo script:
./esxi_backup.sh - Verificare che sia stato creato un file di backup:
ls -al
- Assicurarsi che lo script di backup della configurazione ESXi sia eseguito in base alla pianificazione (automaticamente). A tal fine, modificare la configurazione dello scheduler:
vi /var/spool/cron/crontabs/root - Aggiungi la seguente stringa per eseguire il backup della configurazione ESXi ogni giorno alle 02:10:
10 02 * * * /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh
- Salva le modifiche nel file. Per salvare le modifiche nel file di sola lettura, inserisci:
:wq!In alternativa, è possibile modificare i permessi del file prima di modificarlo:
chmod +w /var/spool/cron/crontabs/root
Una volta impostata, la configurazione ESXi verrà sottoposta automaticamente a backup ogni notte alle 02:10 nel file con questo nome: ESXi_config_bakup_date_time.tgz
Come ripristinare la configurazione ESXi nella riga di comando ESXi
È necessario disporre di ESXi della stessa versione e dello stesso numero di build dell’host ESXi di cui è stato eseguito il backup installato sul computer in cui si desidera ripristinare la configurazione ESXi. Questa regola è valida per tutti i metodi di ripristino della configurazione ESXi considerati in questo post del blog.Se si intende ripristinare la configurazione ESXi su un Host ESXi installato da zero (appena installato), è necessario impostare l’indirizzo IP per l’interfaccia di rete utilizzata per la rete di gestione ESXi e abilitare l’accesso SSH.L’UUID deve essere lo stesso sia sul server ESXi di cui è stato eseguito il backup sia sul server ESXi su cui verrà ripristinata la configurazione. I passaggi da seguire se i valori UUID sono diversi sono descritti nella sezione successiva.Per ripristinare la configurazione ESXi:
- Una volta preparato l’host ESXi appena installato per ripristinare la configurazione ESXi da un backup, connettiti all’host ESXi tramite SSH e imposta l’host in modalità di manutenzione (in questa modalità le VM vengono arrestate).
esxcli system maintenanceMode set --enable yesoppure
vim-cmd hostsvc/maintenance_mode_enter - Copiare l’archivio contenente il backup della configurazione ESXi in una directory sull’host ESXi utilizzando un client SCP, ad esempio WinSCP. Copiamo il file configBundle-xxxx.tgz archiviare dal computer locale al /tmp/ directory sul server ESXi di destinazione.

- Rinomina il configBundle-xxxx.tgz file a configBundle.tgz prima di inserire il comando per ripristinare la configurazione ESXi. In caso contrario, verrà visualizzato il messaggio di errore: “Il file /tmp/configBundle.tgz non è stato trovato.“.
È possibile rinominare il file nella shell ESXi a cui ci si è connessi tramite SSH:
mv /tmp/configBundle-esxi6-7b.localdomain.tgz /tmp/configBundle.tgz - Ripristina la configurazione ESXi:
vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgzDopo aver eseguito questo comando, l’host ESXi verrà riavviato automaticamente.

- Dopo aver riavviato il server ESXi, uscire dalla modalità di manutenzione, dopodiché sarà possibile utilizzare l’host come di consueto.
esxcli system maintenanceMode set --enable nooppure
vim-cmd hostsvc/maintenance_mode_exit
Come modificare l’UUID per ripristinare la configurazione ESXi
È possibile utilizzare uno dei due metodi seguenti per verificare l’UUID del server ESXi:
- Nell’interfaccia della riga di comando ESXi:
esxcfg-info -u - Nel Manifesto.txt file all’interno del configBundle.tgz archivio di backup creato con i comandi spiegati sopra.

Non è possibile modificare l’UUID del server ESXi poiché l’identificatore viene generato in base all’hardware. Tuttavia, è possibile ripristinare la configurazione ESXi dell’host ESXi A sull’host ESXi B dopo aver modificato l’UUID nel file Manifesto.txt file memorizzato nel configBundle.tgz Archivio di backup della configurazione ESXi.Vediamo ora come modificare l’UUID per applicare la configurazione di backup a un altro server fisico. Server A è il server di cui è stato eseguito il backup della configurazione e Server B è il server a cui verrà applicata la configurazione.
Fase 1
Controllare l’UUID sull’host ESXi a cui si desidera applicare la configurazione di backup (server B). Ciò può essere fatto con almeno due metodi, ma il secondo metodo consente anche di controllare la versione ESXi:
- Esegui il
esxcfg-info -u - Eseguire il backup della configurazione del server ESXi B:
vim-cmd hostsvc/firmware/sync_configvim-cmd hostsvc/firmware/backup_config - Copiare l’archivio di backup nella directory temporanea e passare a tale directory:
cp /scratch/downloads/_hash_value_/configBundle-localhost.localdomain.tgz /tmpcd /tmp/ - Estrai i file dall’archivio:
tar zxvf configBundle.tgz - Apri il Manifesto.txt apri il file con vi e controlla il valore UUID (vedrai una riga separata con l’UUID). Annota l’UUID:
vi Manifest.txtNel nostro caso, l’UUID è 1E9E4D56-B724-DFBE-D19D-4C2D827E0188
- È possibile eliminare i file temporanei nella cartella /tmp/ directory:
rm configBundle-localhost.localdomain.tgz Manifest.txt state.tgz
Fase 2
- Copia il configBundle.tgz Backup della configurazione dell’archivio dal server ESXi A al server B, ad esempio, nella directory /tmp/ e vai a quella directory.
- Estrai i file dal configBundle.tgz archivio:
tar zxvf configBundle.tgz - Apri il Manifesto.txt file con vi e aggiornare il valore UUID del server A con l’UUID del server B:
vi Manifest.txtNel nostro caso, modifichiamo 9EA94D56-7E39-96A8-AB45-DF31EF0971EC in 1E9E4D56-B724-DFBE-D19D-4C2D827E0188.
Salva il file e chiudi l’editor di testo:
:wq
- Rinomina la tua origine configBundle.tgz file a configBundle1.tgz, ad esempio (se il nome del file di backup della configurazione ESXi è diverso da configBundle.tgz, puoi saltare questo passaggio):
mv configBundle.tgz configBundle1.tgz - Catrame Manifesto.txt, stato.tgz e jumpstrt.gz file in un nuovo configBundle.tgz archivio:
tar zcvf configBundle.tgz Manifest.txt state.tgz jumpstrt.gz - Metti l’host ESXi in modalità manutenzione e ripristina la configurazione:
esxcli system maintenanceMode set --enable yesvim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
Metodo 2: come eseguire il backup dell’host ESXi con vSphere CLI
Un’altra interfaccia a riga di comando fornita da VMware per gestire gli host VMware ESXi è vSphere CLI (da non confondere con VMware PowerCLI). È necessario installare vSphere CLI su un computer con sistema operativo Linux o Windows per gestire gli host VMware ESXi in remoto. Perl È obbligatorio installare vSphere CLI.Il vantaggio dell’utilizzo di vSphere CLI è la praticità e la potenza di bash in Linux. Questo metodo è particolarmente comodo per ESXi 6.x. Se utilizzi ESXi 8, opta per altri metodi spiegati in questo articolo.
Installazione e configurazione di vCLI
- Scarica la versione necessaria di VMware vSphere CLI per il tuo sistema operativo dal sito Web di VMware. In questo esempio viene utilizzato Ubuntu Linux.
- Vai alla directory in cui si trova il file scaricato e estrai i file dall’archivio:
tar -zxvf VMware-vSphere-CLI-6.5.0-4566394.x86_64.tar.gz - Installa i pacchetti obbligatori:
apt-get install -y perl-doc libmodule-build-perl libssl-dev libxml-libxml-perl libsoap-lite-perl libuuid-perl build-essentialLa raccomandazione ufficiale di VMware è di installare questo set di pacchetti:
apt-get install ia32-libs build-essential gcc uuid uuid-dev perl libssl-dev perl-doc liburi-perl libxml-libxml-perl libcrypt-ssleay-perl - Vai alla directory in cui si trova l’ubicazione dei file estratti ed esegui il programma di installazione:
./vmware-install.pl - Leggi e accetta il contratto di licenza. Se il programma di installazione ti chiede di installare alcuni moduli obbligatori, digita y e installare i moduli.

- Alcuni moduli devono essere installati manualmente nel nostro caso d’uso. Possono essere installati utilizzando la shell interattiva di Perl.

Entra nella shell interattiva di Perl:
perl -MCPAN -e shell - Esegui il comando per installare il modulo Perl obbligatorio:
install Devel::StackTraceInstallare gli altri moduli in modo analogo.

NOTA: Nel nostro caso, un modulo non poteva essere installato nella shell Perl interattiva, ma possiamo installarlo con il comando nella console Ubuntu:
apt-get install libcrypt-ssleay-perl - Dopo aver installato i moduli Perl, eseguire nuovamente il programma di installazione della CLI VMware vSphere.
- L’installazione è stata completata con successo e in questo caso verrà visualizzata la seguente schermata:

- Ora proviamo a utilizzare vSphere CLI e inseriamo il seguente comando nella console Linux per visualizzare l’elenco dei dispositivi del server ESXi:
esxcli --server 192.168.101.208 storage core device listDove 192.168.101.208 è l’indirizzo IP del server ESXi.

- L’impronta digitale SHA-1 del server non è attendibile e la connessione all’host ESXi non è riuscita. Ciò significa che è necessario definire l’impronta digitale per motivi di sicurezza. Proviamo un altro comando:
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 getIl nome utente e la password verranno richiesti nella console in modalità interattiva.

Cerca di non utilizzare comandi in cui nome utente e password vengono digitati come testo normale, come in questo caso:
esxcli --server 192.168.101.208 --username root --password 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 getNOTA: Questo per motivi di sicurezza. I comandi eseguiti vengono salvati in Linux fino a quando non si esegue il comando
history -ccomando per cancellare la cronologia. Se è necessario evitare di utilizzare la modalità interattiva e inserire manualmente login e password, è possibile salvare la sessione ESXi in un file e utilizzare questo file durante l’esecuzione dei comandi. Il salvataggio delle sessioni è sicuro, a differenza dell’inserimento di una password come testo normale nel comando. Il salvataggio delle sessioni è spiegato di seguito.
Salvataggio di un’impronta digitale per la connessione agli host ESXi
Inserire ogni volta l’impronta digitale ESXi per eseguire un comando non è pratico. Fortunatamente, è possibile salvare l’impronta digitale ed eseguire ulteriori comandi con vSphere CLI senza definirne una.
- Vai alla directory:
cd /usr/lib/vmware-vcli/apps/general/ - Esegui il comando come segue:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s server -t thumbprintNel nostro esempio specifico, il comando è:
/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
- Ora è possibile eseguire comandi nella CLI di vSphere senza dover inserire ogni volta l’impronta digitale:
esxcli --server 192.168.101.208 system maintenanceMode get
Tuttavia, è comunque necessario inserire un nome utente e una password. È possibile configurare vSphere CLI per eseguire i comandi senza inserire ogni volta una password, come illustrato nelle sezioni seguenti.
Utilizzo di un file di sessione per la connessione agli host ESXi
L’utilizzo di un file di sessione salvato è uno dei metodi per evitare di inserire nome utente e password quando si esegue un comando su un host ESXi remoto utilizzando vSphere CLI.
- Creare una directory in cui archiviare i file di backup della configurazione ESXi, ad esempio: /backup/
mkdir /backup - Vai a quella directory:
cd /usr/lib/vmware-vcli/apps/session - Salva la tua sessione host ESXi autorizzata nel file utilizzando uno script Perl con il comando:
perl save_session.pl --savesessionfile /backup/192-168-101-208session --server 192.168.101.208 --username root --password TestPass_555Dove:
––savesessionfile /backup/192-168-101-208session è il nome del file di sessione creato
––Il server 192.168.101.208 è il nome dell’host ESXi la cui sessione è stata salvata (questo host ESXi è utilizzato in diversi esempi).
––Il nome utente root è il nome dell’utente connesso all’host ESXi.
––La password TestPass_555 è la password dell’utente connesso all’host ESXi.
Ora è possibile eseguire comandi senza inserire una password, ma è necessario inserire il ––file di sessione tasto (opzione) e definire il percorso del file di sessione.Ad esempio:esxcli --sessionfile /backup/192-168-101-208session system maintenanceMode get
Utilizzo di un file di configurazione per la connessione agli host ESXi
L’idea alla base di questo metodo è quella di salvare le credenziali nel file di configurazione come testo normale e fare riferimento a questo file quando si eseguono comandi ESXi nella CLI di vSphere.
- Crea un file di configurazione:
vim /backup/vcli-config - Inserisci le credenziali nel seguente campo:
VI_USERNAME=root
VI_PASSWORD=TestPass_555
- Salva il file.
- Esegui questo comando sul server ESXi remoto utilizzando vSphere CLI:
esxcli --server 192.168.101.208 --config vcli-config system maintenanceMode get
NOTA: Dato che le credenziali vengono salvate come testo semplice, questo metodo non è sicuro dal punto di vista della sicurezza.
Utilizzo di un archivio credenziali per la connessione agli host ESXi
Un archivio credenziali è il file xml che ha la sua ubicazione nella directory utente in vmware sottodirectory ~/.vmware/credstore/vicredentials.xmlIl vantaggio di utilizzare l’archivio delle credenziali per eseguire comandi su host ESXi remoti è che la password non viene salvata come testo normale. Di conseguenza, questo metodo garantisce una maggiore sicurezza.
- Per aggiungere credenziali all’archivio credenziali, eseguire il comando:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add --server 192.168.101.208 --username root - Elenca le credenziali salvate nell’archivio delle credenziali per assicurarti che quelle necessarie siano presenti:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl list - Eseguire il comando sull’host ESXi remoto senza inserire una password utilizzando l’archivio delle credenziali:
# esxcli --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml system maintenanceMode getSe si utilizza un utente non root, il file delle credenziali viene salvato in /home/nome_utente/.vmware/credstore/vicredentials.xml

Nello screenshot qui sotto puoi vedere come le credenziali vengono salvate nel file di archiviazione delle credenziali.

Utilizzo della CLI vSphere per eseguire il backup della configurazione dell’host ESXi
Ora che hai configurato vSphere CLI sul computer Ubuntu Linux, puoi eseguire i comandi ed eseguire il backup della configurazione ESXi:
- Vai al /usr/bin/ directory:
cd /usr/bin - Per creare un backup della configurazione ESXi senza inserire nome utente e password, utilizzare uno dei comandi riportati di seguito.
- Per il nome utente e la password salvati nell’archivio delle credenziali, utilizzare il comando:
vicfg-cfgbackup --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml -s /backup/192-168-101-208-esxi-cfg.tgz - Oppure, dopo aver salvato la sessione nel file di sessione, utilizzare il comando:
vicfg-cfgbackup --sessionfile /backup/192-168-101-208session -s /backup/192-168-101-208-esxi-cfg.tgz
NOTA: vicfg- I comandi sono deprecati. Se vicfg non funziona nel tuo caso, usa ESXCLI comandi equivalenti nell’interfaccia della riga di comando quando si lavora con host ESXi delle versioni più recenti. Vedere i comandi per altri metodi di backup della configurazione ESXi.
Lo svantaggio dell’utilizzo del ––file di sessione L’opzione è il timeout dopo 30 minuti di inattività dall’esecuzione dell’ultimo comando nella CLI di vSphere. Trascorso tale tempo, è necessario eseguire nuovamente l’autenticazione e creare un file di sessione.
- Se desideri creare un backup della configurazione ESXi mentre inserisci una password in modalità interattiva, puoi eseguire il comando:
vicfg-cfgbackup --server 192.168.101.208 -s /backup/192-168-101-208-esxi-cfg.tgz
- Per il nome utente e la password salvati nell’archivio delle credenziali, utilizzare il comando:
Come automatizzare il backup della configurazione ESXi
Se l’ambiente è soggetto a cambiamenti dinamici e la configurazione degli host ESXi cambia spesso, il backup manuale degli host ESXi potrebbe non essere pratico. In questo caso, è possibile automatizzare il backup della configurazione ESXi aggiungendo uno scheduler un comando di backup o uno script di backup contenente più comandi. Crontab è uno scheduler in Linux.
- Modifica la configurazione dello scheduler in Linux per eseguire in modo periodico e automatico il comando di backup della configurazione ESXi.
crontab -eNOTA: Se stai modificando la configurazione crontab per la prima volta, devi selezionare l’editor di testo predefinito che deve essere utilizzato per modificare la configurazione crontab. Nel nostro esempio, utilizziamo /usr/bin/vim.basic a tale scopo.
Il formato della configurazione crontab è il seguente:
minuti ore giorno_del_mese mese giorno_della_settimana comando
- Eseguiamo il backup della configurazione dell’host ESXi ogni notte alle 03:25 aggiungendo la seguente riga alla configurazione crontab:
25 03 * * * /usr/bin/vicfg-cfgbackup ––server 192.168.101.208 ––config /backup/vcli-config -s /backup/192-168-101-208-esxi-cfg-cron.tgz
- Scrivi la configurazione del crontab pianifica e chiudi l’editor di testo vim (utilizzato in questo esempio):
:wq
- Aspettiamo fino alle 03:25 per controllare la directory in cui devono essere salvati i file di configurazione del backup ESXi:
ls -alCome puoi vedere nella schermata qui sotto, il file di backup della configurazione dell’host ESXi è stato creato automaticamente alle 03:25.

Ora il backup della configurazione ESXi è stato creato automaticamente, il che è ottimo, ma c’è uno svantaggio. Ogni volta che crontab esegue un comando pianificato per creare il backup della configurazione ESXi, il precedente tgz Il file viene sovrascritto dal nuovo tgz file. Ciò può causare problemi se il backup con la configurazione ESXi corretta creato il giorno prima di ieri viene sovrascritto da un file creato il giorno successivo contenente la configurazione ESXi errata. Per evitare questo problema, è necessario eseguire il backup della configurazione ESXi su file diversi.Creiamo uno script semplice per salvare ogni volta la configurazione ESXi in un file separato con un nome univoco che contenga la data e l’ora di creazione del file di backup della configurazione ESXi nel nome del file. La creazione di uno script consente di aggiungere comandi per eseguire il backup di più host ESXi eseguendo un unico script.
- Crea il esxi_backup.sh file nella directory /backup/:
vim /backup/esxi_backup.sh - Aggiungi le seguenti righe al file:
#!/bin/bash
ESXI101_208_BACKUP_NAME=”192-168-101-208-$(date +’%Y%m%d_%H%M%S’)esxi-cfg.tgz”
vicfg-cfgbackup ––server 192.168.101.208 ––config /backup/vcli-config -s /backup/$ESXI101_208_BACKUP_NAME
- Scrivi le modifiche nel file e chiudi l’editor di testo vim:
:wq - Rendi il file eseguibile:
chmod +x /backup/esxi_backup.sh - Modifica la configurazione dello scheduler:
crontab -e - Aggiungi la riga in questo modo:
50 06 * * * /backup/esxi_backup.sh
Questa riga di configurazione ci consente di impostare crontab in modo che esegua lo script di backup della configurazione ESXi alle 06:50.
Disabilita l’attività pianificata precedente che hai aggiunto aggiungendo il carattere # all’inizio della riga.
Salva la configurazione.

- Attendere il tempo impostato, quindi verificare se l’archivio di backup della configurazione ESXi è stato creato.

Questo è un semplice script che illustra il concetto di automazione. È possibile creare script complessi per eseguire il backup di più host ESXi.NOTA: Dopo ogni riavvio di ESXi o 30 minuti di inattività, l’autenticazione per la sessione ESXi scade. Tieni presente questa funzione quando crei uno script per il backup automatico di ESXi.
Come ripristinare la configurazione ESXi nella CLI di vSphere
I requisiti per ripristinare la configurazione ESXi utilizzando vSphere CLI sono simili a quelli obbligatori per altri metodi. Per ripristinare la configurazione ESXi, assicurarsi che l’accesso remoto tramite SSH sia abilitato e che l’indirizzo IP del server ESXi sia noto (si consiglia di utilizzare lo stesso indirizzo IP dell’host ESXi di cui è stato eseguito il backup).Per ripristinare la configurazione ESXi, eseguire il comando:vicfg-cfgbackup --server=ESXi_host_IP_address --username=root -l backup_fileNel nostro esempio specifico, il comando è:vicfg-cfgbackup --server=192.168.101.208 --username=root -l /backup/192-168-101-208-esxi-cfg.tgzSe l’UUID dell’host ESXi di destinazione su cui si desidera ripristinare la configurazione è diverso dall’UUID del server ESXi di cui è stato eseguito il backup (il cui UUID è definito nel file Manifesto.txt file all’interno del tgz archivio di backup), è possibile utilizzare il comando -f chiave (forza) per sovrascrivere l’UUID.
È possibile verificare l’UUID dell’host ESXi in esecuzione con il comando, come ricorderete:esxcfg-info -uNOTA: A partire da ESXi 7.0 U2, la sostituzione forzata dell’UUID non funziona se su un host ESXi viene utilizzato un TPM (Trusted Platform Module).
Metodo 3: utilizzo di PowerCLI per eseguire il backup degli host ESXi
Gli utenti che apprezzano Windows PowerShell possono utilizzare PowerCLI per la gestione di vSphere e per eseguire il backup delle impostazioni ESXi. PowerCLI è un insieme di cmdlet PowerShell; alcuni comandi PowerCLI di base sono spiegati in questo post sul blog.Per utilizzare PowerCLI per eseguire il backup dell’host ESXi, è necessario prima Installare PowerCLI sul tuo sistema operativo:
- Esegui PowerCLI come amministratore in Windows.
- Connettiti al tuo server ESXi:
Connect-VIServer ESXi_IP_address -user user_name -password your_passwordNel nostro caso, utilizziamo i comandi:
Connect-VIServer 192.168.101.208 -user root -password TestPass_555Get-VMHostFirmware -vmhost 192.168.101.208 -BackupConfiguration -DestinationPath \"C:\backup ESXi host\"
- Se gli host ESXi sono gestiti da vCenter Server, è possibile connettersi prima a vCenter e quindi eseguire il backup della configurazione ESXi sugli host in PowerCLI senza dover eseguire l’autenticazione ogni volta prima di eseguire il backup della configurazione di ciascun host:
Connect-VIServer 10.10.10.16Inserisci il tuo nome utente e la tua password di amministrazione per accedere a vCenter Server. A tal fine apparirà una finestra pop-up.

- Se gli host ESXi sono gestiti da vCenter Server, è possibile connettersi prima a vCenter e quindi eseguire il backup della configurazione ESXi sugli host in PowerCLI senza dover eseguire l’autenticazione ogni volta prima di eseguire il backup della configurazione di ciascun host:
- Eseguire il backup della configurazione ESXi di ciascun host:
Get-VMHostFirmware -vmhost 10.10.10.61 -BackupConfiguration -DestinationPath \"C:\backup ESXi host\"Get-VMHostFirmware -vmhost 10.10.10.46 -BackupConfiguration -DestinationPath \"C:\backup ESXi host\"
Come ripristinare la configurazione ESXi in PowerCLI
- Esegui VMware PowerCLI come amministratore di sistema.
- Connettersi all’host ESXi su cui si desidera ripristinare la configurazione. Nel nostro esempio, ripristiniamo la configurazione sull’host ESXi con indirizzo IP 192.168.101.208.
- Imposta l’host ESXi in modalità di manutenzione:
Set-VMHost -VMHost 192.168.101.208 -State Maintenance - Assicurarsi che le VM residenti su quell’host ESXi siano spente o migrate su un altro host ESXi prima di ripristinare la configurazione ESXi. Tenere presente che dopo aver eseguito il comando per il ripristino della configurazione, l’host ESXi si riavvierà automaticamente.
- Ripristina la configurazione con il comando
Set-VMHostFirmware restorecomando:Set-VMHostFirmware -vmhost 192.168.101.208 -Restore -SourcePath \"C:\backup ESXi host\configBundle-192.168.101.208.tgz\" -HostUser root -HostPassword TestPass_555
La versione, il numero di build e l’UUID dell’host ESXi su cui viene ripristinata la configurazione devono corrispondere alla versione, al numero di build e all’UUID dell’host ESXi di cui si sta utilizzando il backup per ripristinare la configurazione. Utilizzare il comando -forza digitare il comando per saltare il controllo UUID.
Metodo 4: Backup e ripristino manuali della configurazione ESXi
È inoltre necessario essere preparati ad affrontare situazioni in cui non è possibile accedere all’host ESXi o in cui un host ESXi non è in grado di avviarsi e non è possibile utilizzare l’interfaccia della riga di comando per eseguire il comando di backup o ripristino della configurazione ESXi. Ciò può verificarsi a causa di guasti hardware o problemi software. In questo caso, è preferibile sapere come eseguire manualmente il backup e il ripristino di una configurazione ESXi.Come ricorderete dall’impostazione predefinita crontab configurazione su un host ESXi, il /sbin/auto-backup.sh Lo script viene eseguito ogni ora e ogni volta che un host ESXi viene riavviato o spento. Questo script ha lo scopo di eseguire il backup (salvare) della configurazione ESXi memorizzata nella memoria sul /bootbank/stato.tgz file.NOTA: Il /bootbank/stato.tgz Il file non deve essere crittografato per poter utilizzare questo metodo.La configurazione ESXi viene memorizzata nella RAM del computer quando un server ESXi è in esecuzione (il disco RAM appropriato è montato sul /etc/ directory). Quando ESXi si avvia, i file di sistema vengono estratti dalla /bootbank/stato.tgz archivio al /etc/ directory. È possibile copiare manualmente il file /bootbank/stato.tgz file se l’host ESXi è in esecuzione utilizzando un client SCP come WinSCP (l’accesso SSH remoto deve essere abilitato). In alternativa, è possibile avviare il sistema dal Live DVD e copiare il file stato.tgz file manualmente se l’host ESXi non è avviabile (ad esempio, a causa di un guasto hardware).
Flusso di lavoro di ripristino manuale
- Prepara l’archivio di backup creato in precedenza con ESXi shell, vSphere CLI o PowerCLI. Il nome del file è configBundle-192-168-101-208.tgz nel nostro caso. È possibile copiare il file su una chiavetta USB, ad esempio, e inserire tale chiavetta USB in una porta USB del server ESXi su cui è necessario ripristinare la configurazione di sistema.
- Esecuzione dell’avvio del sistema dal CD/DVD live sul computer in cui è installato ESXi. È possibile utilizzare il disco di installazione di Ubuntu come CD/DVD live.
- Apri la console (terminale) in Linux.
- Elenca le partizioni:
ls -al /dev/sd*fdisk -l | grep /dev/sdaIn questo caso, abbiamo bisogno del /dev/sda5/ partizione contrassegnata come dati di base Microsoft.
Le partizioni del disco ESXi sono state menzionate nel post del blog relativo a Avvio di ESXi da una chiavetta USB e Ripristino password ESXi.

Siamo interessati al /dev/sda5 partizione in questo caso.
- Crea la directory su cui verrà montata la partizione /dev/sda5:
mkdir /mnt/sda5 - Monta la partizione del disco in quella directory:
mount /dev/sda5 /mnt/sda5 - Nel /mnt/sda5 directory, è possibile trovare il stato.tgz file, che contiene la configurazione ESXi. Questa directory (in cui stato.tgz è memorizzato) è chiamato /bootblank/ quando viene avviato un host ESXi.
- Copiare l’archivio di backup della configurazione ESXi dalla chiavetta USB al /tmp/directory di Ubuntu caricata dal Live DVD. Nel nostro esempio, copiamo:
cp /media/Ubuntu/Ubuntu\ 18.0/backup_ESXi_host/configBundle-192-168-101-208.tgz /tmp/configBundle.tgz - Estrai i file dall’archivio di backup:
tar zxvf /tmp/configBundle.tgz - Si può vedere che il stato.tgz Il file viene estratto dall’archivio:
ls -al /tmp/ - Rinomina l’originale stato.tgz file che si trova su /dev/sda5 partizione montata su /mnt/sda5/
mv /mnt/sda5/state.tgz /mnt/sda5/state-old.tgz - Copia il stato.tgz file estratto dall’archivio di backup della configurazione ESXi (configBundle.tgz) al /tmp/ directory:
cp /tmp/state.tgz /mnt/sda5/ - Smontare le partizioni montate:
umount /dev/sda5/ - Riavvia il server. Espelli il DVD Live di Ubuntu e effettua l’avvio del sistema dal disco su cui è installato ESXi.
init 6
Ora la configurazione ESXi dovrebbe essere ripristinata.
Conclusione
L’utilizzo dell’interfaccia della riga di comando ESXi è vantaggioso perché non richiede l’installazione di software aggiuntivo. I vantaggi di vSphere CLI sono la possibilità di eseguire comandi in remoto utilizzando macchine Linux e la possibilità di automatizzare il backup della configurazione ESXi. PowerCLI, d’altra parte, può essere apprezzato dagli utenti Windows.Se un host ESXi non è in buono stato e non è possibile avviarlo, è possibile eseguire il backup e il ripristino della configurazione manualmente. Si noti che le informazioni relative al bootblank e alle VM non vengono memorizzate nel file di backup della configurazione ESXi. Dopo aver ripristinato la configurazione ESXi, potrebbe essere necessario registrare le VM nell’inventario.Si consiglia di eseguire il backup delle VM vSphere oltre al backup degli host ESXi. NAKIVO Backup & Replication è una soluzione di backup universale in grado di eseguire il backup delle macchine virtuali VMware, Hyper-V, delle istanze di Amazon EC2 e dei server fisici Linux e Windows.