Como Configurar a Replicação do Hyper-V [Passo a Passo]

Você gerencia máquinas virtuais (VM) Hyper-V e deseja implementar um plano de recuperação de desastres? Você pode começar com a replicação do Hyper-V. As coisas podem dar errado, e provavelmente vão. E se você tiver apenas uma cópia das suas máquinas virtuais, então está se preparando para um mundo de dor.

Ter uma ou mais réplicas das suas VMs, especialmente as críticas, não precisa ser complexo e caro. A Microsoft incluiu um recurso de replicação embutido no Hyper-V, que você pode configurar sem a complicação de introduzir software de terceiros ou um dispositivo na sua infraestrutura.

Se estiver pronto para aprender como habilitar a replicação do Hyper-V e estar preparado para evitar possíveis perdas de dados catastróficas, então vamos começar!

Pré-requisitos

Este tutorial será uma demonstração prática. Se quiser acompanhar, certifique-se de ter o seguinte:

Dois servidores host Hyper-V. Esses dois hosts podem estar em um domínio do Active Directory (AD) ou em um grupo de trabalho. Este tutorial usará dois servidores com os seguintes detalhes.

Hostname IP Address Designation Location Operating System
hyperv-ny 10.1.0.4 Primary Server Primary Site Windows Server 2019 Datacenter (version 1809)
hyperv-wa 10.0.0.4 Replica Server Secondary Site Windows Server 2019 Datacenter (version 1809)

O host Hyper-V primário deve ter pelo menos uma máquina virtual convidada para replicar. Neste tutorial, o host primário terá uma VM convidada chamada webserver.

Para obter mais detalhes sobre os requisitos do sistema do Hyper-V, consulte Requisitos do sistema para Hyper-V no Windows Server.

Preparando os Hosts para a Replicação do Hyper-V

Supondo que você já tenha os pré-requisitos em vigor, não pense em iniciar a replicação do Hyper-V ainda. Antes de replicar máquinas virtuais, ainda há várias preparações a serem feitas. Abaixo estão os itens gerais que você precisa verificar antes que tudo esteja pronto.

Permitindo o Tráfego de Replicação do Hyper-V

Esta seção só se aplica se você estiver usando o Firewall do Windows em seus hosts do Hyper-V. Caso contrário, você pode pular para a próxima parte.

Ou, se estiver usando o Firewall do Windows atualmente e quiser desativá-lo completamente, leia Como Desativar ou Desligar o Firewall do Windows (Todas as Maneiras).

Ao instalar a função Hyper-V no servidor, o Windows cria duas regras de entrada adicionais no Firewall do Windows. Essas duas regras controlam se permitem o tráfego de replicação do Hyper-V e são:

  • Ouvinte HTTP de Réplica do Hyper-V (TCP-In) – Regra de entrada para o ouvinte de réplica do Hyper-V para aceitar conexões HTTP para replicação (via porta 80, não criptografada).
  • Listener HTTPS do Hyper-V Replica (TCP-In) – Regra de entrada para o ouvinte do Hyper-V Replica para aceitar conexões HTTPS para replicação (via porta 443, criptografada com certificado).

Por padrão, esses Firewalls do Windows estão desativados, bloqueando efetivamente o tráfego de replicação do Hyper-V para o host. Mas o foco deste tutorial é configurar a replicação do Hyper-V apenas via HTTPS e não HTTP.

Para habilitar a regra do firewall de replicação do Hyper-V, siga estas etapas.

1. Faça login no servidor réplica e abra o PowerShell como administrador.

2. Execute o comando Enable-Netfirewallrule abaixo no PowerShell para habilitar a regra.

# Habilitar regra de firewall para tráfego de replicação Hyper-V HTTPS.
Enable-Netfirewallrule -DisplayName 'Hyper-V Replica HTTPS Listener (TCP-In)'

3. Por fim, para confirmar que você habilitou com sucesso as regras do firewall, execute o comando abaixo.

Get-Netfirewallrule -DisplayName 'Hyper-V Replica HTTPS Listener (TCP-In)'

Se tudo ocorreu bem, você deverá ver um resultado semelhante à captura de tela abaixo.

