Trabalhe com a replicação entre regiões

Esta página descreve como usar a replicação entre regiões criando e gerindo instâncias secundárias.

Para uma vista geral conceptual da replicação entre regiões, consulte o artigo Acerca da replicação entre regiões.

Crie uma instância secundária

Quando cria uma instância secundária, o Memorystore for Valkey copia e aplica algumas definições da instância principal como definições da instância secundária. Para mais informações, consulte o artigo Definições da instância.

Pode criar uma instância secundária no Memorystore for Valkey através daGoogle Cloud consola ou da CLI do Google Cloud.

Consola

  1. Na Google Cloud consola, aceda à página Memorystore for Valkey.

    Memorystore for Valkey

  2. Clique numa instância principal. A instância principal é a instância principal da instância secundária que está a criar.

  3. No painel lateral, clique no separador Instâncias secundárias.

  4. Clique em Adicionar instância secundária.

  5. Na janela Adicionar instâncias secundárias, faça as seguintes alterações:

    1. No campo ID da instância, introduza o ID da instância secundária que está a criar. O ID tem de ter entre 1 e 63 carateres e usar apenas letras minúsculas, números ou hífenes. Tem de começar com uma letra minúscula, terminar com uma letra minúscula ou um número e ser único na respetiva região.

    2. No menu Região, selecione a região onde quer que a instância secundária esteja localizada.

    3. Na secção Disponibilidade zonal, selecione uma das seguintes opções:

      • Se quiser que todos os fragmentos e réplicas da instância sejam distribuídos por três zonas da região onde o Memorystore for Valkey cria a instância, selecione a opção Várias zonas.

        Por exemplo, se a região que selecionar for us-central1 e selecionar a opção Várias zonas, o Memorystore for Valkey distribui os fragmentos e as réplicas da instância pelas zonas us-central1-a, us-central1-b e
        us-central1-c. Em caso de falha zonal, os nós na instância fazem failover para as réplicas.

      • Se quiser que todos os fragmentos e réplicas da instância estejam localizados numa zona da região onde o Memorystore for Valkey cria a instância, selecione a opção Zona única e, em seguida, selecione a zona no menu Zona.

        Ao usar uma única zona, reduz os custos de rede. No entanto, em caso de falha zonal, a comutação por falha não ocorre.

    4. No menu Réplicas, selecione o número de réplicas (por fragmento) para a instância. Pode ter zero, uma ou duas réplicas.

    5. No menu Rede, selecione uma rede para a instância. Para mais informações sobre as redes do Memorystore for Valkey, consulte o artigo Redes.

  6. Clique em Adicionar instância secundária.

gcloud

Para criar uma instância secundária, use o comando gcloud memorystore instances create.

gcloud memorystore instances create INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION_ID \
--cross-instance-replication-config-role=secondary \
--psc-auto-connections=network=NETWORK,projectId=PROJECT_ID \
--primary-instance=PRIMARY_INSTANCE_PATH

Faça as seguintes substituições:

  • INSTANCE_ID: o ID da instância secundária que está a criar. O ID tem de ter entre 1 e 63 carateres e usar apenas letras minúsculas, números ou hífenes. Tem de começar com uma letra minúscula, terminar com uma letra minúscula ou um número e ser único na respetiva região.
  • PROJECT_ID: o ID do projeto onde quer criar a instância secundária. Este é o mesmo projeto onde a sua instância principal está localizada.
  • REGION_ID: o ID da região onde quer que a instância secundária esteja localizada.
  • NETWORK: a rede usada para criar a instância. Tem de usar este formato: projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID. O ID da rede tem de corresponder ao ID da rede usado pela política de associação de serviços. Caso contrário, não pode criar a instância secundária.
  • PRIMARY_INSTANCE_PATH: o caminho da instância principal. Por exemplo: projects/my-project/locations/us-central1/instances/my-primary-instance. Pode escolher qualquer instância no seu projeto para ser a instância principal, desde que não seja uma instância secundária.

Por exemplo:

gcloud memorystore instances create my-secondary-instance \
--project=my-project \
--location=us-central1 \
--cross-instance-replication-config-role=secondary \
--psc-auto-connections=network=projects/my-project/global/networks/default,projectId=my-project \
--primary-instance=projects/my-project/locations/us-central1/instances/my-primary-instance

Veja uma instância secundária

Pode ver informações de resumo sobre uma instância secundária através daGoogle Cloud consola ou da CLI do Google Cloud.

Consola

  1. Na Google Cloud consola, aceda à página Memorystore for Valkey.

    Memorystore for Valkey

  2. Clique na seta de expansão junto a uma instância principal. Esta instância é a principal da instância secundária sobre a qual quer ver informações.

  3. Clique na instância secundária. São apresentadas informações de resumo sobre a instância.

