Gerenciar a replicação assíncrona do disco permanente


Neste documento, descrevemos como iniciar e interromper a replicação assíncrona do disco permanente (DP).

A replicação assíncrona de DP é útil para recuperação de desastres de baixo RPO e RTO. Para saber mais sobre replicação assíncrona, consulte Sobre replicação assíncrona de disco permanente.

Limitações

  • Um disco principal só pode ser replicado para um disco secundário por vez.
  • Após a interrupção da replicação, não será possível retomar a replicação para o mesmo disco. Crie um novo disco secundário e reinicie a replicação.
  • Não é possível anexar, excluir ou criar snapshots dos discos secundários enquanto eles estão no processo de replicação.
  • Se você usar um disco regional como disco secundário e ocorrer uma falha temporária zonal em uma das zonas do disco secundário, a replicação do disco primário para o disco secundário falhará.

Antes de começar

  • Se você precisar alinhar a replicação em vários discos, crie um grupo de consistência.
  • Crie um disco principal.
  • Crie um disco secundário.
  • Configure a autenticação, caso ainda não tenha feito isso. A autenticação é o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud. Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no Compute Engine selecionando uma das seguintes opções:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

Iniciar replicação

Inicie a replicação usando o console do Google Cloud, o Google Cloud CLI ou o REST.

Console

  1. No console do Google Cloud, acesse a página Replicação assíncrona.

    Acessar "Replicação assíncrona"

  2. Clique no nome do disco secundário em que você quer iniciar a replicação.

  3. Clique em Iniciar replicação. A janela Start replicação é aberta.

  4. Clique em Iniciar replicação.

gcloud

Inicie a replicação usando o comando gcloud compute disks start-async-replication:

gcloud compute disks start-async-replication PRIMARY_DISK_NAME \
    --PRIMARY_LOCATION_FLAG=PRIMARY_LOCATION \
    --secondary-disk=SECONDARY_DISK_NAME \
    --SECONDARY_LOCATION_FLAG=SECONDARY_LOCATION \
    --secondary-disk-project=SECONDARY_PROJECT

Substitua:

  • PRIMARY_DISK_NAME: o nome do disco principal.
  • PRIMARY_LOCATION_FLAG: a sinalização de localização do disco principal. Para discos regionais, use --region. Para discos zonais, use --zone.
  • PRIMARY_LOCATION: a região ou zona do disco principal. Para discos regionais, use a região. Para discos zonais, use a zona.
  • SECONDARY_DISK_NAME: o nome do disco secundário.
  • SECONDARY_LOCATION_FLAG: a sinalização de localização do disco secundário. Para discos regionais, use --secondary-disk-region. Para discos zonais, use --secondary-disk-zone.
  • SECONDARY_LOCATION: a região ou zona do disco secundário. Para discos regionais, use a região. Para discos zonais, use a zona.
  • SECONDARY_PROJECT: o projeto que contém o disco secundário.

REST

Inicie a replicação usando um dos seguintes métodos:

  • Inicie a replicação para discos zonais usando o método disks.startAsyncReplication:

    POST https://compute.googleapis.com/compute/v1/projects/PRIMARY_DISK_PROJECT/zones/PRIMARY_LOCATION/disks/PRIMARY_DISK_NAME/startAsyncReplication
    
    {
    "asyncSecondaryDisk": "projects/SECONDARY_DISK_PROJECT/SECONDARY_LOCATION_PARAMETER/SECONDARY_LOCATION/disks/SECONDARY_DISK_NAME"
    }
    
  • Inicie a replicação para discos regionais usando o método regionDisks.startAsyncReplication:

    POST https://compute.googleapis.com/compute/v1/projects/PRIMARY_DISK_PROJECT/regions/PRIMARY_LOCATION/regionDisks/PRIMARY_DISK_NAME/startAsyncReplication
    
    {
    "asyncSecondaryDisk": "projects/SECONDARY_DISK_PROJECT/SECONDARY_LOCATION_PARAMETER/SECONDARY_LOCATION/disks/SECONDARY_DISK_NAME"
    }
    

Substitua:

  • PRIMARY_DISK_PROJECT: o projeto que contém o disco principal.
  • PRIMARY_LOCATION: a região ou zona do disco principal. Para discos regionais, use a região. Para discos zonais, use a zona.
  • PRIMARY_DISK_NAME: o nome do disco principal.
  • SECONDARY_DISK_PROJECT: o projeto que contém o disco secundário.
  • SECONDARY_LOCATION_PARAMETER: o parâmetro de localização do disco secundário. Para discos regionais, use regions. Para discos zonais, use zones.
  • SECONDARY_LOCATION: a região ou zona do disco secundário. Para discos regionais, use a região. Para discos zonais, use a zona.
  • SECONDARY_DISK_NAME: o nome do disco secundário.

Parar replicação