Enabling Hyper-V replication firewall rules

Configurando os Registros do Host do Hyper-V

Se seus hosts do Hyper-V puderem resolver os nomes um do outro por meio da pesquisa DNS, você pode pular esta seção.

Quando for hora de habilitar a replicação do Hyper-V, você especificará o nome do servidor de réplica durante a configuração. Se o Hyper-V conseguir encontrar o servidor secundário pelo nome depende da resolução adequada do nome.

Para garantir que os nós do Hyper-V possam encontrar os nomes um do outro na rede, você precisará editar o arquivo hosts em ambos os servidores e adicionar seus respectivos nomes e endereços IP. Para fazer isso, siga as instruções abaixo.

  1. No servidor primário, abra o PowerShell como administrador.

2. Execute o comando abaixo para abrir o arquivo hosts no notepad.exe para edição.

notepad.exe "$env:windir\system32\drivers\etc\hosts"

3. Assim que o arquivo hosts estiver aberto, role até o final do editor de texto e adicione o endereço IP e o nome do servidor réplica da seguinte maneira.

Certifique-se de usar seu próprio endereço IP e nome do servidor.

10.1.0.4	hyperv-wa

4. Após editar o arquivo, pressione CTRL+S ou clique em Arquivo —> Salvar para salvar as alterações.

5. Repita os mesmos passos no servidor réplica e adicione o nome e endereço IP do servidor primário ao arquivo hosts do servidor de réplica. A captura de tela abaixo mostra o estado final lado a lado dos arquivos hosts de ambos os servidores.

Updating the hosts file

Criando Certificados Autoassinados

Esta seção se aplica apenas se a replicação do Hyper-V usar autenticação baseada em certificado (HTTPS). Se os hosts do Hyper-V estiverem associados a um domínio e usar autenticação Kerberos (HTTP), você pode pular esta seção.

A replicação do Hyper-V via HTTPS requer que tanto o servidor primário quanto o de réplica usem um certificado emitido por um emissor comum. O Hyper-V usa esses certificados para autenticar o servidor primário para o servidor de réplica.

Em vez de comprar certificados de um provedor externo, como DigiCert ou NameCheap, você pode gerar certificados autoassinados gratuitos para uso na replicação do Hyper-V.

Para autenticação baseada em certificado entre dois hosts do Hyper-V, serão necessários três certificados. Um certificado raiz e um certificado de servidor para cada host. Siga as etapas abaixo para gerar esses certificados.

1. No servidor host primário, abra o PowerShell como administrador.

2. Em seguida, defina as variáveis a seguir executando os comandos abaixo no PowerShell. Consulte os comentários embutidos para entender cada variável e substitua seus valores conforme necessário.

# Configurar as Variáveis dos Certificados

## Especifique o nome do novo certificado da CA raiz.
$rootCA_Name = 'Hyper-V Root CA'

## Especifique os nomes dos servidores Hyper-V.
$hostnames = @('hyperv-ny','hyperv-wa')

## Qual é a senha para os certificados PFX exportados.
$CertPassword = 'this is a strong password' | ConvertTo-SecureString -Force -AsPlainText

## Onde exportar o certificado PFX após a criação. Certifique-se de que esta pasta exista.
$CertFolder = 'C:\HPVCerts'

3. Após definir as variáveis do certificado, execute o comando abaixo para gerar o certificado raiz. Este comando cria um certificado raiz autoassinado usando o cmdlet New-SelfSignedCertificate na loja de certificados Pessoal do servidor.

## Criar e salvar o certificado da CA raiz na loja de certificados 'Pessoal'.
## Válido por 10 anos.
$rootCA = New-SelfSignedCertificate `
-Subject $rootCA_Name  `
-FriendlyName $rootCA_Name `
-KeyExportPolicy Exportable  `
-KeyUsage CertSign  `
-KeyLength 2048  `
-KeyUsageProperty All  `
-KeyAlgorithm 'RSA'  `
-HashAlgorithm 'SHA256'  `
-Provider "Microsoft Enhanced RSA and AES Cryptographic Provider"  `
-NotAfter (Get-Date).AddYears(10)