gcloud

Para ver informações sobre uma instância secundária, incluindo um campo de associação que lista as instâncias principal e secundária no grupo de replicação, use o comando gcloud memorystore instances describe.

gcloud memorystore instances describe INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION_ID

Faça as seguintes substituições:

  • INSTANCE_ID: o ID da instância secundária
  • PROJECT_ID: o ID do projeto que contém a instância secundária
  • REGION_ID: o ID da região onde a instância secundária está localizada

Faça uma comutação

Uma comutação permite-lhe inverter as funções das instâncias principal e secundária, promovendo uma instância secundária a uma instância principal para fins de recuperação de desastres. Para mais informações, consulte o artigo Acerca da replicação entre regiões.

Pode fazer uma mudança através da Google Cloud consola ou da CLI Google Cloud.

Consola

  1. Na Google Cloud consola, aceda à página Memorystore for Valkey.

    Memorystore for Valkey

  2. Clique na seta de expansão junto a uma instância principal. Esta instância é a principal da instância secundária para a qual quer mudar.

  3. Clique na instância secundária.

  4. Clique em Promover a principal.

  5. Na caixa de diálogo Promover instância secundária a principal?, introduza o ID da instância secundária e, de seguida, clique em Promover.

Após a conclusão da comutação, tem de voltar a ligar as suas aplicações à nova instância principal.

gcloud

Para fazer uma comutação, use o comando gcloud memorystore instances update.

gcloud memorystore instances update INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION_ID \
--clear-primary-instance \
--cross-instance-replication-config-role=primary \
--cross-instance-replication-config-secondary-instances=[instance=SECONDARY_INSTANCE_PATH]

Faça as seguintes substituições:

  • INSTANCE_ID: o ID da instância secundária que quer promover a uma instância principal através da comutação.
  • PROJECT_ID: o ID do projeto que contém a instância secundária.
  • REGION_ID: o ID da região onde a instância secundária está localizada.
  • SECONDARY_INSTANCE_PATH: o caminho da instância secundária. Por exemplo: projects/my-project/locations/us-central1/instances/my-secondary-instance.

    Se tiver várias instâncias secundárias, separe cada instância por vírgulas. Por exemplo: [instance=projects/my-project/locations/us-central1/instances/my-first-secondary-instance,instance=projects/my-project/locations/europe-west1/instances/my-second-secondary-instance].

Suponhamos que tem as seguintes instâncias contidas no projeto my-project:

  • instance-1: esta instância principal está localizada na região us-east1.
  • instance-2: esta instância secundária reside na região asia-east1.
  • instance-3: esta instância secundária reside na região southamerica-east1.

Quer inverter as funções de instance-1 e instance-2 para que instance-2 seja a nova instância principal e instance-1 seja uma instância secundária.

Para o fazer, use o seguinte código:

gcloud memorystore instances update instance-2 \
--project=my-project \
--location=asia-east1 \
--clear-primary-instance \
--cross-instance-replication-config-role=primary \
--cross-instance-replication-config-secondary-instances=[instance=projects/my-project/locations/us-east1/instances/instance-1,instance=projects/my-project/locations/southamerica-east1/instances/instance-3]

Após a conclusão da comutação, tem de voltar a ligar as suas aplicações à nova instância principal.

Desassocie instâncias secundárias

A separação de uma ou mais instâncias secundárias da respetiva instância principal torna-as instâncias independentes totalmente funcionais que permitem leituras e escritas. Para mais informações, consulte o artigo Como gerir a replicação entre regiões.

Pode desanexar instâncias secundárias através da Google Cloud consola ou da CLI do Google Cloud.

Desassocie uma instância secundária

Esta secção explica como desassociar uma instância secundária da respetiva instância principal.

Consola

  1. Na Google Cloud consola, aceda à página Memorystore for Valkey.

    Memorystore for Valkey

  2. Clique numa instância principal. Este é o elemento principal da instância secundária que está a desassociar da instância principal.

  3. No painel lateral, clique no separador Instâncias secundárias.

  4. Selecione a caixa de verificação junto ao ID da instância secundária que está a desanexar da instância principal.

  5. Clique em Desassociar do principal.

  6. Na caixa de diálogo Desanexar instância secundária?, introduza o ID da instância secundária e, de seguida, clique em Desanexar.

gcloud

Para desanexar uma instância secundária, use o comando gcloud memorystore instances update.

gcloud memorystore instances update INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION_ID \
--cross-instance-replication-config-role=none \
--clear-primary-instance

