Back Up e restaurar a configuração do host VMware ESXi: Um Guia Passo a Passo
On Dezembro 3, 2021 by adminBackup é uma das ações mais importantes para a operação contínua de qualquer infraestrutura de TI. A execução de servidores como máquinas virtuais (VMs) em hosts ESXi no vSphere oferece a você maiores vantagens ao fazer backup de dados VM. O backup em nível de host permite que você use recursos úteis, como backup sem agente, backup completo de VM (dados de VM + configuração de VM), instantâneos para fazer backups de VMs em execução e baixa carga do servidor. Ter hosts ESXi saudáveis é a chave para o sucesso ao executar máquinas virtuais. É por isso que é melhor fazer o backup da configuração do ESXi. Assim, se algo der errado com um host ESXi, sua configuração pode ser restaurada em poucos minutos sem gastar muito tempo para configurar um servidor ESXi a partir do zero. O blog de hoje cobre a configuração do backup da ESXi e explora como fazer o backup do host ESXi usando diferentes métodos.
Usar a linha de comando ESXi para fazer o backup do host ESXi
Usar a linha de comando ESXi é o método mais acessível para fazer o backup da configuração do host ESXi. Você não precisa instalar nenhum software adicional para usar a linha de comando da ESXi. Você tem que habilitar o shell ESXi e o acesso remoto ao SSH para um host ESXi. Este processo é explicado no post do blog sobre a ESXCLI. Uma vez conectado ao seu host ESXi via SSH, você pode executar os comandos.
ESXi configuração é salva a cada hora automaticamente no arquivo /bootblank/state.tgz. Por esta razão, você deve assegurar que a configuração ESXi atual seja escrita nos arquivos de configuração ESXi agora mesmo para confirmar que todas as alterações feitas na configuração ESXi desde a última gravação automática são salvas:
vim-cmd hostsvc/firmware/sync_config
Back up ESXi configuration:
vim-cmd hostsvc/firmware/backup_config
Como resultado, você receberá um link para baixar o configBundle.arquivo tgz a partir do host ESXi. Você deve substituir o asterisco pelo endereço IP do seu host ESXi. O arquivo que contém o backup da configuração do ESXi é salvo no diretório /scratch/downloads por um curto período de tempo (alguns minutos). A partição scratch foi mencionada no post do blog sobre a instalação do ESXi em uma unidade Flash USB.
O endereço IP do seu host ESXi pode ser verificado na interface do console direto do ESXi ou usando o seguinte comando:
esxcli network ip interface ipv4 get
O endereço IP do host ESXi usado no exemplo atual é 192.168.101.208.
Baixar o arquivo de backup do ESXi o mais rápido possível e armazená-lo em um lugar seguro.
Como automatizar a configuração do backup do ESXi na linha de comando do ESXi
A vantagem de uma interface de linha de comando é a possibilidade de automatizar tarefas que ela fornece; O backup da configuração do ESXi não é exceção. Vamos rever como fazer isso:
1. Crie um diretório para armazenar arquivos de backup no seu ESXi datastore.
mkdir /vmfs/volumes/datastore1/ESXi_backup
2. Crie um script para fazer o backup da configuração do ESXi:
vi /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh
3. Adicione as seguintes linhas ao script:
vim-cmd hostsvc/firmware/sync_config
vim-cmd hostsvc/firmware/backup_config
find /scratch/downloads/ -name \*.tgz -exec cp {} /vmfs/volumes/datastore1/ESXi_backup/ESXi_config_backup_$(date +’%Y%m%d_%H%M%S’).tgz \;
4. Salve o arquivo e saia vi:
:wq
Note: Para maior conveniência, você também pode incluir o nome do host ESXi ou endereço IP no nome do arquivo de backup. Isso o ajudará a evitar confusão ao usar múltiplos hosts ESXi.
5. Torne o script executável:
chmod +x /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh
6. Vá para o diretório onde o script está localizado:
cd /vmfs/volumes/datastore1/ESXi_backup/
7. Execute o script:
./esxi_backup.sh
8. Verifique se foi criado um arquivo de backup:
ls -al
9. Vamos nos certificar que o script host ESXi de backup está rodando na programação (automaticamente). Edite a configuração do agendador para este propósito:
vi /var/spool/cron/crontabs/root
10. Adicione a seguinte string para executar o backup da configuração do ESXi todos os dias às 02:10 AM.
10 02 * * * /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh
11. Guarde as alterações no ficheiro. Para salvar as alterações no arquivo somente leitura, digite:
:wq!
Como alternativa, você pode alterar as permissões do arquivo antes de editar o arquivo:
chmod +w /var/spool/cron/crontabs/root
Após isso, a configuração do ESXi será copiada automaticamente às 02:10 AM todas as noites para o arquivo chamado ESXi_config_bakup_date_time.tgz
Como recuperar a configuração do ESXi na linha de comando ESXi
Você deve ter ESXi da mesma versão e número de compilação instalado na máquina onde você deseja restaurar a configuração do ESXi. Esta regra é verdadeira para todos os métodos de recuperação da configuração da ESXi considerados neste post de blog. Se você vai restaurar a configuração da ESXi na máquina ESXi que está instalada do zero (claramente instalada), você precisa definir o endereço IP da interface de rede usada para a rede de gerenciamento da ESXi e habilitar o acesso SSH. A configuração inicial do ESXi é explicada neste post do blog. O UUID deve ser o mesmo tanto no servidor ESXi que foi feito o backup quanto no servidor ESXi no qual a configuração deve ser restaurada. Abaixo nesta seção, leia o que fazer se os valores UUID forem diferentes.
Após você ter preparado seu host ESXi recém-instalado para restaurar a configuração ESXi a partir de um backup, conecte-se ao host ESXi via SSH e entre no host para o modo de manutenção.
esxcli system maintenanceMode set -enable yes
ou
vim-cmd hostsvc/maintenance_mode_enter
Copiar o arquivo que contém o backup da configuração ESXi para algum diretório em um host ESXi usando um cliente SCP, por exemplo WinSCP. Vamos copiar o arquivo configBundle-xxxx.tgz de uma máquina local para o diretório /tmp/ no servidor ESXi de destino.
Renomear o arquivo configBundle-xxxx.tgz para configBundle.tgz antes de inserir um comando para restaurar a configuração da ESXi. Caso contrário, você receberá uma mensagem de erro: “Ficheiro /tmp/configBundle.tgz não foi encontrado”.
Pode renomear o ficheiro na shell ESXi ao qual está ligado via SSH:
mv /tmp/configBundle-esxi6-7b.localdomain.tgz /tmp/configBundle.tgz
Restaurar a configuração do ESXi:
vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
Após executar este comando um host ESXi será reinicializado automaticamente.
Após reiniciar o servidor ESXi, você deverá sair do modo de manutenção, após o que você poderá usar o host como de costume.
esxcli system maintenanceMode set -enable no
ou
vim-cmd hostsvc/maintenance_mode_exit
How to change the UUID to restore ESXi configuration
The UUID of the ESXi server can be checked in the ESXi command line interface with the command:
esxcfg-info -u
O valor UUID do servidor ESXi com backup é mencionado no Manifesto.txt dentro do arquivo de backup configBundle.tgz que você fez com os comandos explicados acima.
Você não pode alterar o UUID do servidor ESXi já que o identificador é gerado dependendo do hardware. No entanto, você pode recuperar a configuração ESXi do host ESXi A para o host ESXi B após alterar o UUID no arquivo Manifest.txt armazenado no arquivo de backup de configuração configBundle.tgz ESXi.
Vamos explorar o algoritmo que pode ser usado para alterar o UUID para aplicar a configuração de backup em outro servidor físico. O servidor A é um servidor para o qual é feito o backup da configuração e o servidor B é um servidor ao qual a configuração deve ser aplicada.
Etapa 1
Cheque o UUID no host ESXi ao qual você deseja aplicar a configuração de backup (servidor B). Isso pode ser feito com pelo menos dois métodos, mas o segundo método também permite que você verifique a versão ESXi.
1. Execute o esxcfg-info -u
2.1 Faça o backup da configuração do servidor ESXi B
vim-cmd hostsvc/firmware/sync_config
vim-cmd hostsvc/firmware/backup_config
2.2 Copie o arquivo de backup para o diretório temporário e vá para esse diretório
cp /scratch/downloads/_hash_value_/configBundle-localhost.localdomain.tgz /tmp
cd /tmp/
2.3 Extrair arquivos do arquivo
tar zxvf configBundle.tgz
2.4 Abra o arquivo Manifest.txt com o vi e verifique o valor UUID (você verá uma linha separada com o UUID). Anote o UUID.
vi Manifest.txt
No nosso caso, o UUID é 1E9E4D56-B724-DFBE-D19D-4C2D827E0188
2.5 Você pode excluir arquivos temporários no diretório /tmp/:
rm configBundle-localhost.localdomain.tgz Manifest.tgz
Etapa 2
1. Copie o arquivo de backup da configuração configBundle.tgz do servidor ESXi A para o servidor B, por exemplo, para o diretório /tmp/ e vá para esse diretório.
2. Extraia arquivos do configBundle.tgz archive
tar zxvf configBundle.tgz
3. Abra o arquivo Manifest.txt com o vi e atualize o valor UUID do servidor A para o UUID do servidor B.
vi Manifest.txt
No nosso caso, devemos alterar 9EA94D56-7E39-96A8-AB45-DF31EF0971EC para 1E9E4D56-B724-DFBE-D19D-4C2D827E0188.
Guardar o ficheiro e abandonar o editor de texto :wq
4. Renomeie o seu configBundle de origem.tgz para configBundle1.tgz, por exemplo (se o nome do seu arquivo de backup de configuração ESXi for diferente de configBundle.tgz, você pode pular este passo).
mv configBundle.tgz configBundle1.tgz
5. Tar Manifest.txt, state.tgz e arquivos jumpstrt.gz para um novo arquivo configBundle.tgz:
tar zcvf configBundle.tgz Manifest.tgz state.tgz jumpstrt.gz
6. Coloque o host ESXi no modo de manutenção e restaure a configuração
esxcli system maintenanceMode set -enable yes
vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
>
Como fazer backup do ESXi Host com o vSphere CLI
>
Outra interface de linha de comando fornecida pela VMware para gerenciar hosts ESXi é o vSphere CLI (não confundir com o VMware PowerCLI). Você deve instalar o vSphere CLI em uma máquina rodando Linux ou Windows para gerenciar as máquinas ESXi remotamente. O Perl é necessário para instalar a vSphere CLI. A vantagem de utilizar o vSphere CLI é a sua capacidade de utilizar a conveniência e o poder do bash no Linux. Ubuntu Linux é usado nos exemplos de hoje.
Instalando e configurando vCLI
Download vSphere CLI do site da VMware.
Vá ao diretório onde o arquivo baixado está localizado e extraia arquivos do arquivo.
tar -zxvf VMware-vSphere-CLI-6.5.0-4566394.x86_64.tar.gz
Instale os pacotes necessários:
A recomendação oficial da VMware é instalar este conjunto de pacotes:
apt-get install ia32-libs build-essential gcc uuid uuid-dev perl libssl-dev perl-doc liburi-perl libxml-libxml-perl libcrypt-ssleay-perl
Vá para o diretório onde os arquivos extraídos estão localizados e execute o instalador:
./vmware-install.pl
Ler e aceitar o contrato de licença. Se o instalador lhe pedir para instalar alguns módulos necessários, digite y e instale os módulos.
Alguns módulos devem ser instalados manualmente no nosso caso. Eles podem ser instalados usando a shell interativa de Perl.
Entrar a shell interativa de Perl:
perl -MCPAN -e shell
Executar o comando para instalar o módulo Perl requerido:
instalar Devel::StackTrace
Instalar de forma similar outros módulos.
Nota: No nosso caso, um módulo não pôde ser instalado no shell interativo Perl mas podemos instalar esse módulo com o comando no console Ubuntu:
apt-get install libcrypt-ssleay-perl
Após instalar os módulos Perl, execute novamente o instalador do VMware vSphere CLI.
A instalação foi concluída com sucesso e você pode ver a seguinte tela neste caso:
Agora vamos tentar usar o vSphere CLI e digitar um comando no console Linux para ver uma lista de dispositivos do servidor ESXi (192.168.101.208 é o endereço IP do servidor ESXi).
esxcli -server 192.168.101.208 lista de dispositivos do núcleo de armazenamento
O servidor SHA-1 thumbprint não é confiável, e a conexão com o host ESXi falhou. Isso significa que você deve definir o thumbprint por razões de segurança. Vamos tentar outro 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 manutenção do sistemaMode get
O nome de utilizador e a palavra-passe serão pedidos na consola no modo interactivo.
Tente não usar comandos onde um nome de usuário e senha são digitados como texto simples como este:
Isso é devido a razões de segurança. Os comandos executados são salvos no Linux até que você execute o comando -c do histórico para limpar o histórico. Se você precisar evitar usar o modo interativo e digitar um login e senha manualmente, você pode salvar a sessão ESXi no arquivo e usar esse arquivo ao executar os comandos. Salvar sessões é seguro, ao contrário de digitar uma senha como um texto simples no comando. As sessões de gravação são explicadas abaixo neste blog post.
Saving a thumbprint for connecting to ESXi hosts
Entering an ESXi thumbprint each time for running a command is not convenient. Felizmente, é possível salvar o thumbprint e executar mais comandos com o vSphere CLI sem definir um thumbprint.
Vá para o diretório:
cd /usr/lib/vmware-vcli/apps/general/
Você precisa executar o comando como:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s server -t thumbprint
No nosso exemplo particular, o 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
>
Agora você pode executar comandos no vSphere CLI sem digitar uma impressão de polegar de cada vez.
esxcli -server 192.168.101.208 system maintenanceMode get
No entanto, a necessidade de inserir um login e senha não desapareceu – você ainda deve inserir login/password. Como pode configurar o vSphere CLI para executar comandos sem introduzir uma palavra-passe de cada vez? A resposta a esta pergunta é apresentada nas seções abaixo.
Usar um arquivo de sessão para conexão com hosts ESXi
Usar um arquivo de sessão salvo é um dos métodos para evitar a digitação de um nome de usuário e senha ao executar um comando em um host ESXi remoto usando vSphere CLI.
Primeiro, crie um diretório para armazenar arquivos de backup de configuração ESXi, por exemplo, /backup/.
mkdir /backup
Vá para esse diretório:
cd /usr/lib/vmware-vcli/apps/session
Salve sua sessão autorizada da máquina ESXi para o arquivo usando um script Perl com o comando:
perl save_session.pl -savesessionfile /backup/192-168-101-208session -server 192.168.101.208 -username root -password TestPass_555
Where:
-savesessionfile /backup/192-168-101-208session é o nome do ficheiro da sessão criada
-server 192.168.101.208 é o nome da máquina ESXi cuja sessão é salva (esta máquina ESXi é usada em múltiplos exemplos)
-username root é o nome do usuário que está conectado à máquina ESXi
-password TestPass_555 é a senha para o usuário que está conectado à máquina ESXi
-username root é o nome do usuário que está conectado à máquina ESXi
-ussword TestPass_555 é a senha para o usuário que está conectado à máquina ESXi mas você deve inserir a chave -sessionfile (opção) e definir o caminho para o arquivo de sessão. Por exemplo:
esxcli -sessionfile /backup/192-168-101-208session system maintenanceMode get
Usar um ficheiro de configuração para ligação a hosts ESXi
A ideia por detrás deste método é guardar as credenciais no ficheiro de configuração como um texto simples e referir-se a este ficheiro quando executa comandos ESXi no vSphere CLI. Primeiro, crie um ficheiro de configuração:
vim /backup/vcli-config
Entrar credenciais no formato a seguir:
VI_USERNAME=root
VI_PASSWORD=TestPass_555
Guardar o ficheiro.
Executar um comando num servidor ESXi remoto usando o vSphere CLI:
esxcli -server 192.168.101.208 -config vcli-config system maintenanceMode get
As credentials are saved as plain text, this method is not secure.
Using a credential store for connecting to ESXi hosts
A credential store is the xml file located in the user directory in the vmware subdirectory ~/.vmware/credstore/vicredentials.xml. A vantagem de usar a loja de credenciais para executar comandos em hosts remotos ESXi é que uma senha não é salva como texto simples, portanto este método fornece maior segurança.
Para adicionar credenciais à loja de credenciais, execute o comando:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -server 192.168.101.208 -usr/usr/lib/vmware-vcli/apps/general/credstore_admin.pl list
List credentials saved in the credentials store to ensure that the necessary credentials are present:
/usr/lib/vmware-vcli/apps/general/credstore_admin.pl list
Executar o comando na máquina remota ESXi sem introduzir uma palavra-passe utilizando a loja de credenciais.
# esxcli -server 192.168.101.208 -credstore /root/.vmware/credstore/vicredentials.xml system maintenanceMode get
Se você usa um usuário não-root, o arquivo de credenciais é salvo em /home/user_name/.vmware/credstore/vicredentials.xml
Na captura de tela abaixo, você pode ver como as credenciais são salvas no arquivo de armazenamento de credenciais.
Usando vSphere CLI para fazer o backup da configuração do host ESXi
Agora você tenha configurado a vSphere CLI na máquina Linux Ubuntu, você pode executar os comandos e fazer o backup da configuração do ESXi.
Vá para o diretório /usr/bin/
cd /usr/bin
Agora você pode fazer uma cópia de segurança da configuração do ESXi sem digitar um nome de usuário e senha após salvar as credenciais na loja de credenciais:
Or após salvar uma sessão no arquivo de sessão:
vicfg-cfgbackup -sessionfile /backup/192-168-101-208session -s /backup/192-168-101-208-esxi-cfg.tgz
Nota: os comandos do vicfg- são depreciados. É melhor usar comandos equivalentes ao ESXCLI na interface de linha de comando ao trabalhar com hosts ESXi.
Note: A desvantagem de usar a opção -sessionfile é o timeout de 30 minutos quando ocioso após executar o último comando no vSphere CLI. Depois disso, você tem que autenticar e criar um arquivo de sessão novamente.
Se você quiser criar um backup da configuração do ESXi enquanto digita uma senha no modo interativo, você pode executar o comando:
vicfg-cfgbackup -server 192.168.101.208 -s /backup/192-168-101-208-esxi-cfg.tgz
Como fazer o backup da configuração do ESXi automaticamente
Se você tem um ambiente dinamicamente alterado e a configuração dos hosts ESXi muda com frequência, o backup manual dos hosts ESXi pode não ser racional. Neste caso, você pode automatizar sua configuração do ESXi de backup adicionando um comando de backup ou um script de backup que contenha vários comandos ao agendador.
Crontab é um agendador no Linux. Edite a configuração do agendador no Linux para executar o comando de backup da configuração ESXi periodicamente e automaticamente.
crontab -e
Nota: Se você estiver editando a configuração da crontab pela primeira vez, você deve selecionar o editor de texto padrão que deve ser usado para editar a configuração da crontab. No nosso exemplo, usamos o /usr/bin/vim.basic para este fim.
O formato da configuração da crontab é o seguinte:
minutos horas dia_do_mês_do_mês dia_do_comando_da_semana
Vamos fazer o backup da configuração do host ESXi todas as noites às 03:25 AM:
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
Escreva a configuração do agendador crontab e saia do editor de texto vim.
:wq
Espere até 03:25 AM para verificar o diretório no qual os arquivos de configuração do backup ESXi devem ser salvos.
ls -al
Como você vê na imagem abaixo, o arquivo de backup da configuração do host ESXi foi criado automaticamente às 03:25.
Agora o backup da configuração do ESXi foi feito automaticamente, o que é ótimo, mas há uma desvantagem. Cada vez que a crontab executa um comando programado para fazer o backup da configuração do ESXi, o arquivo tgz anterior é sobrescrito pelo novo arquivo tgz. Essa situação pode causar problemas para você se o backup com a configuração ESXi correta feito ontem for sobrescrito por um arquivo criado hoje que contém a configuração ESXi incorreta. A forma correcta de evitar esse problema é fazer o backup da configuração ESXi para ficheiros diferentes.
Vamos criar um script simples para guardar a configuração ESXi cada vez como um ficheiro separado com um nome de ficheiro único que contenha a data e hora da criação do ficheiro de backup da configuração ESXi no nome do ficheiro. A criação de um script permite adicionar comandos para fazer o backup de vários hosts ESXi executando um único script.
1. Crie o ficheiro esxi_backup.sh no directório /backup/:
vim /backup/esxi_backup.sh
2. Adicione linhas ao ficheiro da seguinte forma:
#!/bin/bash
ESXI101_208_BACKUP_NAME=”192-168-101-208-$(data +’%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
3. Escreva as alterações no ficheiro e saia do editor de texto vim.
:wq
4. Torne o ficheiro executável:
chmod +x /backup/esxi_backup.sh
5. Edite a configuração do agendador:
crontab -e
6. Adicione a linha assim:
50 06 * * * /backup/esxi_backup.sh
Configure o crontab para executar o script de backup da configuração do ESXi às 06:50 da manhã. Desactive a tarefa agendada anteriormente adicionando o caractere # no início da linha.
7. Espere pelo tempo definido e depois verifique se o arquivo de backup da configuração do ESXi foi criado.
Este é um script simples que demonstra a ideia de automação. Você pode criar scripts complexos para fazer backup de múltiplos hosts ESXi.
Nota: Após cada reinicialização do ESXi ou 30 minutos de tempo ocioso, a sessão do ESXi não se torna autenticada. Tenha em mente esse recurso ao criar um script para backup automático do ESXi.
Como recuperar a configuração do ESXi na vSphere CLI
Os requisitos para restaurar a configuração do ESXi usando a vSphere CLI são similares aos requisitos em vigor para outros métodos. Para restaurar a configuração do ESXi, certifique-se de que o acesso remoto via SSH esteja ativado e o endereço IP do servidor ESXi seja conhecido (recomenda-se usar o mesmo endereço IP do host ESXi com backup) e então execute o comando como descrito a seguir:
vicfg-cfgbackup -server=ESXi_host_IP_address -username=root -l backup_file
No nosso exemplo particular, o comando é:
vicfg-cfgbackup -server=192.168.101.208 -username=root -l /backup/192-168-101-208-esxi-cfg.tgz
Se o UUID do host ESXi de destino no qual você deseja restaurar a configuração tiver um UUID diferente do UUID do servidor ESXi com backup (cujo UUID é definido no arquivo Manifest.txt dentro do arquivo de backup tgz), você pode usar a chave -f (force) para sobrepor o UUID.
Você pode verificar o UUID da máquina ESXi em execução com o comando, como você se lembra:
esxcfg-info -u
Using Power CLI to Back up ESXi Host
Usuários que gostam do Windows podem usar o PowerCLI, que é um conjunto de cmdlets do PowerShell para fazer o backup da configuração do ESXi. Alguns comandos básicos do PowerCLI são explicados neste post do blog. Primeiro você tem que instalar o PowerCLI no seu sistema operacional. O algoritmo é o seguinte:
1. Execute PowerCLI como administrador no Windows.
2. Ligue-se ao seu servidor ESXi:
Conecte-se ao servidor ESXi_IP_address – user user_name -password your_password
No nosso caso, usamos os comandos:
Conecte-se ao servidor ESXi_IP_address – user user_name -password your_password
No nosso caso, usamos os comandos:
Conecte-se ao servidor ESXi_IP_address 192.168.101.208 -user root -password TestPass_555
Get-VMHostFirmware -vmhost 192.168.101.208 -BackupConfiguration -DestinationPath “C:\backup ESXi host”
Se os seus anfitriões ESXi são geridos pelo vCenter Server, pode ligar-se primeiro ao vCenter e depois fazer o backup da configuração ESXi nos seus anfitriões no PowerCLI sem necessidade de autenticar cada vez antes de fazer o backup de cada configuração de anfitrião.
Conect-VIServer 10.10.10.16
Introduza o seu login administrativo e palavra-passe para aceder ao vCenter Server. Uma janela popup aparecerá para este propósito.
Back up ESXi configuration of each 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”
Como restaurar a configuração do ESXi no PowerCLI
Executar o VMware PowerCLI como administrador. Conecte-se a um host ESXi no qual você deseja recuperar a configuração (em nosso exemplo, vamos recuperar a configuração no host ESXi cujo endereço IP é 192.168.101.208). Em seguida, entre no modo de manutenção:
Set-VMHost -VMHost 192.168.101.208 -State Maintenance
Certifique-se de que as VMs residentes nesse host ESXi estão desligadas ou migradas para outro host ESXi antes de recuperar a configuração da ESXi. Esteja ciente de que após executar um comando para restaurar a configuração, a máquina ESXi será reinicializada automaticamente. Restaure a configuração com o comando Set-VMHostFirmware restore:
Set-VMHostFirmware -vmhost 192.168.101.208 -Restore -SourcePath “C:\backup ESXi host\configBundle-192.168.101.20
8.tgz” -HostUser root -HostPassword TestPass_555
A versão, número de compilação e UUID de um host ESXi sobre o qual a configuração é recuperada deve coincidir com a versão, número de compilação e UUID de um host ESXi cujo backup você está usando para restaurar a configuração. Use a tecla -force no comando para pular a verificação UUID.
Cópia de Segurança Manual e Restauração da Configuração do ESXi
Você também deve estar pronto para uma situação em que não consiga fazer o login no seu host ESXi, ou quando um host ESXi não conseguir inicializar e você não puder usar a interface de linha de comando para executar o comando para fazer o backup ou restaurar a configuração do ESXi. Isso pode acontecer por causa de falha de hardware ou problemas de software. Nesse caso, é melhor saber como fazer backup e recuperar manualmente a configuração da ESXi.
Note: Como você se lembra da configuração padrão da crontab em um host ESXi, o script /sbin/auto-backup.sh é executado a cada hora e quando um host ESXi é reinicializado ou desligado. Este script destina-se a fazer o backup (salvar) da configuração ESXi armazenada na memória para o arquivo /bootbank/state.tgz.
A configuração ESXi é armazenada na RAM do computador quando um servidor ESXi está sendo executado (o disco RAM apropriado é montado no diretório /etc/). Quando o ESXi está inicializando, os arquivos de sistema são extraídos do arquivo /bootbank/state.tgz para o diretório /etc/. Você pode copiar manualmente o arquivo /bootbank/state.tgz se seu host ESXi estiver rodando usando um cliente SCP como o WinSCP (o acesso remoto SSH deve estar habilitado). Como alternativa, você pode inicializar a partir do Live DVD e copiar o arquivo state.tgz manualmente se seu host ESXi não for inicializável (por exemplo, devido a falha de hardware).
Fluxo de trabalho de recuperação manual
1. Prepare o arquivo de backup que você fez anteriormente com o ESXi shell, vSphere CLI ou PowerCLI. O nome do referido arquivo é configBundle-192-168-101-208.tgz no nosso caso. Você pode copiar o arquivo para uma unidade flash USB, por exemplo, e inserir essa unidade flash em uma porta USB do servidor ESXi na qual você tem que recuperar a configuração do sistema.
2. Inicialize a partir do Live CD/DVD na máquina onde o ESXi está instalado. Você pode usar o disco de instalação do Ubuntu como um live CD/DVD.
3. Abra o console (terminal) no Linux
4. Liste as partições:
ls -al /dev/sd*
fdisk -l | grep /dev/sda
Neste caso, precisamos da partição /dev/sda5/ que está marcada como dados básicos da Microsoft.
> partições de discoESXi foram mencionadas no post do blog sobre a inicialização do ESXi a partir de uma unidade flash USB e recuperação de senha ESXi.
Estamos interessados na partição /dev/sda5 neste caso.
5. Crie o diretório no qual a partição /dev/sda5 será montada:
mkdir /mnt/sda5
6. Monte a partição do disco nesse diretório:
montar /dev/sda5 /mnt/sda5
7. No diretório /mnt/sda5, você pode encontrar o arquivo state.tgz que contém a configuração ESXi. Esse diretório (no qual o arquivo state.tgz é armazenado) é chamado /bootblank/ quando um host ESXi é inicializado.
8. Copie o arquivo de backup da configuração do ESXi de uma unidade flash USB para o diretório /tmp/do Ubuntu carregado de um DVD ao vivo. No nosso exemplo, nós copiamos:
cp /media/Ubuntu/Ubuntu\ 18.0/backup_ESXi_host/configBundle-192-168-101-208.tgz /tmp/configBundle.tgz
9. Extrair ficheiros do arquivo de backup:
tar zxvf /tmp/configBundle.tgz
10. Você pode ver que o arquivo state.tgz é extraído do arquivo.
ls -al /tmp/
11. Renomeie o arquivo state.tgz original que está localizado na partição /dev/sda5 montada em /mnt/sda5/
mv /mnt/sda5/state.tgz /mnt/sda5/state-old.tgz
12. Copie o arquivo state.tgz que você extraiu do arquivo de backup de configuração ESXi (configBundle.tgz) para o diretório /tmp/
cp /tmp/state.tgz /mnt/sda5/
13. Partições não montadas
umount /dev/sda5/
14. Reiniciar o servidor. Ejete o Ubuntu Live DVD e inicialize a partir do disco no qual ESXi está instalado.
init 6
15. Agora sua configuração ESXi deve ser restaurada.
Conclusion
Post do blog de hoje cobriu quatro métodos para fazer backup e restaurar a configuração do ESXi. Usando a interface de linha de comando ESXi é bom porque você não precisa instalar software adicional; as vantagens do vSphere CLI são a capacidade de executar comandos remotamente usando máquinas Linux e a capacidade de fazer o backup da configuração ESXi automatizada; PowerCLI pode ser apreciado pelos usuários do Windows. Se o seu anfitrião ESXi não for saudável e não conseguir arrancar o anfitrião, existe a possibilidade de fazer o backup e restaurar a configuração manualmente. Esteja ciente de que as informações em branco de inicialização e as informações sobre VMs não são armazenadas no arquivo de backup da configuração do ESXi. Após restaurar a configuração do ESXi, você pode precisar registrar máquinas virtuais no seu inventário.
Agora você sabe como fazer backup do host ESXi, mas não se esqueça de fazer backup das suas máquinas virtuais. NAKIVO Backup & Replicação é uma solução de backup universal que pode fazer o backup das suas VMs VMware, Hyper-V VMs, Amazon EC2 instâncias, bem como servidores físicos Linux e Windows. Baixe a versão de avaliação gratuita completa para ver como o backup pode ser confiável em seu ambiente.
Deixe uma resposta