4. Para fazer o servidor confiar no próprio certificado raiz, copie o certificado raiz para a Loja de Certificados de Autoridades de Certificação Raiz Confiáveis executando o comando abaixo.

## Copie o CA raiz da loja 'Pessoal' para a loja 'Autoridades de Certificação Raiz Confiáveis'.
$rootStore = [System.Security.Cryptography.X509Certificates.X509Store]::new("Root","LocalMachine")
$rootStore.Open("ReadWrite")
$rootStore.Add($rootCA)
$rootStore.Close()

5. Em seguida, execute o comando abaixo para exportar o certificado raiz para um arquivo usando o cmdlet Export-PfxCertificate. Você precisa exportar o certificado para poder copiá-lo para o servidor réplica posteriormente.

## Exporte o CA raiz
$rootCA | Export-PfxCertificate -FilePath "$CertFolder\$($rootCA_Name).pfx" -Password $CertPassword -Force
Exporting the Root Certificate

6. Agora, gere os certificados do servidor assinados pelo certificado raiz que você criou. Execute o comando abaixo para criar os certificados do servidor para cada host do Hyper-V e exporte cada certificado para um arquivo.

$hostnames | ForEach-Object {
	$name = $_
	## Crie o certificado
	New-SelfSignedCertificate `
	-FriendlyName $name `
	-Subject $name `
	-KeyExportPolicy Exportable `
	-CertStoreLocation "Cert:\LocalMachine\My" `
	-Signer $rootCA `
	-KeyLength 2048  `
	-KeyAlgorithm 'RSA'  `
	-HashAlgorithm 'SHA256'  `
	-Provider "Microsoft Enhanced RSA and AES Cryptographic Provider"  `
	-NotAfter (Get-Date).AddYears(10) |
	## Exporte o certificado
	Export-PfxCertificate -FilePath "$CertFolder\$($name).pfx" -Password $CertPassword -Force
}
Generating and exporting the server certificates

7. Por fim, copie o arquivo do certificado raiz (Hyper-V Root CA.pfx) e o arquivo do certificado do servidor (hyperv-wa.pfx) para o servidor de réplica.

Copying the certificate files to the replica host

Instalando os Certificados no Host de Réplica

Para fazer com que a autenticação baseada em certificado funcione entre os dois hosts do Hyper-V, o mesmo certificado raiz e o certificado do servidor precisam estar presentes também no host de réplica. Siga os passos abaixo para instalar os certificados raiz e do servidor.

1. No host de réplica, abra o PowerShell como administrador.

Para instalar o certificado raiz na loja de Autoridades de Certificação Raiz Confiáveis, execute o comando Import-PfxCertificate abaixo. Certifique-se de alterar os valores das variáveis conforme necessário.

## Especifique o nome do certificado da AC raiz.
$rootCA_Name = 'Hyper-V Root CA'

## Onde encontrar os arquivos de certificado PFX.
$CertFolder = 'C:\HPVCerts'

## Qual é a senha para os certificados PFX exportados.
$CertPassword = 'this is a strong password' | ConvertTo-SecureString -Force -AsPlainText

## Importe a AC raiz
Import-PfxCertificate  "$CertFolder\$($rootCA_Name).pfx" -CertStoreLocation Cert:\LocalMachine\Root -Password $CertPassword
Importing the root certificate

3. Para instalar o certificado do servidor na loja de Certificados Pessoais, execute o comando abaixo.

## Importe o Certificado do Servidor
Import-PfxCertificate  "$CertFolder\$($env:COMPUTERNAME).pfx" -CertStoreLocation Cert:\LocalMachine\My -Password $CertPassword
Importing the server certificate

4. Por último, configure o registro do Hyper-V para desativar a verificação de revogação de certificado. Fazendo isso, o Hyper-V não tentará verificar os detalhes de revogação do certificado – que não existem no certificado autoassinado. Execute o seguinte comando PowerShell New-ItemProperty.

## Desativar a Verificação de Revogação de Certificado do Hyper-V.
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication" -Name "DisableCertRevocationCheck" -Value 1 -PropertyType DWORD -Force

Configurando a Replicação do Hyper-V