Substitua o seguinte:

  • INSTANCE_ID: o ID da instância secundária que quer desassociar
  • PROJECT_ID: o ID do projeto que contém a instância secundária
  • REGION_ID: a região onde a instância secundária está localizada

Desassocie várias instâncias secundárias

Esta secção explica como desanexar várias instâncias secundárias da respetiva instância principal. Também pode usar o procedimento nesta secção para desassociar uma instância secundária indisponível da respetiva instância principal.

Consola

  1. Na Google Cloud consola, aceda à página Memorystore for Valkey.

    Memorystore for Valkey

  2. Clique numa instância principal. Esta é a instância principal das instâncias secundárias que está a desassociar da instância principal.

  3. No painel lateral, clique no separador Instâncias secundárias.

  4. Selecione as caixas de verificação junto aos IDs das instâncias secundárias que está a desassociar da instância principal.

  5. Clique em Desassociar do principal.

  6. Na caixa de diálogo Desanexar instâncias secundárias?, faça o seguinte:

    1. Introduza os IDs das instâncias secundárias. Use vírgulas para separar os IDs.

    2. Clique em Desassociar.

gcloud

Para desanexar várias instâncias secundárias, use o comando gcloud memorystore instances update.

gcloud memorystore instances update PRIMARY_INSTANCE_ID \
--project=PROJECT_ID \
--location=PRIMARY_INSTANCE_REGION_ID \
--remove-cross-instance-replication-config-secondary-instances=[instance=SECONDARY_INSTANCES] \
--cross-instance-replication-config-role=none

Faça as seguintes substituições:

  • PRIMARY_INSTANCE_ID: o ID da instância principal.
  • PROJECT_ID: o ID do projeto que contém as instâncias secundárias.
  • PRIMARY_INSTANCE_REGION_ID: o ID da região onde a instância principal está localizada.
  • SECONDARY_INSTANCES: as instâncias secundárias que quer desassociar. Use vírgulas para separar os IDs das instâncias. Cada instância secundária tem de ter este formato: projects/PROJECT_ID/locations/SECONDARY_INSTANCE_REGION_ID/instances/INSTANCE_ID.

Por exemplo:

gcloud memorystore instances update my-primary-instance \
--project=my-project \
--location=us-central1 \
--remove-cross-instance-replication-config-secondary-instances=[instance=projects/my-project/locations/us-west4/instances/my-secondary-instance-1,instance=projects/my-project/locations/asia-southeast2/instances/my-secondary-instance-2] \
--cross-instance-replication-config-role=none

Também pode separar instâncias secundárias da instância principal especificando uma lista de instâncias que não quer separar. O Memorystore for Valkey desanexa todas as instâncias que não incluir nesta lista.

Suponhamos que tem as seguintes instâncias secundárias:

  • instance-1: esta instância está localizada na região us-east1.
  • instance-2: esta instância reside na região asia-east1.

Quer desassociar ambas as instâncias secundárias de my-primary-instance. Esta instância principal está localizada na região us-central1 e está contida no projeto my-project.

Para desanexar as instâncias secundárias, use o seguinte código:

gcloud memorystore instances update my-primary-instance \
--project=my-project \
--location=us-central1 \
--cross-instance-replication-config-secondary-instances=[]
--cross-instance-replication-config-role=none

Para este exemplo, uma vez que o valor [] nulo é atribuído ao parâmetro --cross-instance-replication-config-secondary-instances, o Memorystore for Valkey desanexa todas as instâncias secundárias da instância principal.

Atualize as definições da instância

Esta secção fornece links para atualizar as definições da instância. O processo de atualização das definições da instância é diferente, consoante altere as definições na instância principal ou na instância secundária. Para mais informações sobre como atualizar as definições, consulte o artigo Definições de instância.

Atualize as definições na instância principal

Tem de alterar as seguintes definições na instância principal. Depois de o fazer, o Memorystore for Valkey sincroniza as alterações com a instância secundária.

Atualize as definições na instância secundária

Tem de alterar as seguintes definições na instância secundária:

Elimine instâncias que usam a replicação entre regiões

Esta secção explica como eliminar instâncias principais e secundárias que usam a replicação entre regiões.

Elimine uma instância principal

Para eliminar uma instância principal, faça o seguinte:

  1. Desassociar ou eliminar todas as instâncias secundárias.
  2. Para eliminar a instância principal, siga as instruções em Eliminar instâncias.

Para se proteger contra a eliminação acidental, não pode eliminar instâncias principais e secundárias em simultâneo.

Elimine uma instância secundária

Para eliminar uma instância secundária, siga as instruções em Elimine instâncias. Para o ID da instância, use o ID da instância secundária.