Sobre a replicação entre regiões

Esta página oferece uma visão geral da replicação entre regiões do Memorystore for Redis Cluster.

Para instruções sobre como gerenciar a replicação entre regiões, consulte Trabalhar com a replicação entre regiões.

A replicação entre regiões permite criar clusters secundários de um cluster principal para disponibilizar o cluster para leituras em diferentes regiões. Os clusters secundários também oferecem redundância para cenários de recuperação de desastres em caso de interrupções regionais.

Os principais conceitos nesta página incluem o seguinte:

  • Cluster principal : um cluster de leitura/gravação em uma única região.
  • Cluster secundário : um cluster somente leitura que replica do cluster principal de forma assíncrona. Para informações sobre como promover e desanexar clusters secundários, consulte as tarefas desanexar e transição que aparecem em Como gerenciar a replicação entre regiões.
  • Nó replicador: um nó no fragmento do cluster principal que replica para um nó seguidor no cluster secundário. Qualquer nó principal ou de réplica no fragmento pode servir como replicador.
  • Nós seguidores: nós no cluster secundário que replicam de um nó replicador no cluster principal. Somente os nós principais no cluster secundário podem ter o papel de seguidor.
  • Contagem de fragmentos e atribuição de slots: os clusters principal e secundário têm o mesmo número de fragmentos e atribuições de slots.

Benefícios

Os benefícios da replicação entre regiões no Memorystore for Redis Cluster incluem o seguinte:

  • Recuperação de desastres: se a região do cluster principal ficar indisponível, você poderá desanexar ou fazer a transição para um cluster secundário em outra região para atender solicitações de leitura e gravação. Os clusters secundários atendem solicitações de leitura sem emitir um comando de transição ou desanexação.
  • Dados distribuídos geograficamente: a distribuição geográfica de dados aproxima os dados de você e diminui a latência de leitura.
  • Balanceamento de carga geográfico para tráfego de leitura: se conexões lentas ou sobrecarregadas ocorrerem em uma região, você poderá rotear o tráfego para outra região.

Comportamento do recurso

Esta seção explica o comportamento importante do recurso de replicação entre regiões.

  • Escalar a capacidade do cluster: quando você escalona a capacidade do cluster principal, o Memorystore para Redis Cluster escalona os clusters secundários automaticamente para corresponder ao cluster principal.
  • Escalar a contagem de réplicas: é possível escalar a contagem de réplicas para clusters principal e secundário de forma independente com base nas necessidades da carga de trabalho. As atualizações na contagem de réplicas são apenas locais e não são propagadas para outros clusters na coleção de clusters de replicação entre regiões.
  • Fazer a transição durante uma possível interrupção: é possível fazer uma transição para promover um cluster secundário, mesmo que o cluster principal não esteja disponível devido a uma interrupção. Quando a interrupção é resolvida, o cluster principal indisponível se torna um cluster secundário.
  • Criar clusters secundários on-line: ao adicionar um cluster secundário a um cluster principal, o cluster principal permanece on-line. Enquanto o Memorystore for Redis Cluster cria o cluster secundário, o cluster principal processa solicitações e replica dados.
  • Criar clusters secundários: é possível ter até dois clusters secundários. Eles podem estar localizados na mesma região ou em regiões diferentes. Não é possível transformar um cluster existente em um cluster secundário. Só é possível adicionar novos clusters como secundários.
  • Sincronizar configurações: o Memorystore for Redis Cluster sincroniza a maioria das configurações de cluster automaticamente entre clusters principal e secundário. Para mais informações sobre essas configurações, consulte Configurações de cluster.
  • Preços: o Memorystore for Redis Cluster cobra dos clientes que usam a replicação entre regiões por clusters secundários provisionados para replicação entre regiões. Para cada nó e réplica que o Memorystore for Redis Cluster implanta no cluster secundário, você recebe uma cobrança como em qualquer outro cluster principal. Além disso, você incorre em cobranças de rede pela transferência de dados entre clusters em regiões diferentes.
  • Realizar atualizações de manutenção: para garantir a compatibilidade com a replicação entre regiões, ao criar o cluster secundário, o cluster principal poderá passar por uma atualização de manutenção. Essa atualização acontece se o cluster principal não estiver executando a versão de software necessária. O processo de atualização pode introduzir alguma latência adicional ao criar o cluster secundário. Para mais informações, consulte Sobre a manutenção.

Como gerenciar a replicação entre regiões