Você agora terminou de preparar seus hosts do Hyper-V. Agora você pode começar a habilitar a replicação do Hyper-V e iniciar a replicação das MVMs.

Habilitando o Host como um Servidor de Réplica

Antes que um host do Hyper-V possa hospedar réplicas de MVMs, o host deve ser habilitado como um servidor de réplica primeiro. Para fazer isso, siga as instruções abaixo.

  1. No host de réplica, abra o Gerenciador do Hyper-V. Para fazer isso, execute o comando virtmgmt.msc no PowerShell.
  2. Enquanto estiver na janela do Gerenciador do Hyper-V, clique com o botão direito no nome do servidor de réplica e clique em Configurações do Hyper-V.
Open the Hyper-V settings

3. Em seguida, na janela de configurações do Hyper-V, clique em Configuração de Replicação no painel esquerdo.

No painel direito, marque a caixa que diz Ativar este computador como um servidor de réplica. Isso habilitará todas as outras opções de configuração abaixo.

Nas configurações de Autenticação e portas, marque a caixa Autenticação baseada em certificado de usuário (HTTPS). Deixe o valor da porta como 443.

Enabling the server as a replica

4. Sob as configurações de Autenticação e portas, clique em Selecionar Certificado. Na caixa de diálogo Segurança do Windows, confirme que o certificado está correto e clique em OK.

Selecting the server certificate

Depois de selecionar o certificado, você deve ver que a caixa Especificar o certificado agora mostra os detalhes do certificado.

Certificate details

Nota: Se não houver um certificado válido ou se você não instalou o certificado corretamente, você verá um erro semelhante à imagem abaixo. Nesse caso, você precisará voltar e instalar o certificado.

The error shows no valid certificate

5. Em seguida, em Autorização e armazenamento, selecione Permitir replicação de qualquer servidor autenticado. Fazendo isso, permite que qualquer servidor Hyper-V replique VMs para este servidor, desde que a autenticação baseada em certificado seja bem-sucedida.

Para permitir apenas servidores específicos para replicação, selecione a opção Permitir replicação dos servidores especificados e adicione os detalhes de cada servidor.

Digite ou navegue até o local onde deseja armazenar os arquivos da réplica. Neste exemplo, o local de armazenamento é C:\Hyper-V\Discos Rígidos Virtuais. Certifique-se de escolher um local com espaço de armazenamento suficiente para acomodar os arquivos de réplica da VM.

Por fim, clique em OK para salvar as alterações.

Choosing the authorization and storage

Habilitando a Replicação de Máquinas Virtuais

Até agora, você habilitou o host de réplica para aceitar a replicação Hyper-V recebida para VMs. Neste ponto, você está pronto para habilitar uma VM para replicação. Siga as etapas abaixo para prosseguir.

1. No host primário, abra a janela do Gerenciador do Hyper-V.

2. Em seguida, clique no servidor Hyper-V no painel esquerdo. Sob a lista de VMs, clique na VM que você pretende replicar e clique em Permitir replicação no painel Ações.

Selecting the VM for Hyper-V replication

3. Na janela Ativar Replicação para <nome da VM> que aparecer, clique em Avançar na página Antes de começar.

4. Na página Especificar Servidor de Réplica, digite o nome do host do servidor de réplica na caixa Servidor de Réplica, e clique em Avançar.

Specifying the target replica server

5. Agora, na página Especificar Parâmetros de Conexão, altere o número da porta do Servidor de Réplica para 443.

Embaixo das opções de Tipo de Autenticação, clique para selecionar Autenticação baseada em certificado de usuário (HTTPS).

Você vai notar que as informações do certificado neste ponto estão vazias. Para escolher um certificado, clique em Selecionar Certificado.

Specifying the port and authentication type

6. Em seguida, na caixa de diálogo Selecionar certificado, clique para selecionar o certificado que você gerou anteriormente que tenha o nome do servidor do host principal. Após selecionar o certificado, clique em OK.

Selecting the server certificate

7. Depois de selecionar o certificado, você deverá ver agora as informações do certificado, como mostrado abaixo. Clique em Avançar para prosseguir.

Confirming the certificate details

