Teste uma instância principal para alta disponibilidade

O AlloyDB para PostgreSQL oferece tipos de instâncias regionais e zonais. Para ajudar a garantir a elevada disponibilidade (HA), cada instância principal do AlloyDB regional tem um nó ativo e um nó de reserva, localizados em duas zonas diferentes. Se o nó ativo ficar indisponível por qualquer motivo, o AlloyDB promove automaticamente o nó de reserva para se tornar o novo nó ativo.

Pode testar esta funcionalidade de HA automática através da injeção de falhas para forçar abruptamente a colocação offline do nó ativo da sua instância principal. Em seguida, o AlloyDB ativa o procedimento de HA de emergência que verifica o estado da instância principal e, em seguida, reatribui o nó de reserva à função de nó ativo.

A injeção de falhas também inicia uma operação de longa duração que repõe o nó anteriormente ativo online após um breve intervalo. Esse nó torna-se o novo nó de espera da instância principal.

Para um método mais rápido de trocar as funções ativa e de reserva dos nós da instância principal, consulte o artigo Efetue uma comutação por falha de uma instância principal manualmente.

Antes de começar

  • O Google Cloud projeto que está a usar tem de ter sido ativado para aceder ao AlloyDB.
  • Tem de ter uma destas funções de IAM no Google Cloud projeto que está a usar:
    • roles/alloydb.admin (a função IAM predefinida de administrador do AlloyDB)
    • roles/owner (a função de IAM básica de proprietário)
    • roles/editor (a função de IAM básica de editor)

    Se não tiver nenhuma destas funções, contacte o administrador organizacional para pedir acesso.

Simule uma indisponibilidade com uma injeção de falhas

Para testar a capacidade de recuperação de HA da sua instância principal encerrando abruptamente o respetivo nó ativo, use o comando gcloud alloydb instances inject-fault. Após a conclusão de uma operação de execução prolongada, o AlloyDB repõe o nó.

gcloud alloydb instances inject-fault INSTANCE_ID \
    --fault-type=stop-vm \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID
  • INSTANCE_ID: o ID da instância.
  • REGION_ID: a região onde a instância está localizada.
  • CLUSTER_ID: o ID do cluster onde a instância está posicionada.
  • PROJECT_ID: o ID do projeto onde o cluster está localizado.