A finalidade de uma configuração de alta disponibilidade é reduzir a inatividade quando uma instância de cluster de banco de dados fica indisponível. Isso pode acontecer quando uma instância fica sem memória. Com a alta disponibilidade, seus dados continuam disponíveis para aplicativos cliente.
Em um 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 na réplica em espera antes que uma transação seja relatada como confirmada. Em caso de falha de uma instância, você pode solicitar que a réplica em espera se torne a nova instância principal. O tráfego de aplicativos é redirecionado para a nova instância principal. Esse processo é chamado de failover.
Você pode acionar manualmente um failover a qualquer momento. O failover envolve o seguinte processo, em ordem:
O GDC coloca a instância principal off-line.
O GDC transforma a réplica de espera no novo cluster de banco de dados ativo.
O GDC exclui o cluster de banco de dados ativo anterior.
O GDC cria uma nova réplica em espera.
Para clusters de banco de dados do AlloyDB Omni e do PostgreSQL, é possível ativar ou desativar a alta disponibilidade na mesma zona.
Atualizar um cluster atual
É possível atualizar as configurações de alta disponibilidade de um cluster de banco de dados existente:
Console
No menu de navegação, selecione Serviço de banco de dados.
Na lista de clusters de banco de dados, clique no cluster que você quer atualizar.
Selecione editar Editar na seção Alta disponibilidade.

Selecione Ativar espera na mesma zona para ativar ou desativar a disponibilidade de uma instância de espera na mesma zona do cluster de banco de dados principal.
Clique em Salvar.
Verifique se o cluster de banco de dados reflete a atualização de alta disponibilidade conferindo o status na coluna Alta disponibilidade da lista de clusters de banco de dados.
gdcloud
Atualize a configuração de alta disponibilidade do cluster de banco de dados:
gdcloud database clusters update CLUSTER_NAME \ --availability-type HA_TYPESubstitua:
CLUSTER_NAME: o nome do cluster de banco de dados.HA_TYPE: o nível de alta disponibilidade do cluster de banco de dados. É possível definirzonalouzonal_ha. O valorzonalé definido por padrão.
Verifique se o cluster de banco de dados reflete a atualização de alta disponibilidade:
gdcloud database clusters list
API
Atualize a configuração de alta disponibilidade do cluster de banco de dados:
kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME \ -n USER_PROJECT \ -p '{"spec": {"availability": {"enableHighAvailability": HA_ENABLED}}}' \ --type=mergeSubstitua as seguintes variáveis:
DBENGINE_NAME: o nome do mecanismo de banco de dados. Um dos valoresalloydbomni,postgresqlouoracle.DBCLUSTER_NAME: o nome do cluster de banco de dados.USER_PROJECT: o nome do projeto do usuário em que o cluster de banco de dados foi criado.HA_ENABLED: o nível de alta disponibilidade do cluster de banco de dados. É possível definirtrueoufalse. O valorfalseé definido por padrão.
Verifique se o cluster de banco de dados reflete a atualização de alta disponibilidade:
kubectl get dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME \ -n USER_PROJECT \ -o yaml
Acionar um failover
Se você tiver configurado a alta disponibilidade para o cluster de banco de dados, poderá acionar um failover. Para acionar um failover, siga estas etapas:
Console
No menu de navegação, selecione Serviço de banco de dados.
Na lista de clusters de banco de dados, clique no cluster para acionar um failover. Seu cluster de banco de dados precisa ter a alta disponibilidade ativada para se qualificar para um failover.
Clique em Failover.
Digite o ID do cluster na frase de confirmação e clique em Failover para acionar o processo.
gdcloud
Acione o failover do cluster de banco de dados:
gdcloud database clusters failover CLUSTER_NAMESubstitua
CLUSTER_NAMEpelo nome do cluster de banco 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 de banco de dados.FAILOVER_NAME, o nome exclusivo do failover, por exemplo,failover-sample.