A replicação entre regiões permite criar instâncias secundárias de uma instância principal para disponibilizar a instância em diferentes regiões. Se a região da instância principal ficar indisponível, você poderá desanexar ou alternar para uma instância secundária em outra região para atender a solicitações de leitura e gravação. As instâncias secundárias atendem a solicitações de leitura sem desanexar ou alternar para a instância principal. A distribuição geográfica de dados aproxima os dados de você e diminui a latência de leitura. Se conexões lentas ou sobrecarregadas ocorrerem em uma região, você poderá rotear o tráfego para outra região.
As políticas de lista de controle de acesso (ACL) não são replicadas entre regiões no Memorystore for Valkey. Se você atribuir uma política de ACL a uma instância de replicação entre regiões, será necessário gerenciar a consistência da política nas diferentes regiões associadas à instância.
Para manter a consistência, atualize e exclua cada política atribuída às instâncias principal e secundária separadamente e garanta que as regras de cada política sejam consistentes. As políticas de ACL não estão vinculadas umas às outras, então você pode modificar e excluir políticas em qualquer ordem.
Criar uma instância secundária
Ao criar uma instância secundária, o Memorystore for Valkey copia e aplica algumas configurações da instância principal como configurações de instância secundária. Para mais informações, consulte Configurações da instância.
É possível criar uma instância secundária no Memorystore for Valkey usando o Google Cloud console ou a Google Cloud CLI.
Console
No Google Cloud console, acesse a página Memorystore para Valkey.
Clique em uma instância principal. A instância principal é a mãe da instância secundária que você está criando.
No painel lateral, clique na guia Instâncias secundárias.
Clique em Adicionar instância secundária.
Na janela Adicionar instâncias secundárias, faça as seguintes mudanças:
No campo ID da instância, insira o ID da instância secundária que você está criando. O ID precisa ter de 1 a 63 caracteres e usar apenas letras minúsculas, números ou hifens. Ele precisa começar com uma letra minúscula, terminar com uma letra minúscula ou um número e ser exclusivo na região.
No menu Região, selecione a região em que você quer que a instância secundária esteja localizada.
Na seção Disponibilidade por zona, selecione uma das seguintes opções:
Se você quiser que todos os fragmentos e réplicas da instância sejam distribuídos em três zonas da região em que o Memorystore for Valkey cria a instância, selecione a opção Multizona.
Por exemplo, se a região selecionada for
us-central1e você selecionar a opção Multizona, o Memorystore for Valkey distribuirá os fragmentos e réplicas da instância nas zonasus-central1-a,us-central1-be
us-central1-c. Em caso de falha zonal, os nós na instância fazem failover para as réplicas.Se você quiser que todos os fragmentos e réplicas da instância estejam localizados em uma zona da região em que o Memorystore for Valkey cria a instância, selecione a opção Zona única e selecione a zona no menu Zona.
Ao usar uma única zona, você reduz os custos de rede. No entanto, em caso de falha zonal, o failover não ocorre.
No menu Réplicas, selecione o número de réplicas (por fragmento) da instância. Você pode ter zero, uma ou duas réplicas.
No menu Rede, selecione uma rede para a instância. Para mais informações sobre rede para o Memorystore for Valkey, consulte Rede.
Clique em Adicionar instância secundária.
gcloud
Para criar uma instância secundária, use o gcloud memorystore instances create comando.
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
Substitua:
- INSTANCE_ID: o ID da instância secundária que você está criando. O ID precisa ter de 1 a 63 caracteres e usar apenas letras minúsculas, números ou hifens. Ele precisa começar com uma letra minúscula, terminar com uma letra minúscula ou um número e ser exclusivo na região.
- PROJECT_ID: o ID do projeto em que você quer criar a instância secundária. Esse é o mesmo projeto em que a instância principal está localizada.
- REGION_ID: o ID da região em que você quer que a instância secundária esteja localizada.
- NETWORK: a rede usada para criar a instância. Ela precisa usar este formato:
projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID. O ID da rede precisa corresponder ao ID da rede usado pela política de conexão de serviço. Caso contrário, não será possível 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. Você pode escolher qualquer instância no seu projeto como a instância principal, desde que ela não seja uma instância secundária.
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
Conferir uma instância secundária
É possível conferir informações resumidas sobre uma instância secundária usando o Google Cloud console ou a Google Cloud CLI.
Console
No Google Cloud console, acesse a página Memorystore para Valkey.
Clique na seta do expansor ao lado de uma instância principal. Essa instância é a mãe da instância secundária sobre a qual você quer conferir informações.
Clique na instância secundária. Informações resumidas sobre a instância aparecem.
gcloud
Para conferir 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 gcloud memorystore instances describe comando.
gcloud memorystore instances describe INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID
Substitua:
- 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 em que a instância secundária está localizada
Realizar uma troca
Uma troca permite reverter os papéis 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 Sobre a replicação entre regiões.
É possível realizar uma troca usando o Google Cloud console ou a Google Cloud CLI.
Console
No Google Cloud console, acesse a página Memorystore para Valkey.
Clique na seta do expansor ao lado de uma instância principal. Essa instância é a mãe da instância secundária que você quer alternar.
Clique na instância secundária.
Clique em Promover para principal.
Na caixa de diálogo Promover a instância secundária para principal? , insira o ID da instância secundária e clique em Promover.
Após a conclusão da troca, você precisará reconectar os aplicativos à nova instância principal.
gcloud
Para realizar uma troca, use o gcloud memorystore instances update comando.
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]
Substitua:
- INSTANCE_ID: o ID da instância secundária que você quer promover a uma instância principal realizando a troca.
- PROJECT_ID: o ID do projeto que contém a instância secundária.
- REGION_ID: o ID da região em que 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 você 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].
Suponha que você tenha as seguintes instâncias contidas no projeto my-project:
instance-1: essa instância principal está localizada na regiãous-east1.instance-2: essa instância secundária reside na regiãoasia-east1.instance-3: essa instância secundária reside na regiãosouthamerica-east1.
Você quer reverter os papéis 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 fazer isso, 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 troca, você precisará reconectar os aplicativos à nova instância principal.
Desanexar instâncias secundárias
Desanexar uma ou mais instâncias secundárias da instância principal as torna instâncias independentes totalmente funcionais que permitem leituras e gravações. Para mais informações, consulte Como gerenciar a replicação entre regiões.
É possível desanexar instâncias secundárias usando o Google Cloud console ou a Google Cloud CLI.
Desanexar uma instância secundária
Esta seção explica como desanexar uma instância secundária da instância principal.
Console
No Google Cloud console, acesse a página Memorystore para Valkey.
Clique em uma instância principal. Essa é a mãe da instância secundária que você está desanexando da instância principal.
No painel lateral, clique na guia Instâncias secundárias.
Marque a caixa de seleção ao lado do ID da instância secundária que você está desanexando da instância principal.
Clique em Desanexar da principal.
Na caixa de diálogo Remover instância secundária? , insira o ID da instância secundária e clique em Desanexar.
gcloud
Para desanexar uma instância secundária, use o gcloud memorystore instances update comando.
gcloud memorystore instances update INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID \ --cross-instance-replication-config-role=none \ --clear-primary-instance
Substitua:
- INSTANCE_ID: o ID da instância secundária que você quer desanexar
- PROJECT_ID: o ID do projeto que contém a instância secundária
- REGION_ID: a região em que a instância secundária está localizada
Desanexar várias instâncias secundárias
Esta seção explica como desanexar várias instâncias secundárias da instância principal. Também é possível usar o procedimento nesta seção para desanexar uma instância secundária indisponível da instância principal.
Console
No Google Cloud console, acesse a página Memorystore para Valkey.
Clique em uma instância principal. Essa é a mãe das instâncias secundárias que você está desanexando da instância principal.
No painel lateral, clique na guia Instâncias secundárias.
Marque as caixas de seleção ao lado dos IDs das instâncias secundárias que você está desanexando da instância principal.
Clique em Desanexar da principal.
Na caixa de diálogo Remover instâncias secundárias?, faça o seguinte:
Insira os IDs das instâncias secundárias. Use vírgulas para separar os IDs.
Clique em Desanexar.
gcloud
Para desanexar várias instâncias secundárias, use o gcloud memorystore instances update comando.
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
Substitua:
- 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 em que a instância principal está localizada.
- SECONDARY_INSTANCES: as instâncias secundárias que você quer
desanexar. Use vírgulas para separar os IDs das instâncias. Cada instância secundária precisa ter este formato:
projects/PROJECT_ID/locations/SECONDARY_INSTANCE_REGION_ID/instances/INSTANCE_ID.
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 é possível desanexar instâncias secundárias da instância principal por especificar uma lista de instâncias que você não quer desanexar. O Memorystore for Valkey desanexa todas as instâncias que não estão incluídas nessa lista.
Suponha que você tenha as seguintes instâncias secundárias:
instance-1: essa instância está localizada na regiãous-east1.instance-2: essa instância reside na regiãoasia-east1.
Você quer desanexar as duas instâncias secundárias de my-primary-instance. Essa 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, como 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.
Atualizar as configurações da instância
Esta seção fornece links para atualizar as configurações da instância. O processo de atualização das configurações da instância é diferente, dependendo se você muda as configurações na instância principal ou secundária. Para mais informações sobre como atualizar as configurações, consulte Configurações da instância.
Atualizar as configurações na instância principal
É necessário mudar as seguintes configurações na instância principal. Depois disso, o Memorystore for Valkey sincroniza as mudanças com a instância secundária.
- Escalonar a capacidade da instância
- Configurar a instância
- Impedir a exclusão da instância
- Gerenciar a persistência da instância
Atualizar as configurações na instância secundária
É necessário mudar as seguintes configurações na instância secundária:
- Configurar se a instância é de zona única ou multizona
- Escalonar a contagem de réplicas da instância
- Definir janelas de manutenção para a instância
Excluir instâncias que usam replicação entre regiões
Esta seção explica como excluir instâncias principal e secundária que usam replicação entre regiões.
Excluir uma instância principal
Para excluir uma instância principal, faça o seguinte:
- Desanexe ou exclua todas as instâncias secundárias.
- Para excluir a instância principal, siga as instruções em Excluir instâncias.
Para se proteger contra exclusão acidental, não é possível excluir instâncias principal e secundária simultaneamente.
Excluir uma instância secundária
Para excluir uma instância secundária, siga as instruções em Excluir instâncias. Para o ID da instância, use o ID da instância secundária.