Replicação entre regiões na vCore do Azure Cosmos DB for MongoDB (versão prévia)
APLICA-SE AO: MongoDB vCore
Este artigo discute a recuperação de desastres (DR) entre regiões para o Azure Cosmos DB for MongoDB vCore. Ele também aborda as funcionalidades de leitura das réplicas do cluster em outras regiões para a escalabilidade das operações de leitura.
O recurso de replicação entre regiões permite replicar dados de um cluster para um cluster somente leitura em outra região do Azure. As réplicas são atualizadas com a tecnologia de replicação assíncrona. Você pode ter uma réplica de cluster em outra região de sua escolha para o cluster primário do Azure Cosmos DB for MongoDB vCore. Em um caso raro de interrupção da região, você pode promover a réplica do cluster em outra região para se tornar o novo cluster de leitura e gravação para a operação contínua do seu banco de dados MongoDB. Os aplicativos podem continuar a usar as mesmas cadeias de conexão depois que a réplica do cluster em outra região for promovida para se tornar o novo cluster primário.
As réplicas são novos clusters que você gerencia de forma semelhante aos clusters regulares. Para cada réplica de leitura, você será cobrado pela computação provisionada em vCores e pelo armazenamento em GiB/mês. Os custos de computação e armazenamento dos clusters de réplica têm a mesma estrutura que os clusters regulares e os preços da região do Azure em que foram criados.
Recuperação de desastres usando réplicas de leitura de cluster
A replicação entre regiões é um dos vários pilares importantes da estratégia de continuidade de negócios e recuperação de desastres (BCDR) do Azure. A replicação entre regiões replica de modo assíncrono os mesmos aplicativos e dados em outras regiões do Azure para proteção de recuperação de desastre. Nem todos os serviços do Azure replicam dados automaticamente ou retornam automaticamente de uma região com falha para replicação cruzada para outra região habilitada. O Azure Cosmos DB for MongoDB vCore oferece uma opção para criar uma réplica de cluster em outra região e fazer com que os dados gravados no cluster primário sejam replicados automaticamente para essa réplica. O fallback para a réplica do cluster se houver uma interrupção na região primária precisa ser iniciado manualmente.
Quando a replicação entre regiões está habilitada em um cluster do Azure Cosmos DB for MongoDB vCore, cada fragmento é replicado para outra região continuamente. Essa replicação mantém uma réplica dos dados na região selecionada. Essa réplica está pronta para ser usada como parte do plano de recuperação de desastres em um caso raro de interrupção da região primária. A replicação é assíncrona. As operações de gravação no fragmento do cluster primário não aguardam a conclusão da replicação para o fragmento da réplica correspondente antes de enviar a confirmação de uma gravação bem-sucedida. A replicação assíncrona ajuda a evitar o aumento das latências das operações de gravação no cluster primário.
Operações de leitura em réplicas de cluster e cadeias de conexão
A cadeia de conexão de leitura/gravação global no Azure Cosmos DB for MongoDB direciona consistentemente gravações para o cluster ativo habilitado para gravação. Ao iniciar uma promoção de cluster de réplica, o cluster de réplica na Região B é alternado para o modo de gravação, enquanto o cluster primário original na Região A faz a transição para somente leitura. Antes da promoção, a cadeia de conexão de leitura/gravação global tem como destino o cluster primário na Região A e, em seguida, atualiza para apontar para a Região B, pois assume responsabilidades de gravação. Para aplicativos que usam a cadeia de conexão de leitura/gravação global, as operações de gravação continuam perfeitamente durante todo o processo de promoção, mantendo o fluxo de dados ininterrupto.
Os clusters de réplica também estão disponíveis para leituras. Isso ajuda a descarregar operações de leitura intensivas do cluster primário ou a fornecer latência reduzida para operações de leitura aos clientes que estão localizados mais perto da região de replicação. Quando a replicação entre regiões está habilitar, os aplicativos podem usar a cadeia de conexão do cluster de réplica para realizar leituras da réplica do cluster. O cluster primário está disponível para operações de leitura e gravação usando sua própria cadeia de conexão.
Quando você cria uma réplica habilitando a replicação entre regiões, ela não herda as configurações de rede, como as regras de firewall do cluster primário. Essas configurações devem ser definidas de forma independente para a réplica. A réplica herda a conta de administrador do cluster primário. As contas de usuário precisam ser gerenciadas no cluster primário. Você pode se conectar ao cluster primário e ao cluster de réplica usando as mesmas contas de usuário.
Promoção do cluster de réplicas
Se ocorrer uma interrupção na região, você poderá executar a operação de recuperação de desastres promovendo a réplica do cluster em outra região para que fique disponível para gravações. Durante a operação de promoção da réplica, estas etapas ocorrerão:
- As gravações na réplica da região B são habilitadas, além das leituras. A réplica anterior se torna um novo cluster de leitura e gravação.
- O cluster de réplica promovido na região B aceita gravações usando sua cadeia de conexão e a cadeia de conexão de leitura/gravação global.
- O cluster na região A é definido como somente leitura e mantém sua cadeia de conexão.
Importante
Como a replicação é assíncrona, alguns dados do cluster na região A podem não ser replicados para a região B quando a réplica do cluster na região B for promovida. Se esse for o caso, a promoção fará com que os dados não replicados não estejam presentes em ambos os clusters.