A replicação entre regiões envolve as seguintes tarefas:

  • Criar um cluster secundário: crie um cluster secundário que replica dados do cluster principal continuamente.
  • Visualizar o cluster secundário: veja informações sobre o cluster secundário, incluindo o nome do cluster principal e o outro cluster secundário no grupo de replicação.
  • Desanexar clusters secundários: a desanexação de clusters secundários é uma operação em que você desvincula clusters secundários do cluster principal. Isso os torna clusters independentes e totalmente funcionais que permitem leituras e gravações. Após uma operação de desanexação, os clusters secundários não replicam mais dados do cluster principal a que estavam associados. O cluster principal original e os clusters recém-desanexados (antigos secundários) funcionam como clusters independentes sem relação entre si.

    Você desanexa clusters secundários pelos seguintes motivos:

    • Migração regional: execute uma migração planejada de recursos do Memorystore for Redis Cluster da região principal para outra região.
    • Recuperação de desastres: ative os recursos do Memorystore for Redis Cluster em uma região secundária rapidamente se os recursos na região principal ficarem indisponíveis. Se os clusters secundários não estiverem totalmente atualizados com o cluster principal, poderá ocorrer perda de dados.
  • Fazer a transição dos clusters: execute uma transição para inverter os papéis dos clusters principal e secundário. É possível fazer uma transição pelos seguintes motivos:

    • Teste a configuração de recuperação de desastres
    • Faça a transição durante um cenário real de recuperação de desastres
    • Execute uma migração da carga de trabalho

    Depois de concluir a transição, o Memorystore for Redis Cluster inverte a direção da replicação. O antigo cluster secundário agora pode aceitar leituras e gravações, enquanto o antigo cluster principal muda para somente leitura.

Exemplo de arquitetura para replicação entre regiões

Este diagrama mostra um cluster principal na região us-east1 e clusters secundários nas regiões us-west1 e asia-east1. A direção da replicação é sempre do cluster principal para os clusters secundários (para este exemplo, da região us-east1 para as outras regiões).

Embora este diagrama mostre o mesmo número de réplicas em todas as regiões, a replicação entre regiões permite que você tenha números diferentes de réplicas de acordo com seus requisitos.

imagem

Configurações de cluster

Esta seção explica as configurações necessárias, copiadas e substituídas para clusters principal e secundário que usam a replicação entre regiões. Ela também explica as configurações que você define no cluster principal e as configurações que você define localmente.

Parâmetros necessários para criar um cluster secundário

Para criar um cluster secundário, defina valores para os seguintes parâmetros:

  • Google Cloud **project**: o projeto em que o cluster principal está localizado e em que você cria o cluster secundário.
  • Região: a região em que você quer que o cluster secundário esteja localizado.
  • Configuração do Private Service Connect: a configuração de rede para o cluster secundário.
  • Cluster principal: ao criar o cluster secundário, você precisa indicar um cluster principal. É possível usar qualquer cluster que não seja secundário como principal. Se você não tiver um cluster principal, crie-o.

Configurações que um cluster secundário copia do cluster principal

Ao criar um cluster secundário, ele copia as seguintes configurações do cluster principal:

Substituir configurações padrão

Ao criar um cluster secundário, é possível usar as seguintes configurações para substituir as configurações padrão:

Atualizar configurações de cluster

Ao atualizar as configurações do cluster no Memorystore for Redis Cluster, é possível alterar algumas configurações apenas no cluster principal. O Memorystore for Redis Cluster sincroniza essas mudanças com os clusters secundários automaticamente.

É possível alterar outras configurações nos clusters principal e secundário de forma independente. O Memorystore for Redis Cluster aplica essas mudanças apenas localmente e não as sincroniza com os outros clusters.

Configurar as configurações no cluster principal

Você precisa alterar as seguintes configurações no cluster principal. O Memorystore for Redis Cluster sincroniza essas mudanças com os clusters secundários automaticamente.

Configurar as configurações locais

Você configura as seguintes configurações localmente:

Práticas recomendadas para alternar clusters principal e secundário

Ao fazer uma transição, recomendamos que você siga as instruções desta seção. Dessa forma, seu aplicativo pode acompanhar as gravações e enviar gravações para o cluster apropriado.

  1. Interrompa a gravação do aplicativo no cluster principal.
  2. Se houver vários clusters secundários para promover, determine o cluster secundário que você quer promover para o cluster principal. Os fatores a seguir podem ajudar a determinar qual cluster secundário promover:

    • A proximidade do aplicativo ao cluster. Isso pode afetar a latência de gravação.
    • O cluster secundário mais atualizado em termos de dados.
    • O cluster secundário mais próximo do cluster principal em termos de configurações.
  3. Faça uma transição no cluster secundário.

  4. Aguarde a conclusão da operação de transição.

  5. Atualize o aplicativo para enviar gravações para o cluster recém-promovido selecionado na etapa 2.