Menu Docs
Página inicial do Docs
/
Sincronização de Cluster-to-Cluster do MongoDB
/

Dimensionamento do oplog

Nesta página

  • Considerações
  • Monitore o tamanho do oplog necessário para a sincronização inicial
  • Determinar oplog window
  • Determinar o atraso de replicação do mongosync
  • Validar tamanho do oplog

O programamongosync do utilizachange streams do para sincronizar dados entre clusters de origem e destino. mongosync não acessa o oplog diretamente, mas quando um change stream retorna eventos do passado, os eventos devem estar dentro do intervalo de tempo oplog .

mongosync aplica operações em oplog no cluster de origem aos dados no cluster de destino. Quando as operações que mongosync não aplicaram rolem do oplog no cluster de origem, a sincronização falha e o mongosync sai.

Observação

mongosync não replica operações applyOps feitas no cluster de origem durante a sincronização com o cluster de destino.

Durante a sincronização inicial, mongosync pode aplicar operações em uma taxa mais lenta devido à cópia de documentos simultaneamente. Após a sincronização inicial, mongosync aplica alterações mais rapidamente e tem maior probabilidade de manter uma posição no oplog próxima às gravações em tempo real que ocorrem no cluster de origem.

Se você antecipar a sincronização de um grande conjunto de dados ou se planeja pausar a sincronização por um longo período de tempo, poderá exceder a oplog window. Use a configuração oplogSizeMB para aumentar o tamanho do oplog no cluster de origem.

O cluster de destino deve ter armazenamento em disco suficiente para acomodar o tamanho lógico dos dados que estão sendo migrados e as entradas de oplog de destino da sincronização inicial. Por exemplo, para migrar 10 GB de dados, o cluster de destino deve ter pelo menos 10 GB disponíveis para os dados e outro 10 GB para as entradas de oplog de inserção da sincronização inicial.

Importante

Para usar a verificação incorporada, você deve ter um oplog maior no destino. Se você habilitar o verificador incorporado e reduzir o tamanho do oplog de destino, o verificador incorporado pode não conseguir acompanhar, causando mongosync erro em.

Se precisar reduzir a sobrecarga das entradas do oplog de destino e o verificador incorporado estiver desativado, você poderá:

  • Use a configuração para reduzir o tamanho do oplog do cluster de oplogSizeMB destino.

  • Use a configuração para reduzir ou remover o período mínimo de retenção de oplog do cluster de oplogMinRetentionHours destino.

1

Para obter a diferença em segundos entre a primeira e a última entrada no oplog execute db.getReplicationInfo(). Se você estiver replicando um cluster fragmentado, execute o comando em cada shard.

db.getReplicationInfo().timeDiff

O valor retornado é a janela oplog mínima do cluster. Se houver vários fragmentos, o menor número será a janela oplog mínima.

2

Para obter o valor lagTimeSeconds , execute o comando /progress . O tempo de atraso é o tempo em segundos entre o último evento aplicado por mongosync e a hora do evento mais recente atual no cluster de origem.

É uma medida de quão atrasado está o cluster de origem mongosync .

3

Se o tempo de atraso se aproximar da janela mínima de oplog , faça uma das seguintes alterações:

  • Aumente a janela oplog . Use replSetResizeOplog para definir minRetentionHours maior que a janela oplog atual.

  • Escale a instância mongosync . Adicione CPU ou memória para escalar o nó mongosync para que ele tenha uma taxa de cópia mais alta.

Observação

A oplog window e a taxa de alteração do atraso de replicação podem variar durante a sincronização. Repita essas etapas durante uma migração para monitorar o progresso.

Voltar

Autenticação usando Workload Identity Federation