Esta página descreve como usar a replicação entre regiões ao criar e trabalhar com clusters secundários.
Para uma visão geral conceitual da replicação entre regiões, consulte Sobre a replicação entre regiões.
Antes de começar
- O projeto do Google Cloud que você está usando precisa ter sido ativado para acessar o AlloyDB.
- É necessário ter uma destas funções do IAM no projeto do Google Cloud que você está usando:
roles/alloydb.admin
(papel predefinido do IAM de administrador do AlloyDB)roles/owner
(o papel básico do IAM "Proprietário")roles/editor
(papel básico do IAM de editor)
Se você não tiver nenhuma dessas funções, entre em contato com o administrador da organização para solicitar acesso.
Criar um cluster secundário
Quando você cria um cluster secundário, o AlloyDB copia e aplica parte da configuração do cluster principal, incluindo a recuperação pontual (PITR, na sigla em inglês) e a configuração de backup, no cluster secundário. O AlloyDB não adiciona nenhuma instância de pool de leitura ao cluster secundário após a criação, não importa quantas instâncias de pool de leitura existam no cluster principal.
Se você atualizar a configuração do cluster principal após a criação do cluster secundário, as mudanças não estarão disponíveis no cluster secundário. No entanto, é possível atualizar manualmente o cluster secundário para ter a configuração mais recente disponível no cluster principal.
Para criar um cluster secundário e uma instância secundária do AlloyDB, siga estas etapas:
Console
No console do Google Cloud, acesse a página Clusters.
Clique em um cluster na coluna Nome do recurso.
Na página Visão geral, clique em Criar cluster secundário.
Configure o cluster secundário:
- No campo ID do cluster, insira um ID de recurso para o cluster secundário.
- Selecione uma região para o cluster secundário que seja diferente da região do cluster principal.
- Selecione a criptografia gerenciada pelo Google padrão ou uma chave gerenciada pelo cliente (CMEK) como um método de criptografia para criptografar o cluster secundário.
Se você quiser criptografar esse cluster usando a chave CMEK, siga estas etapas:
- Clique em Opções de criptografia avançadas.
- Selecione Chave de criptografia gerenciada pelo cliente (CMEK).
Selecione uma chave gerenciada pelo cliente no menu exibido.
O console do Google Cloud limita essa lista a chaves no mesmo projeto e região do novo cluster doGoogle Cloud .
Para usar uma chave que não está nesta lista, siga estas etapas:
- Clique em Não encontra sua chave? Insira o nome do recurso da chave.
- Insira o nome do recurso no campo Nome do recurso da chave.
- Clique em Salvar.
- Clique em Continuar.
O uso da chave CMEK com o AlloyDB requer mais configurações. Para mais informações, consulte Usar CMEK.
Se a instância principal associada for criptografada com uma chave CMEK, você também precisará criptografar o cluster secundário com uma chave CMEK.
Configure a instância secundária:
- No campo ID da instância, insira um ID de recurso para a instância secundária. O ID do recurso precisa ser exclusivo em um cluster.
Clique em Criar cluster.
gcloud
Para usar a CLI gcloud, você pode instalar e inicializar a Google Cloud CLI ou usar o Cloud Shell.
Use o comando gcloud alloydb clusters create-secondary
:
gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \ --cluster=SECONDARY_CLUSTER_ID \ --region=REGION_ID
Substitua:
SECONDARY_CLUSTER_ID
: o ID do cluster secundário que você quer criar.SECONDARY_INSTANCE_ID
: o ID da instância secundária que você quer criar.REGION_ID
: o ID da região do cluster secundário, por exemplo,us-central1
.PROJECT_ID
: o ID do projeto do cluster secundário.LOCATION_ID
: o local em que o cluster principal está localizado, por exemplo,us-central1
.PRIMARY_CLUSTER_ID
: o ID do cluster principal ao qual o cluster secundário está associado.SECONDARY_CLUSTER_ID
: o ID do cluster secundário ao qual a instância secundária está associada.ALLOWED_PROJECT
(opcional): a lista separada por vírgulas de IDs ou números de projeto que você quer permitir o acesso à instância. Por exemplo,my-project-1
,12345
,my-project-n
. É necessário definir uma lista de projetos ou números permitidos se o cluster estiver usando o Private Service Connect como o método de conexão à instância.--no-enable-automated-backup
(opcional): desative a criação de backups automáticos no cluster secundário.
Para criar um cluster e uma instância secundários ativados pelo Private Service Connect, adicione a flag --enable-private-service-connect
ao criar um cluster e adicione a flag --allowed-psc-projects
para definir uma lista separada por vírgulas de IDs de projeto ou números de projeto que você quer permitir o acesso à instância, por exemplo, my-project-1
, 12345
, my-project-n
.
gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \ --enable-private-service-connect
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \ --cluster=SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --allowed-psc-projects=ALLOWED_PROJECT_LIST
Substitua:
ALLOWED_PROJECT
(opcional): a lista separada por vírgulas de IDs ou números de projetos que podem acessar a instância,por exemplo,my-project-1
,12345
,my-project-n
. É necessário definir uma lista de projetos ou números permitidos se o cluster estiver usando o Private Service Connect como método de conexão com a instância.
Para criar uma instância secundária para um cluster com IP público ativado, adicione o parâmetro --assign-inbound-public-ip=ASSIGN_IPV4
.
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \
--cluster=SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--assign-inbound-public-ip=ASSIGN_IPV4
Como alternativa, transmita a lista de blocos CIDR separada por vírgulas, como 64.233.160.0/16
, para o parâmetro --authorized-external-networks
para definir redes externas autorizadas na sua instância.
Conferir um cluster secundário
Para conferir informações detalhadas sobre um cluster secundário do AlloyDB, siga estas etapas:
No console do Google Cloud, acesse a página Clusters.
Clique em um cluster secundário na coluna Nome do recurso.
Na página Visão geral, confira todos os detalhes sobre o cluster secundário.
Atualizar uma instância secundária
É possível atualizar uma instância secundária para adicionar, modificar ou excluir sinalizações de banco de dados. Também é possível dimensionar o tipo de máquina da instância secundária.
Configurar flags de bancos de dados em uma instância secundária
Para adicionar, modificar ou excluir sinalizações de banco de dados, siga estas etapas:
Console
No console do Google Cloud, acesse a página Clusters.
Na coluna Nome do recurso, clique em um cluster secundário que você quer modificar.
Na página Visão geral, acesse Instâncias no cluster, selecione a instância secundária e clique em Editar secundário.
Adicione, modifique ou exclua uma flag de banco de dados da sua instância:
Adicionar uma sinalização
- Para adicionar uma flag de banco de dados à sua instância, clique em Adicionar flag.
- Selecione uma flag na lista Nova flag do banco de dados.
- Informe um valor para a flag.
- Clique em Concluído.
Modificar uma flag
- Para modificar uma flag de banco de dados presente na sua instância, expanda a flag do banco de dados e modifique o valor da flag atual na seção Editar flag do banco de dados.
- Clique em Concluído.
Excluir uma sinalização
- Para excluir uma flag de banco de dados da sua instância, selecione uma flag e clique no ícone de exclusão.
- Clique em Concluído.
Clique em Atualizar secundário.
gcloud
Use o comando gcloud alloydb instances update
para mudar as flags do banco de dados de uma instância secundária.
gcloud alloydb instances update SECONDARY_INSTANCE_ID \
--database-flags FLAGS_LIST \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Substitua:
SECONDARY_INSTANCE_ID
: o ID da instância secundária.FLAGS_LIST
: uma lista separada por vírgulas de uma ou mais especificações de sinalizadores de banco de dados. Cada especificação consiste no nome da flag, um sinal de igual (=
) e o valor a ser atribuído às flags. Para flags de banco de dados que não aceitam valores, informe o nome da flag seguido de um sinal de igual (=
).REGION_ID
: a região em que a instância secundária é colocada. Por exemplo,us-central1
.CLUSTER_ID
: o ID do cluster em que a instância secundária está colocada.PROJECT_ID
: o ID do projeto em que o cluster secundário está colocado.
Dimensionar o tipo de máquina da instância secundária
Para dimensionar o tipo de máquina da instância secundária, siga estas etapas:
Console
No console do Google Cloud, acesse a página Clusters.
Na coluna Nome do recurso, clique em um cluster secundário que você quer modificar.
Na página Visão geral, acesse a seção Instâncias no cluster e clique em Editar secundário.
Essa ação não estará disponível se a página informar um Status de cluster de Manutenção. A ação vai ficar disponível novamente depois que o Status mudar para Pronto.
Selecione um tipo de máquina.
Clique em Atualizar secundário.
gcloud
Use o comando gcloud alloydb instances
update
para mudar o tipo de máquina da instância secundária.
gcloud alloydb instances update SECONDARY_INSTANCE_ID \
--cpu-count=CPU_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Substitua:
SECONDARY_INSTANCE_ID
: o ID da instância secundária que você está atualizando.CPU_COUNT
: o número de vCPUs que você quer para a instância. Valores válidos:2
(2 vCPUs, 16 GB de RAM)4
(4 vCPUs, 32 GB de RAM)8
(8 vCPUs, 64 GB de RAM)16
(16 vCPUs, 128 GB de RAM)32
(32 vCPUs, 256 GB de RAM)64
(64 vCPUs, 512 GB de RAM)
REGION_ID: a região em que a instância é colocada.
CLUSTER_ID: o ID do cluster em que a instância está colocada.
PROJECT_ID: o ID do projeto em que o cluster está colocado.
Se o comando retornar uma mensagem de erro que inclua a frase
invalid cluster state MAINTENANCE
, o cluster está em manutenção
de rotina. Isso impede temporariamente a reconfiguração da instância. Execute o comando
novamente depois que o cluster retornar ao estado READY
.
Para verificar o status do cluster, consulte Conferir os detalhes do cluster.
Adicionar instâncias do pool de leitura a um cluster secundário
Para adicionar uma instância de pool de leitura a um cluster secundário, siga estas etapas:
No console do Google Cloud, acesse a página Clusters.
Na coluna Nome do recurso, clique em um cluster secundário em que você quer adicionar uma instância de pool de leitura.
Na página Visão geral, acesse a seção Instâncias no cluster e clique em Adicionar pool de leitura.
Configure a instância do pool de leitura:
- No campo ID da instância do pool de leitura, insira um ID para a instância do pool de leitura.
- No campo Contagem de nós, insira uma contagem de nós. O número de nós em uma instância de pool de leitura determina a capacidade de computação geral da instância. É possível ter no máximo 20 nós em todas as instâncias do pool de leitura em um cluster.
- Selecione um tipo de máquina.
Opcional: defina flags personalizadas na sua instância. Para cada flag, faça o seguinte:
- Clique em Adicionar flag.
- Selecione uma flag na lista Nova flag do banco de dados.
- Informe um valor para a flag.
- Clique em Concluído.
Clique em Adicionar pool de leitura.
Promover um cluster secundário
Antes de promover um cluster secundário, siga estas etapas para verificar se o cluster secundário aplicou todas as transações recebidas do cluster primário:
- Interrompa todas as gravações no cluster principal.
Siga estas etapas para verificar o status de replicação do cluster secundário:
No console do Google Cloud, acesse a página Clusters.
Na lista de clusters, clique no nome do cluster secundário que você quer promover.
Na página de detalhes do cluster, clique em Monitoramento.
Na lista Monitoramento, selecione a instância secundária. Ele aparece na lista como Secundário: INSTANCE_NAME.
Na lista de métricas, localize o gráfico Atraso de replicação da instância principal.
Confirme se o gráfico mostra um atraso mínimo.
Um valor de atraso de
0
é ideal. Se o atraso for maior que0
, ainda será possível promover o cluster secundário, mas com o risco de perder algumas transações recentes já confirmadas no cluster principal.Na lista de métricas, localize o gráfico Status da replicação.
Confirme se todos os nós representados no gráfico têm um valor de
streaming
.
Para promover um cluster secundário a cluster primário, siga estas etapas:
Console
No console do Google Cloud, acesse a página Clusters.
Na coluna Nome do recurso, clique em um cluster secundário que você quer promover como o cluster principal.
Na página Visão geral, clique em Promover cluster.
Na caixa de diálogo exibida, insira o ID do cluster secundário para confirmar que você quer promover o cluster.
Clique em Promover.
Depois que o cluster é promovido, o campo Tipo: cluster secundário (altamente disponível) na página Visão geral é atualizado para Tipo: Altamente disponível com pool de leitura.
gcloud
Use o comando gcloud alloydb clusters promote
:
gcloud alloydb clusters promote SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_ID \
Substitua:
SECONDARY_CLUSTER_ID
: o ID do cluster secundário que você quer promover.REGION_ID
: o ID da região do cluster secundário, por exemplo,us-central1
.PROJECT_ID
: o ID do projeto do cluster secundário.
Realizar uma alternância
Antes de realizar uma migração, verifique se as duas regiões às quais as instâncias principal e secundária pertencem estão on-line e se as instâncias estão em um estado íntegro. Para mais informações, consulte Monitorar uma instância usando o painel "Insights do sistema" do AlloyDB.
Use o comando gcloud alloydb clusters
switchover
:
gcloud alloydb clusters switchover SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_ID \
Substitua:
SECONDARY_CLUSTER_ID
: o ID do cluster secundário que você quer promover.REGION_ID
: o ID da região do cluster secundário, por exemplo,us-central1
.PROJECT_ID
: o ID do projeto do cluster secundário.