Fazer failover manual de uma instância principal ou secundária

Este documento descreve como fazer failover manual de uma instância principal ou secundária.

Alta disponibilidade em instâncias primárias e secundárias

O AlloyDB para PostgreSQL oferece suporte à alta disponibilidade nas instâncias primárias e secundárias.

Alta disponibilidade em instâncias principais

Para garantir a alta disponibilidade (HA), cada instância primária do AlloyDB tem um nó ativo e um nó de espera, que estão localizados em zonas diferentes. Se o nó ativo ficar indisponível, o AlloyDB vai fazer failover automaticamente da instância principal para o nó em espera, tornando-o o novo nó ativo.

É possível fazer failover manual da instância principal para o nó de espera a qualquer momento, mesmo que o nó ativo esteja funcionando conforme o esperado. Quando você inicia um failover manual, o AlloyDB faz o seguinte:

  1. Deixa o nó principal off-line.

  2. Transforma o nó em espera no novo nó ativo.

  3. Reativa o nó ativo anterior como o novo nó em espera.

O failover manual troca as funções ativa e de espera dos nós da sua instância principal. Você pode acionar um failover manual sempre que quiser que essa troca ocorra.

Por exemplo, imagine que você tenha uma instância principal cujos nós ativos e em espera residam nas zonas us-central1-a e us-central1-b, respectivamente. Uma interrupção em us-central1-a aciona um failover automático, resultando na zona us-central1-b que hospeda o nó ativo. Se você preferir manter o nó ativo na zona us-central1-a, inicie um failover manual para fazer com que o AlloyDB troque os nós da instância principal de volta para os locais anteriores à interrupção.

Durante as operações de manutenção, uma instância principal de alta disponibilidade e uma instância básica geralmente têm um tempo de inatividade mínimo de menos de um segundo. Como o failover manual é um procedimento intencional e controlado, ele não foi projetado para simular falhas inesperadas de hardware ou rede. Em vez disso, é possível testar a alta disponibilidade da sua instância principal usando a injeção de falhas.

Alta disponibilidade em instâncias secundárias

O AlloyDB oferece alta disponibilidade em instâncias secundárias para oferecer suporte à recuperação de desastres e reduzir o tempo de inatividade quando uma instância secundária fica indisponível.

Por padrão, a alta disponibilidade é configurada em uma instância secundária.

Uma instância secundária do AlloyDB inclui os seguintes nós:

  • Um nó secundário ativo, que responde a solicitações
  • Um nó secundário em espera

Os nós ativos e de espera estão localizados em duas zonas diferentes em uma região. Se o AlloyDB detectar a indisponibilidade do nó ativo, ele fará failover para o nó em espera, que vai atuar como o novo nó ativo. Seus dados são redirecionados para o novo nó ativo. Esse processo é chamado de failover.

Antes de começar

  • O projeto Google Cloud que você está usando precisa ter sido ativado para acessar o AlloyDB.
  • Você precisa ter um destes papéis do IAM no projeto Google Cloud que está usando:
    • roles/alloydb.admin (o papel predefinido do IAM de administrador do AlloyDB)
    • roles/owner (o papel básico Proprietário do IAM)
    • roles/editor (o papel básico de editor do IAM)

    Se você não tiver nenhum desses papéis, entre em contato com o administrador da organização para solicitar acesso.

Executar um failover manual em uma instância principal

Console

  1. Acessar a página Clusters.

Acessar Clusters

  1. Na coluna Nome do recurso, clique no nome de um cluster.

  2. Na seção Instâncias no seu cluster, abra o Menu de ações da instância da sua instância principal.

  3. Clique em Failover.

  4. Na caixa de diálogo exibida, insira o ID da instância.

  5. Clique em Acionar failover.

gcloud

Execute o comando gcloud alloydb instances failover:

gcloud alloydb instances failover INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID

Substitua:

  • INSTANCE_ID: o ID da instância.
  • REGION_ID: a região em que a instância está localizada.
  • CLUSTER_ID: o ID do cluster em que a instância está localizada.
  • PROJECT_ID: o ID do projeto em que o cluster está localizado.

Para confirmar que o failover funcionou, siga estas etapas:

  1. Antes de fazer o failover, anote as zonas dos nós da instância principal.

  2. Depois de executar o failover, observe as novas zonas dos dois nós.

  3. Confirme se as zonas dos nós ativos e em espera trocaram de lugar.

Executar um failover manual em uma instância secundária

Fazer failover manual de uma instância secundária é semelhante às etapas seguidas para fazer failover manual da instância principal.

Para fazer failover manual de um cluster secundário, siga estas etapas:

Console

  1. No console Google Cloud , acesse a página Clusters.

    Acessar Clusters

  2. Clique no nome de um cluster secundário na coluna Nome do recurso.

  3. Na página Visão geral, acesse a seção Instâncias no cluster, escolha a instância secundária e clique em Failover.

  4. Na caixa de diálogo exibida, insira o ID da instância e clique em Acionar failover.

gcloud

Para usar a CLI gcloud, instale e inicialize a Google Cloud CLI ou use o Cloud Shell.

Use o comando gcloud alloydb instances failover para forçar uma instância secundária a fazer failover do standby.

 gcloud alloydb instances failover SECONDARY_INSTANCE_ID \
 --cluster=SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
 --project=PROJECT_ID

Substitua:

  • SECONDARY_INSTANCE_ID: o ID da instância secundária que você quer fazer failover.
  • SECONDARY_CLUSTER_ID: o ID do cluster secundário a que a instância secundária está associada.
  • REGION_ID: o ID da região da instância secundária, por exemplo, us-central1.
  • PROJECT_ID: o ID do projeto do cluster secundário.

A seguir