Configure a alta disponibilidade

O objetivo de uma configuração de alta disponibilidade é reduzir o tempo de inatividade quando uma instância do cluster de base de dados fica indisponível. Isto pode acontecer quando uma instância fica sem memória. Com a elevada disponibilidade, os seus dados continuam a estar disponíveis para as aplicações cliente.

Num site, a configuração é composta por uma instância principal e uma réplica em espera. Todas as gravações feitas na instância principal são replicadas para a réplica em espera antes de uma transação ser comunicada como confirmada. Em caso de falha da instância, pode pedir que a réplica em espera se torne a nova instância principal. Em seguida, o tráfego da aplicação é reencaminhado para a nova instância principal. Este processo é denominado failover.

Pode acionar manualmente uma comutação por falha em qualquer altura. A comutação por falha envolve o seguinte processo, por ordem:

  1. O GDC coloca a instância principal offline.

  2. O GDC transforma a réplica em modo de espera no novo cluster de base de dados ativo.

  3. O GDC elimina o cluster de base de dados ativo anterior.

  4. O GDC cria uma nova réplica em espera.

Para clusters de bases de dados do AlloyDB Omni e PostgreSQL, pode ativar ou desativar a alta disponibilidade na mesma zona.

Atualize um cluster existente

Pode atualizar as definições de alta disponibilidade para um cluster de base de dados existente:

Consola

  1. No menu de navegação, selecione Serviço de base de dados.

  2. Na lista de clusters de base de dados, clique no cluster de base de dados que quer atualizar.

  3. Selecione editar Editar na secção Alta disponibilidade.

    Edite as definições de alta disponibilidade de um cluster de base de dados.

  4. Selecione Ativar modo de espera na mesma zona para ativar ou desativar a disponibilidade de uma instância de espera na mesma zona que o cluster de base de dados principal.

  5. Clique em Guardar.

  6. Verifique se o cluster da base de dados reflete a atualização de alta disponibilidade ao ver o respetivo estado na coluna Alta disponibilidade da lista de clusters da base de dados.

gdcloud

  1. Atualize a configuração de alta disponibilidade do cluster de base de dados:

    gdcloud database clusters update CLUSTER_NAME \
        --availability-type HA_TYPE
    

    Substitua o seguinte:

    • CLUSTER_NAME: o nome do cluster da base de dados.
    • HA_TYPE: o nível de alta disponibilidade para o cluster de base de dados. Pode definir zonal ou zonal_ha. O valor zonal está definido por predefinição.
  2. Verifique se o cluster da base de dados reflete a atualização de alta disponibilidade:

    gdcloud database clusters list
    

API

  1. Atualize a configuração de alta disponibilidade do cluster de base de dados:

      kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME \
        -n USER_PROJECT \
        -p '{"spec": {"availability": {"enableHighAvailability": HA_ENABLED}}}' \
        --type=merge
    

    Substitua as seguintes variáveis:

    • DBENGINE_NAME: o nome do motor da base de dados. É uma de alloydbomni, postgresql ou oracle.
    • DBCLUSTER_NAME: o nome do cluster da base de dados.
    • USER_PROJECT: o nome do projeto do utilizador onde o cluster de base de dados foi criado.
    • HA_ENABLED: o nível de elevada disponibilidade para o cluster de base de dados. Pode definir true ou false. O valor false está definido por predefinição.
  2. Verifique se o cluster da base de dados reflete a atualização de alta disponibilidade:

    kubectl get dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME \
      -n USER_PROJECT \
      -o yaml
    

Acione uma comutação por falha

Se tiver configurado a elevada disponibilidade para o cluster da base de dados, pode acionar uma comutação por falha. Para acionar uma comutação por falha, conclua os seguintes passos:

Consola

  1. No menu de navegação, selecione Serviço de base de dados.

  2. Na lista de clusters de bases de dados, clique no cluster de base de dados para o qual quer acionar uma comutação por falha. O cluster da base de dados tem de ter a alta disponibilidade ativada para ser elegível para uma comutação por falha.

  3. Clique em Failover.

  4. Escreva o ID do cluster para a frase de confirmação e clique em Failover para acionar o processo de failover.

gdcloud

  • Acione a comutação por falha para o cluster da base de dados:

    gdcloud database clusters failover CLUSTER_NAME
    

    Substitua CLUSTER_NAME pelo nome do cluster da base de dados.

API

  apiVersion: fleet.dbadmin.gdc.goog/v1
  kind: Failover
  metadata:
    name: FAILOVER_NAME
  spec:
    dbclusterRef: DBCLUSTER_NAME

Substitua as seguintes variáveis:

  • DBCLUSTER_NAME, o nome do cluster da base de dados.
  • FAILOVER_NAME, o nome exclusivo da comutação por falha, por exemplo, failover-sample.