8. Em seguida, selecione quais Discos Rígidos Virtuais (VHD) incluir na replicação. Se houver mais de um VHD, certifique-se de selecionar o VHD que contém o sistema operacional da VM. O exemplo abaixo tem apenas um VHD. Após fazer sua seleção, clique em Avançar.

Selecting VHDs to replicate

9. Na próxima página, escolha o intervalo de replicação na lista suspensa. Esse valor determina com que frequência o Hyper-V envia alterações para o servidor de réplicas. O intervalo padrão é de 5 minutos. Outras opções disponíveis são 30 segundos e 15 minutos. Clique em Avançar.

Choosing the Hyper-V replication interval

10. Na página Configurar Pontos de Recuperação Adicionais, clique na opção para Manter apenas o ponto de recuperação mais recente.

Ao escolher esta opção, o Hyper-V manterá apenas o ponto de recuperação mais recente ou estado da VM no servidor de réplicas. Esta opção utiliza menos espaço de armazenamento, mas permite apenas a recuperação de um único ponto no tempo. Clique em Avançar para continuar.

Selecting the recovery points to maintain

11. Na página Escolher Método de Replicação Inicial, existem três opções sobre como enviar a cópia inicial do VHD para o servidor de réplicas:

  • Enviar cópia inicial pela rede. Esta opção copia o VHD pela rede.
  • Enviar cópia inicial usando mídia externa. Escolhendo esta opção, você pode salvar a cópia do VHD em armazenamento externo, como um disco rígido externo. Você pode então transportar fisicamente o armazenamento e conectá-lo ao servidor de réplicas para a cópia.
  • Usar uma máquina virtual existente no servidor de réplicas como cópia inicial. Esta opção é aplicável apenas se você já restaurou uma cópia da VM no servidor de réplicas.

Qualquer opção que você escolher na vida real dependerá da sua avaliação. Mas para este tutorial, selecione Enviar cópia inicial pela rede.

A seguir, selecione Iniciar replicação imediatamente para iniciar o processo de replicação assim que tiver terminado a configuração.

Choosing the initial replication method

12. Na página Resumo, reveja a configuração de replicação e clique em Concluir para finalizar.

Finalizing the replication configuration

13. Aguarde a mensagem de confirmação que diz que a Replicação foi ativada com sucesso. Clique em Fechar para voltar à janela do Gerenciador do Hyper-V.

A replicação do Hyper-V replica a máquina virtual, sua configuração e VHDs. Mas a réplica resultante no servidor de réplica não está conectada. Como você pode ver abaixo, você ainda precisa configurar a conexão de rede da VM de réplica.

Confirming the replication is now enabled

Verificando a Saúde da Replicação

Então, você ativou a replicação do Hyper-V para sua VM selecionada. Como saber se a replicação do Hyper-V ainda está em andamento, concluída ou se falhou? Felizmente, o Hyper-V oferece a conveniência de verificar a saúde da replicação diretamente no Gerenciador do Hyper-V.

Para verificar a saúde da replicação da VM, siga estas etapas.

Clique com o botão direito no nome da VM na janela do Gerenciador do Hyper-V no host primário —> Replicação —> Visualizar Saúde da Replicação.

Opening the VM replication health

Inicialmente, você verá uma mensagem de Estado de Replicação como mostra a captura de tela abaixo, indicando que a replicação ainda está em andamento.

Initial replication in progress

E quando a replicação do Hyper-V estiver concluída, você deverá ver uma mensagem semelhante à abaixo.

And that’s it! You’ve successfully set up Hyper-V replication for your VM.

E é isso! Você configurou com sucesso a replicação do Hyper-V para sua VM.

Conclusão

No final, configurar a replicação do Hyper-V é algo que os administradores de sistema devem considerar ao planejar e implementar a recuperação de desastres. Fazê-lo pode ser menos dispendioso do que perder dados ou tempos de inatividade prolongados no serviço. Imagine se seu servidor de folha de pagamento ficar offline?

Você já usou a replicação do Hyper-V? O que você achou? Você recomendaria a outras pessoas, ou há alguma razão pela qual acredita que as organizações deveriam evitá-la?

Source:
https://adamtheautomator.com/hyper-v-replication/