Gerenciar a Réplica de Armazenamento no VMM

A Réplica de Armazenamento foi introduzida no Windows Server 2016. Ele permite a replicação síncrona independente de armazenamento, em nível de bloco, entre clusters ou servidores para preparação e recuperação de desastres, e a extensão de um cluster de failover entre locais para alta disponibilidade. A replicação síncrona habilita o espelhamento de dados em locais físicos com volumes consistentes com falha, fazendo com que não haja perda de dados no nível do sistema de arquivos. A replicação assíncrona permite a extensão de site além das dimensões metropolitanas com a possibilidade de perda de dados.

Saiba mais e revise as perguntas frequentes.

Este artigo explica como a Réplica de Armazenamento se integra ao System Center – VMM (Virtual Machine Manager) e descreve como configurar a Réplica de Armazenamento usando o PowerShell para replicar o armazenamento na malha do VMM.

Réplica de armazenamento no VMM

Você pode usar a Réplica de Armazenamento para replicar dados de cluster ou dados de arquivo do Hyper-V. O uso da Réplica de Armazenamento no VMM oferece muitas vantagens comerciais:

  • Elimina o custo e a complexidade associados às soluções de replicação síncrona, como SAN.
  • A replicação síncrona minimiza o tempo de inatividade e a perda de dados. Ele fornece um RPO de 0 (perda zero de dados). O RTO (indisponibilidade de dados) ocorre apenas durante o tempo em que um site primário falha e um site secundário é iniciado.
  • O hardware de armazenamento de origem e destino não precisa ser idêntico.

Antes de começar

  • O VMM deve estar em execução no Windows Server 2016 ou posterior Datacenter Edition.
  • O Hyper-V deve estar em execução no Windows Server 2016 ou posterior Datacenter, Server Core ou Nano.
  • Há suporte apenas para replicação síncrona. Não há suporte para assíncrono.
  • Você precisa de dois conjuntos de armazenamento, volume ou armazenamento de arquivos. Os locais de origem e destino devem ter o mesmo tipo de armazenamento (arquivo ou volume), mas o armazenamento real pode ser misto. Por exemplo, você pode ter SAN Fibre Channel em uma extremidade e Spaces Direct (no modo hiperconvergente ou desagregado) na outra.
  • Cada conjunto de armazenamento deve estar disponível em cada um dos clusters. O armazenamento de cluster não deve ser compartilhado.
  • Os volumes de origem e destino (incluindo volumes de log) precisam ser idênticos em tamanho e tamanho de bloco. Isso ocorre porque a Réplica de Armazenamento usa replicação de bloco.
  • Você precisa de pelo menos uma conexão de 1 GbE em cada servidor de armazenamento, preferencialmente 10 GbE, iWARP ou InfiniBand.
  • Cada servidor de arquivos ou nó de cluster precisa de regras de firewall que permitam tráfego bidirecional ICMP, SMB (porta 445, mais 5445 para SMB Direct) e WS-MAN (porta 5985) entre todos os nós.
  • Você precisa ser membro do grupo Administrador em cada nó do cluster.
  • A Réplica de Armazenamento só pode ser configurada usando o Windows PowerShell no momento.
  • O armazenamento de origem e destino deve ser gerenciado pelo mesmo servidor VMM.
  • Não há suporte para a integração do VMM com o Azure Site Recovery.
  • Não há suporte para a configuração de ordem de gravação e grupos de consistência.

Etapas de implantação

  1. Identificar armazenamento: identifique o armazenamento de origem e destino que você deseja usar.

  2. Descobrir e classificar: se o armazenamento não estiver atualmente na malha do VMM, você precisará descobri-lo com o VMM. O armazenamento de origem e de destino deve ser gerenciado pelo mesmo servidor VMM. Após a descoberta, crie um pool de armazenamento e uma classificação de armazenamento para ele. Saiba mais.

  3. Emparelhar: Emparelhe a matriz de armazenamento de origem e destino.

  4. Provisionamento: Depois que o armazenamento for emparelhado, você precisará provisionar volumes de dados e log idênticos dos pools de armazenamento de origem e destino criados nas respectivas matrizes de armazenamento. Além de provisionar um volume para dados que serão replicados, você também precisa provisionar um volume para logs de transações de replicação. À medida que os dados são atualizados no armazenamento de origem, o log de transações é anexado e as alterações delta são sincronizadas (usando replicação síncrona) com o armazenamento de destino.

  5. Criar grupos de replicação: depois que os volumes estiverem no lugar, você criará grupos de replicação. Os grupos de replicação são grupos lógicos que contêm vários volumes. Os grupos de replicação precisam ser idênticos, contendo os volumes de dados e log para os sites de origem e destino, respectivamente.

  6. Habilitar replicação: agora você pode habilitar a replicação entre os grupos de replicação de origem e destino.

  7. Atualizar: para finalizar a criação de grupos de replicação e disparar a replicação de dados inicial, você precisa atualizar o provedor de armazenamento primário e secundário. Os dados são replicados para o armazenamento de destino.

  8. Verificar status: agora você pode verificar o status do grupo de replicação primário. Ele deve estar no estado Replicando.

  9. Adicionar VMs: quando a replicação delta está em execução, você pode adicionar VMs que usam o armazenamento contido no grupo de replicação. Quando você adicionar as VMs, elas serão detectadas e começarão a ser replicadas automaticamente.

  10. Executar failover: depois que a replicação estiver em um estado de sincronização, você poderá executar um failover para verificar se ele está funcionando conforme o esperado. Não há um mecanismo de failover de teste, portanto, você executará um failover manual em resposta a interrupções planejadas ou não planejadas. Após o failover, você pode excluir a VM no site de origem (se ela ainda existir) e criar uma VM no site de destino usando os dados replicados.

  11. Executar failback: depois que o failover for concluído e as VMs de réplica estiverem em execução, você poderá fazer failback conforme necessário. Verifique se:

    • Se você executar um failover não planejado e seu local de origem não estiver disponível, você executará um failover para fazer failback do local secundário para o primário e, em seguida, criará a VM no local primário.
    • Se você executar um failover planejado e a VM de origem ainda estiver disponível, será necessário interromper a replicação, remover a VM de origem, criar a VM no local secundário e reiniciar a replicação. Em seguida, no site primário, você pode criar a VM com as mesmas configurações da VM original.