É possível interromper a replicação para um único disco primário ou secundário ou para todos os discos em um grupo de consistência. Se você interromper a replicação de um único disco em um grupo de consistência, o tempo de replicação desse disco vai ficar dessincronizado com os outros discos no grupo de consistência.

A interrupção da replicação é realizada nos cenários failover e failback. Se você interromper a replicação, não será possível reiniciá-la no mesmo disco secundário. Se você quiser reiniciar a replicação, crie um novo disco secundário e comece novamente.

Quando você interrompe a replicação em um disco, o estado de replicação do disco muda para STOPPED. O estado de replicação do outro disco no par de replicações do disco (o disco principal ou secundário correspondente) é atualizado para STOPPED posteriormente. Se você quiser evitar a lacuna de tempo e atualizar o estado de replicação do outro disco imediatamente para STOPPED, também será necessário interromper a replicação manualmente no outro disco. A interrupção da replicação nos dois discos não afeta o momento em que a replicação é interrompida, apenas os estados de replicação dos discos.

Parar a replicação para um único disco

Interrompa a replicação de um único disco usando o console do Google Cloud, a Google Cloud CLI ou o REST.

Console

Para interromper a replicação, faça o seguinte:

  1. No console do Google Cloud, acesse a página Replicação assíncrona.

    Acessar "Replicação assíncrona"

  2. Clique no nome do disco primário ou secundário em que você quer interromper a replicação. A página Gerenciar disco é aberta.

  3. Clique em Encerrar replicação. A janela Encerrar replicação é aberta.

  4. Clique em Encerrar replicação.

gcloud

Interrompa a replicação usando o comando gcloud compute disks stop-async-replication:

gcloud compute disks stop-async-replication DISK_NAME \
    --LOCATION_FLAG=LOCATION

Substitua:

  • DISK_NAME: o nome do disco.
  • LOCATION_FLAG: a sinalização de localização do disco. Para um disco regional, use --region. Para um disco zonal, use --zone.
  • LOCATION: a região ou zona do disco. Para discos regionais, use a região. Para discos zonais, use a zona.

REST

Pare a replicação usando um dos seguintes métodos:

  • Interrompa a replicação para discos zonais usando o método disks.stopAsyncReplication:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/LOCATION/disks/DISK_NAME/stopAsyncReplication
    {
    }
    
  • Interrompa a replicação para discos regionais usando o método regionDisks.stopAsyncReplication:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/LOCATION/regionDisks/DISK_NAME/stopAsyncReplication
    {
    }
    

Substitua:

  • PROJECT: o projeto que contém o disco.
  • DISK_NAME: o nome do disco.
  • LOCATION: a zona ou região do disco. Para discos zonais, use a zona. Para discos regionais, use a região.

Parar a replicação para um grupo de consistência

Interrompa a replicação de todos os discos em um grupo de consistência usando o console do Google Cloud, a Google Cloud CLI ou o REST.

Console

Para interromper a replicação para todos os discos em um grupo de consistência, faça o seguinte:

  1. No console do Google Cloud, acesse a página Replicação assíncrona.

    Acessar "Replicação assíncrona"

  2. Clique na guia Grupos de consistência.

  3. Clique no nome do grupo de consistência para interromper a replicação. A página Gerenciar grupo de consistência é aberta.

  4. Clique em Encerrar replicação. A janela Encerrar replicação é aberta.

  5. Clique em Encerrar replicação.

gcloud

Interrompa a replicação para todos os discos em um grupo de consistência usando o comando gcloud compute disks stop-group-async-replication:

gcloud compute disks stop-group-async-replication CONSISTENCY_GROUP \
--LOCATION_FLAG=LOCATION

Substitua:

  • CONSISTENCY_GROUP: o URL do grupo de consistência. Por exemplo, projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME.
  • LOCATION_FLAG: a sinalização de localização dos discos no grupo de consistência. Para discos regionais, use --region. Para discos zonais, use --zone.
  • LOCATION: a região ou zona do disco. Para discos regionais, use a região. Para discos zonais, use a zona.

REST

Pare a replicação para todos os discos em um grupo de consistência usando um dos seguintes métodos:

  • Interrompa a replicação para discos zonais usando o método disks.stopGroupAsyncReplication:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/LOCATION/disks/stopGroupAsyncReplication
    {
    "resourcePolicy": "CONSISTENCY_GROUP"
    }
    
  • Interrompa a replicação para discos regionais usando o método regionDisks.stopGroupAsyncReplication:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/LOCATION/regionDisks/DISK_NAME/stopAsyncReplication
    {
    "resourcePolicy": "CONSISTENCY_GROUP"
    }
    

Substitua:

  • DISK_NAME: o nome do disco.
  • LOCATION: a zona ou região do disco. Para discos zonais, use a zona. Para discos regionais, use a região.
  • CONSISTENCY_GROUP: o URL do grupo de consistência. Por exemplo, projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME.

A seguir