A virtualização permite fluxos de trabalho e utilização de recursos mais eficientes graças a recursos como modelos de VM ou clonagem de VM, o que permite criar rapidamente uma cópia idêntica de uma VM existente. A nova VM não precisa ser configurada do zero, pois possui o mesmo hardware virtual, software instalado e outras configurações que a original.
A funcionalidade de clonagem de VM está disponível para VMs gerenciadas pelo vCenter Server. No entanto, também é possível clonar VMs em execução em um host ESXi VMware se, por exemplo, estiver utilizando uma versão gratuita do VMware ESXi.
Este post de blog explica como clonar máquinas virtuais existentes no ESXi usando diferentes métodos, com e sem o vCenter Server.
Ambiente de Clonagem de VM do ESXi
Recomenda-se não ter snapshots da VM que deseja clonar antes de começar. Isso pode ajudar a evitar problemas como a restauração do endereço MAC do adaptador de rede da VM original ao usar um snapshot para restaurar o estado da VM para um clone de VM. Se você tiver snapshots de VM, será necessário alterar o endereço MAC manualmente após restaurar o estado da VM de um snapshot para um clone de VM para evitar endereços MAC conflitantes.
O ambiente utilizado para demonstrar como fazer cópias de máquinas virtuais é o seguinte:
- Host ESXi 1: 192.168.101.201
- VMs no host ESXi 1: Windows-VM
- Host ESXi 2: 192.168.101.202
- vCenter Server: 192.168.101.103
No ambiente utilizado, o ESXi 7 e o vCenter 7 são usados para explicar o fluxo de trabalho e clonar máquinas virtuais.
ESXi 7 e vCenter 7 são utilizados neste ambiente para explicar o fluxo de trabalho e clonar máquinas virtuais.
Método 1: Clonar VM ESXi sem vCenter – Usando o Cliente VMware Host
Se você possui um host ESXi que não é gerenciado pelo vCenter Server, pode usar o VMware Host Client para clonar uma VM nesse host ESXi por meio de uma interface web amigável.
Temos um host ESXi (192.168.101.201) com dois datastores (datastore10a e datastore10c). A VM com o nome Windows-VM está localizada em datastore10a. Vamos clonar essa VM e armazenar a VM clonada em datastore10c.
Para clonar uma VM em um host ESXi sem vCenter, siga os passos abaixo:
- Faça login no VMware Host Client usando a conta administrativa (root).
- Crie um diretório no datastore necessário para armazenar os arquivos da VM clonada. Clicamos em Armazenamento na guia Navegador, vamos para datastore10c, clicamos em Criar Diretório e inserimos Win-VM-Clone como nome do diretório. Clique em Criar Diretório.
- Abra as configurações da VM da VM de origem e verifique a localização dos arquivos da VM. Para fazer isso, vá para Máquinas Virtuais, selecione Windows VM (no Navegador) e expanda Disco Rígido1 no painel Configuração de Hardware.
Podemos ver que o disco rígido virtual da nossa VM está localizado no diretório Windows-VM no datastore10a. Se a sua VM tiver vários discos virtuais, verifique a localização de cada um. Em algumas configurações personalizadas, os discos virtuais de uma VM podem estar localizados em lugares diferentes. É importante copiar todos os discos virtuais para as VMs clonadas.
Você também pode clicar em Editar Configurações da VM e expandir a seção de disco rígido nas configurações da VM para visualizar as localizações dos discos rígidos virtuais.
- Desligue a VM que deseja clonar.
- Abra o navegador do datastore e vá para o diretório da VM de origem. Para fazer isso, clique em Armazenamento no painel Navegador, clique em datastore10a e clique em Navegador do datastore. Em seguida, selecionamos o diretório Windows-VM em datastore10a no navegador do datastore.
- Copie os arquivos VMDK e o arquivo VMX da máquina virtual de origem para o diretório do clone da VM. Primeiro, copiamos o disco virtual da VM original. Selecione o arquivo VMDK (Windows-VM.vmdk no nosso caso) no navegador do datastore e clique em Copiar.
- Selecione o diretório de destino na próxima janela e clique em Copiar. Selecionamos o diretório Win-VM-Clone em datastore10c.
- Se o seu VM original tem múltiplos discos virtuais, repita estes passos para copiar todos os discos virtuais do VM.
Observe que o Cliente Host da VMware exibe arquivos .vmdk e -flat.vmdk como um único item. Você pode ver que existem dois arquivos para cada disco virtual na interface de linha de comando. Um arquivo .vmdk é o arquivo de descritor do disco virtual e -flat.vmdk é o arquivo do disco virtual que contém dados. Os discos virtuais de VMs em execução no VMware Workstation, ao contrário de VMs ESXi, usam discos virtuais .vmdk com um descritor incorporado (um único arquivo em vez de dois arquivos).
- Aguarde até que os arquivos sejam copiados. Você pode monitorar o progresso na barra de Tarefas Recentes na parte inferior da interface web.
- Baixe o arquivo VMX, que é um arquivo de configuração de VM, para o seu computador. Para fazer isso, abra o navegador de datastore e vá para o diretório Windows-VM no datastore10a. Selecione o arquivo .vmx (Windows-VM.vmx no nosso caso) e clique em Baixar (você pode clicar com o botão direito no arquivo .vmx para abrir o menu de contexto com opções). Salve o arquivo VMX selecionado no seu computador.
- Edite o arquivo VMX que você já baixou (Windows-VM.vmx no nosso caso). Você pode usar o editor de texto de sua preferência. Mesmo que uma máquina virtual clonada seja uma máquina virtual idêntica, existem certas configurações, como o nome da VM, que devem ser diferentes para cada VM no VMware vSphere para maior conveniência e para tornar possível identificar as VMs.
- Encontre a linha que começa com displayName. Altere o nome do clone da VM, que atualmente é o mesmo que o nome da VM original.
Nós alteramos o nome da VM de
displayName = “Windows-VM”
para
displayName = “Win-VM-Clone”
O nome da nossa VM exibida será o mesmo que o nome do diretório onde os arquivos do nosso clone de VM estão armazenados.
Opcional: Você também pode renomear o disco virtual no navegador do datastore (Windows-VM.vmdk) e alterar o valor na linha apropriada no arquivo de configuração .vmx para ter nomes de disco virtual únicos (por exemplo, Win-VM-Clone.vmdk, no nosso caso).
- Carregue o arquivo VMX editado no datastore onde os arquivos do clone da VM estão localizados (use o navegador do datastore, como você fez antes). Selecionamos o diretório datastore10c/Win-VM-Clone/ e clicamos em Enviar (selecione o arquivo VMX apropriado que você editou na janela do navegador).
- Agora, o arquivo VMX editado está localizado no diretório do clone da VM (Win-VM-Clone no datastore10c no nosso caso). Você pode fechar o navegador do datastore.
NOTA: Se você deseja clonar uma VM para outro host ESXi, baixe os arquivos de configuração da VM e do disco virtual para o seu computador e, em seguida, faça upload desses arquivos para o datastore do host ESXi de destino. Você também pode usar um cliente SCP / SFTP para baixar e enviar arquivos de/para um datastore (como o WinSCP no Windows).
- Uma vez que copiamos os arquivos VM, precisamos registrar um clone de VM em nosso host ESXi. Vá para Máquinas Virtuais no painel do Navegador e clique em Criar / Registrar VM.
- O assistente Nova máquina virtual é aberto.
- Selecione o tipo de criação. Selecione Registrar uma máquina virtual existente e clique em Avançar.
- Selecione VMs para registro. Clique em Selecionar uma ou mais máquinas virtuais, um datastore ou um diretório.
- Selecione um arquivo VMX localizado no diretório de clone da VM na janela do navegador de datastore que se abre e clique em Selecionar.
- Certifique-se de que o arquivo VMX necessário esteja selecionado na segunda etapa do assistente e clique em Avançar.
- Clique em Concluir na tela Pronto para concluir.
- O clone da VM agora está registrado como uma VM e exibido na lista de VMs. Você sempre pode renomear um clone de VM na interface da web do VMware Host Client. Você pode clicar com o botão direito no nome da VM e clicar em Renomear no menu que abrir.
- Agora, você pode iniciar o clone da VM. Você deverá ver uma pergunta após iniciar a VM conforme mostrado na captura de tela.
Selecione Eu Copiei (não movi). Isso é importante para definir um novo endereço MAC e identificador universal único (UUID) para a VM. Tenha em mente que você pode precisar alterar o nome da VM e o SID (para VMs do Windows) no sistema operacional convidado para evitar conflitos. Clique em Responder.
A máquina virtual foi clonada com sucesso no host ESXi.
Método 2: Como Clonar VMs na Linha de Comando do ESXi
Linha de comando do ESXi. Você pode acessar a linha de comando do ESXi diretamente usando o shell do ESXi em um host ESXi ou se conectar a um host ESXi por SSH remotamente. Certifique-se de que o acesso SSH esteja habilitado.
Para clonar uma máquina virtual VMware na linha de comando sem o vCenter:
- Conecte-se a um servidor ESXi com um cliente SSH. Se você usar Windows, você pode usar o PuTTY.
Verifique a lista de VMs registradas neste host ESXi (vamos clonar a mesma VM do Windows, ou seja, a VM original no exemplo anterior).
vim-cmd vmsvc/getallvms
- Precisamos desligar a VM original que desejamos clonar.
Obtenha o ID da VM (VMID) para identificar qual VM desligar.
vim-cmd vmsvc/getallvms
Nossa VM do Windows tem VMID 1 (confira a captura de tela abaixo).
- O comando para desligar uma VM é:
vim-cmd vmsvc/power.shutdown ID_VM
Nós usamos este comando para desligar nossa VM do Windows:
vim-cmd vmsvc/power.shutdown 1
- O comando para verificar o estado de energia da VM é:
vim-cmd vmsvc/power.getstate ID_VM
Se uma VM não puder ser desligada, você pode usar o comando de desligamento forçado:
vim-cmd vmsvc/power.off ID_VM
- Verifique a localização do arquivo de configuração desta VM:
cat /etc/vmware/hostd/vmInventory.xml |grep -i VM_do_Windows | grep vmx
ou
vim-cmd vmsvc/getallvms |grep -i VM_do_Windows
- Você também precisa saber onde estão localizados os discos virtuais desta VM (.vmdk e arquivos -flat.vmdk). Por padrão, os discos virtuais são armazenados no diretório da VM juntamente com o arquivo de configuração da VM (.vmx).
Para verificar a localização dos discos virtuais das VMs atuais, abra o arquivo de configuração da máquina virtual vmx:
less /vmfs/volumes/datastore10a/Windows-VM/Windows-VM.vmx
Se um disco virtual estiver armazenado no mesmo diretório (como nosso primeiro e único disco virtual), então você deverá ver linhas como estas:
ide0:0.present = “TRUE”
ide0:0.fileName = “Windows-VM.vmdk”
Se houver um disco virtual (por exemplo, o segundo disco virtual) armazenado não no diretório da VM, você deverá ver linhas como estas:
scsi0:1.present = “true”
scsi0:1.fileName = “/vmfs/volumes/609a545a-50d29185-ffbb-000c293004f2/directory2/SecondHardDisk.vmdk”
Se o disco virtual estiver armazenado fora do diretório da VM, você verá o caminho completo definido na linha apropriada do arquivo de configuração vmx.
Agora sabemos a localização dos arquivos da máquina virtual e podemos prosseguir para clonar a VM. Vamos armazenar este clone da VM ESXi em datastore10c.
-
Crie um diretório para armazenar arquivos da VM do clone:
mkdir /vmfs/volumes/datastore10c/Win-VM-Clone2
- Clone o arquivo de configuração e o(s) disco(s) virtual(is) da VM de origem e armazene o clone do disco virtual no diretório de destino do clone da VM. Definimos novos nomes para os arquivos de destino vmx e vmdk para corresponder ao nome do novo clone da VM.
- Você pode clonar o disco virtual com
vmkfstools
. Esta ferramenta permite definir o formato do disco virtual de destino e também permite alterar o formato de provisionamento espesso para provisionamento fino:vmkfstools -i /vmfs/volumes/datastore10a/Windows-VM/Windows-VM.vmdk /vmfs/volumes/datastore10c/Win-VM-Clone2/Win-VM-Clone2.vmdk -d thin
- Copie um arquivo de configuração de VM (.vmx)
cp /vmfs/volumes/datastore10a/Windows-VM/Windows-VM.vmx /vmfs/volumes/datastore10c/Win-VM-Clone2/Win-VM-Clone2.vmx
- Alternativamente, você pode copiar os arquivos de disco virtual (.vmdk e -flat.vmdk) como estão usando o comando cp e definindo novos nomes para os arquivos de destino.
cp /vmfs/volumes/datastore10a/Windows-VM/Windows-VM.vmdk /vmfs/volumes/datastore10c/Win-VM-Clone2/Win-VM-Clone2.vmdk
cp /vmfs/volumes/datastore10a/Windows-VM/Windows-VM-flat.vmdk /vmfs/volumes/datastore10c/Win-VM-Clone2/Win-VM-Clone2-flat.vmdk
- Você pode clonar o disco virtual com
- Agora, precisamos editar o arquivo vmx do clone da VM para alinhar o nome da VM e o caminho aos discos virtuais / nome do disco virtual. Assim, precisamos substituir Windows-VM por Win-VM-Clone2 no arquivo de configuração vmx do clone da VM.
Use o vi, o editor de texto, para sair do arquivo vmx do clone da VM. Use o seguinte comando no vi para encontrar e substituir uma string em todo o arquivo.
:[range]s/{padrão}/{string}/[flags] [contagem]
O modelo de comando para nosso cenário é:
:%s/foo/bar/g
No nosso caso, o comando deve ser o seguinte:
:%s/Windows-VM/Win-VM-Clone2/g
Salve o arquivo vmx do clone da VM. Digite :wq e pressione Enter no vi.
- Registre o clone da VM no host ESXi:
vim-cmd solo/registervm /vmfs/volumes/datastore10c/Win-VM-Clone2/Win-VM-Clone2.vmx
- Obtenha as informações sobre as VMs registradas para garantir que a máquina virtual clonada tenha sido registrada:
vim-cmd vmsvc/getallvms
- O clone da VM foi registrado (com VMID 3, conforme exibido na captura de tela abaixo).
- Agora você pode ligar o clone da VM. Para ligar este clone da VM (uma VM com VMID 3) na linha de comando, você pode usar o comando:
vim-cmd vmsvc/power.on 3
- Você deve abrir o Cliente do Host VMware e responder que copiou esta VM. A VM não é iniciada até você responder a esta pergunta.
- Como pode ver na captura de ecrã, o tamanho da VM é inferior porque clonámos o disco virtual de origem, que estava provisionado como thick para um formato provisionado como thin (2,76 GB vs 6 GB).
A criação da VM clone ESXi foi concluída com sucesso. Também pode utilizar este método para clonar máquinas virtuais para outro host ESXi independente sem utilizar o servidor vCenter. Precisa de utilizar o cliente SCP ou SFTP para copiar ficheiros da VM de/para diferentes hosts ESXi. O resto da lógica do método permanece igual.
Método 3: Como Clonar uma VM Sem o vCenter ao Criar uma Nova VM
Há mais um método para clonar uma VM em hosts ESXi sem utilizar o servidor vCenter, usando o Cliente Host VMware. A vantagem deste método é que não precisa de editar o ficheiro VMX da VM clone. Ao criar a VM clone, certifique-se de que a configuração da nova VM é idêntica à configuração da VM original. A nova VM pode iniciar se a sua configuração for diferente da VM original.
- Complete os 5 passos do Nova máquina virtual assistente para criar uma nova VM.
- Copie os discos virtuais da VM de origem para o diretório VM da VM clone. Pode fazer isso no navegador do datastore do Cliente Host VMware, de forma semelhante ao que fizemos no primeiro exemplo (método de clone de VM).
- Clique em Armazenamento e selecione um datastore onde a VM de origem está armazenada (datastore10a para o nosso caso). Clique em Navegador de Datastore e selecione o diretório da VM de origem (Windows-VM neste exemplo). Selecione o disco virtual vmdk e clique em Copiar.
- Selecione o diretório de destino na janela que abrirá em seguida (Win-VM-Clone3 no nosso caso) e clique em Copiar.
- Se a sua VM de origem tiver vários discos virtuais, copie-os da mesma maneira. Opcionalmente, você pode renomear as cópias de disco virtual armazenadas no diretório de clonagem da VM para maior conveniência usando nomes únicos.
- Edite as configurações do clone da VM. Vá para a página Máquinas virtuais no Navegador, clique com o botão direito na nova VM, que será o clone da VM, e clique em Editar Configurações no menu que abrir.
- Excluir o disco rígido virtual criado com a nova máquina virtual. Clique no ícone X na linha Disco rígido 1 na guia Hardware Virtual da janela de Configurações da VM.
- Selecione a caixa de seleção Excluir arquivos do datastore para confirmar a exclusão do disco virtual.
- Clique em Salvar.
- Abra as configurações da VM mais uma vez.
- Adicione o disco virtual copiado da VM original ao diretório de clones da VM.
Clique em Adicionar Disco Rígido > Disco rígido existente.
- Selecione o disco virtual vmdk que você copiou para o diretório de clones da VM antes. Selecionamos Windows-VM.vmdk no diretório Win-VM-Clone em datastore10c.
- Se a sua VM original tiver vários discos rígidos virtuais, adicione todos eles à configuração da VM. Clique em Salvar para salvar a configuração da VM após adicionar os discos virtuais.
- A virtual disk has been added to our VM configuration.
- Ligue o clone da VM.
- A message with the question (whether a VM was copied or moved) doesn’t appear because we created this VM as a new VM.
Método 4: Clone de Máquina Virtual VMware com vCenter
O VMware vCenter Server, o sistema de gerenciamento centralizado para o VMware vSphere, oferece uma maneira direta de clonar VMs, que é mais conveniente do que a clonagem de VMs sem o vCenter. Você pode clonar uma VM para o mesmo host ESXi ou para outro host ESXi que seja gerenciado pelo vCenter.
Para criar uma máquina virtual clonada com vCenter no VMware vSphere Client, faça o seguinte:
- Acesse o VMware vSphere Client para acessar a interface web de gerenciamento do vCenter.
- Selecione a visualização Hosts e Clusters e selecione sua VM no painel de Navegação. Vamos clonar a VM chamada Windows-VM, que reside no host ESXi 192.168.101.201.
- Clique com o botão direito na VM original e, no menu que se abre, clique em Clonar > Clonar para Máquina Virtual.
- O assistente Clonar Máquina Virtual Existente é aberto e contém 5 etapas.
- Selecione um nome e pasta. Digite um nome para o clone da VM. Nós – Win-VM-Clone4 no nosso caso). Selecione um datacenter e pasta de VM onde colocar a VM clonada. Clique em Avançar em cada etapa do assistente para continuar.
- Selecione um recurso de computação. Selecione o host ESXi ou cluster vSphere onde a clonagem da VM deve ser executada. No nosso caso, este é o host ESXi 192.168.101.201. Você pode selecionar outro host ESXi para executar a clonagem da VM, mas este host não deve ser o mesmo do host com a VM original.
- Selecione o armazenamento. Selecione um datastore onde colocar a VM clonada (nós selecionamos datastore10c). Selecione um formato de disco virtual usando uma das opções:
- Mesmo formato que o original
- Provisão Grossa Preguiçosa com Zeros
- Provisão Grossa Eager com Zeros
- Provisão Fina
Você também pode selecionar políticas de armazenamento da VM.
- Selecionar opções de clone. Existem algumas opções que você pode usar para personalizar o clone da VM, incluindo a alteração de um nome de host no sistema operacional convidado.
- Pronto para concluir. Verifique os parâmetros selecionados para o clone da VM e clique em Concluir.
NOTA: Ter o mesmo SID para um clone de VM pode causar problemas, especialmente se uma VM estiver em um domínio do Active Directory. Você pode precisar usar o SYSPREP para Windows ou ferramentas de terceiros para alterar/redefinir o SID. Se o MS SQL Server estiver instalado na VM, você precisará realizar operações adicionais pré- (habilitar uma conta sysadmin SQL) e pós-clonagem (alterar nomes) com o MS SQL Server para evitar problemas.
A clone VM has been created, and you can power on the VM.
Método 5: Fazer um Clone VM com NAKIVO Backup & Replicação
A replicação de VM é outra maneira de clonar máquinas virtuais em hosts VMware ESXi. Uma réplica de VM é uma cópia exata de uma VM, semelhante a um clone de VM. A vantagem da replicação de VM é a capacidade de automatizar o processo de VM e salvar um estado de VM para vários pontos no tempo em uma réplica de VM usando soluções que aproveitam a funcionalidade de snapshot de VM.
NAKIVO Backup & Replication é uma solução poderosa de proteção de dados que suporta backup e replicação de VMs VMware vSphere. Assim, você pode criar um clone de VM (réplica) em qualquer host ou cluster ESXi.
A vantagem de criar clones de VM com o NAKIVO é que você pode clonar máquinas virtuais de um host ESXi para outro, mesmo que esses hosts não sejam gerenciados pelo vCenter. Você pode adicionar o vCenter, incluindo todos os hosts ESXi gerenciados, ao inventário, ou adicionar vários hosts ESXi autônomos. A configuração é feita em uma interface amigável ao usuário.
Outros benefícios do uso da solução NAKIVO incluem a capacidade de automatizar replicação e replicação a partir de backup, opções de agendamento e retenção flexíveis, replicação em tempo real para os RPOs mais rígidos, e Recuperação de Site para orquestração de DR.
Para clonar máquinas virtuais usando a replicação de VM, faça o seguinte:
- Adicione hosts ESXi ou vCenter Server à solução NAKIVO indo para Configurações > Inventário e clique em + para adicionar itens. Você também pode clicar em um host ESXi ou vCenter exibido no inventário para visualizar VMs que residem nesse recurso.
-
o novo assistente de trabalho de replicação para vmware vsphere abre com 7 etapas.
- origem. selecione a vm original que você deseja clonar. selecionamos windows-vm no host esxi 192.168.101.201. clique em avançar em cada etapa do assistente para continuar.
- destino. selecione um contêiner, que pode ser um host esxi ou cluster gerenciado pelo vcenter, onde armazenar a réplica da vm (esse recurso deve estar adicionado ao inventário do nakivo). selecione um datastore. você pode selecionar um datastore conectado ao host esxi ou cluster selecionado. selecione uma pasta de vm no recurso selecionado, se necessário.
- Redes. A réplica da VM (clone da VM ESXi) deve estar conectada a uma rede de VM. Você pode conectar a réplica da VM a qualquer rede disponível no host ESXi ou cluster selecionado. Essa funcionalidade está disponível graças ao recurso de mapeamento de rede, que é especialmente útil ao replicar VMs para outros hosts ESXi. Além disso, você pode pular esta opção e conectar uma VM à rede padrão.
- Re-IP. Se você usar o mapeamento de rede e conectar a VM a uma rede diferente da rede de origem, o próximo passo é alterar os endereços IP na configuração dos adaptadores de rede da VM para corresponder ao endereçamento da sub-rede de destino. Ao usar o recurso Re-IP, não é necessário editar as configurações de rede dentro do sistema operacional convidado manualmente após concluir a replicação.
- Agendamento. Você pode executar a replicação de VM manualmente, ou seja, sob demanda, ou agendar uma tarefa de replicação de VM para criar uma VM clone (VM réplica) em intervalos regulares.
- Retenção. Você pode criar vários pontos de recuperação e mantê-los pelo tempo apropriado, configurando as configurações de retenção.
- Opções. Insira um nome para a tarefa de replicação e configure opções que possam melhorar a velocidade, segurança e confiabilidade da replicação de VM. Clique em Concluir & Executar para salvar as configurações da tarefa e executar a tarefa de replicação de VM para criar uma máquina virtual VMware clone com este método.
- Você é redirecionado para a página de Empregos, onde pode monitorar o progresso do trabalho de replicação. Aguarde até que o trabalho esteja concluído.
Como você pode ver, criar um clone de VM com a solução NAKIVO é direto. Além disso, o NAKIVO Backup & Replication suporta Replicação em Tempo Real para VMs VMware para fins de recuperação de desastres para VMs críticas que requerem RPOs estritos de até 1 segundo.