Recuperar objetos do PowerShell

  1. Antes de começar, recupere o nome dos objetos do PowerShell que você deseja usar.

  2. Obtenha o nome da matriz de armazenamento primária e atribua-a a uma variável.

        $PriArray = Get-SCStorageArray - Name $PriArrayName
    
  3. Obtenha o nome da matriz de armazenamento secundária e atribua-a a uma variável.

        RecArray = Get-SCStorageArray - Name $RecArrayName
    
  4. Obtenha o nome do conjunto de armazenamentos primário e atribua-o a uma variável.

        $ $ PriPoolName $RecPool = Get-SCStoragePool -Name $
    
  5. Obtenha o nome do conjunto de armazenamentos secundário e atribua-o a uma variável.

        $ $PriPoolName $RecPool = Get-SCStoragePool -Name $
    

Emparelhar as matrizes de armazenamento

Emparelhe as matrizes de armazenamento primária e secundária usando as variáveis para os nomes das matrizes de armazenamento.

Observação

O nome da matriz deve ser o mesmo que o nome do cluster.

      Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name

Se você criou o cluster fora do VMM e precisa renomear o nome da matriz para corresponder ao nome do cluster, use:

      Get-SCStorageArray -Name "existing-name" | Set-SCStorageArray -Name "new-name"

Provisionar LUNs e criar os grupos de armazenamento

Provisione um LUN do conjunto de armazenamentos para dados e para o log. Em seguida, crie grupos de replicação.

  1. Provisione e crie na origem.

        Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name
    
        $PrimaryVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled"
    
        $PrimaryLogVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS"
    
        $PriRG = New-SCReplicationGroup -Name PriRG -StorageVolume $PrimaryVol -LogStorageVolume $PrimaryLogVol
    
  2. Provisione e crie no destino.

        $RecoveryVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled"
    
        $RecoveryLogVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS"
    
        $RecRG = New-SCReplicationGroup -Name RecRG -CreateOnArray -ProtectionMode Synchronous -StorageVolume $RecoveryVol -LogStorageVolume $RecoveryLogVol
    

Habilitar a replicação

Agora habilite a replicação síncrona entre os grupos de replicação de origem e destino.

    Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation EnableProtection -TargetReplicationGroup $RecRG -EnableProtectionMode Synchronous

Atualizar os provedores de armazenamento

  1. Abra o console do VMM.
  2. Selecione Provedores de recursos>de malha. Clique com o botão direito do mouse em Provedor >Atualizar.

Verificar status de replicação

Recupere o status de replicação do grupo de replicação de origem para garantir que a replicação esteja funcionando conforme o esperado.

    Get replication status Get-SCReplicationGroup | where {($_.Name.EndsWith("PriRG")) -or ($_.Name.EndsWith("RecRG"))}  | fl Name, IsPrimary, ReplicationState, ReplicationHealth

Criar uma VM

Crie uma VM usando um LUN no grupo de replicação de origem. Como alternativa, você pode criar uma VM no console do VMM.

    New-SCVirtualMachine -Name "DemoVM" -VMHost <HostName> -Path $PrimaryVol -VMTemplate <VMTemplate>

Executar um failover

Executar failover.

    Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation PrepareForFailover

    Set-SCReplicationGroup -ReplicationGroup SRecRG -Operation Failover

Fazer failback

Antes de fazer failback, no console do VMM, remova as VMs de origem se elas ainda estiverem disponíveis. Você não pode fazer failback para a mesma VM.

Agora execute o failback:

    Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation ReverseRoles -EnableProtectionMode Synchronous -TargetReplicationGroup $RecRG

Depois de executar o failback, você pode criar VMs no site de origem usando os arquivos VHD/configuração de failback.

Parar replicação

Se você quiser interromper a replicação, precisará executar esse cmdlet na origem e no destino.

    Set-SCReplicationGroup -ReplicationGroup $RecRG -Operation TearDown  Tear down need to be done on both RGs

Saiba mais