Menu Docs

Página inicial do DocsDesenvolver aplicaçõesManual do MongoDB

Realizar Manutenção em Membros do Conjunto de Réplica

Nesta página

  • Visão geral
  • Procedimento

Os conjuntos de réplicas permitem que um sistema do MongoDB permaneça disponível durante a maior parte de uma janela de manutenção.

Este documento descreve o procedimento básico para realizar a manutenção de cada um dos membros de um conjunto de réplicas. Além disso, essa sequência específica se esforça para minimizar o tempo em que o primário fica indisponível e controlar o impacto em todo o sistema.

Use essas etapas como base para operações comuns de conjunto de réplicas, especialmente para procedimentos como a atualização para a versão mais recente do MongoDB.

Para cada membro de um conjunto de réplicas, começando com um membro secundário, execute a seguinte sequência de eventos, terminando com o principal:

1

Em mongosh, desligue a instância mongod :

db.shutdownServer()
2

No prompt do shell do sistema operacional, reinicie omongod como uma instância autônoma.

Aviso

Antes de vincular sua instância a um endereço IP acessível publicamente, você deve proteger seu cluster contra acessos não autorizados. Para obter uma lista completa das recomendações de segurança, consulte Lista de verificação de segurança. No mínimo, considere habilitar a autenticação e fortalecer a infraestrutura de rede.

Sempre inicie o mongod com o mesmo usuário, mesmo ao reiniciar um nó do conjunto de réplicas como uma instância standalone.

3

Enquanto o nó for standalone, utilize o mongosh para fazer a manutenção:

mongo --port 27218

Importante

Embora o nó seja standalone, nenhuma gravação é replicada para esse nó e as gravações para o nó não são replicadas para os outros nós do conjunto de réplicas.

Certifique-se de que todas as gravações nesse autônomo não entrem em conflito com as gravações de oplog que serão aplicadas ao membro quando ele ingressar novamente no conjunto de réplicas.

4

Depois de executar todas as tarefas de manutenção, use o seguinte procedimento para reiniciar o mongod como um nó do conjunto de réplicas em sua porta existente.

A partir do mongosh, desligue o servidor independente após completar a manutenção:

use admin
db.shutdownServer()

Reinicie a instância do mongod como um membro do conjunto de réplicas com sua configuração original; isto é, desfaça as alterações de configuração feitas ao iniciar como um independente.

Dica

Certifique-se de remover o parâmetro disableLogicalSessionCacheRefresh .

Para shard ou configurar membros do servidor, certifique-se de remover o parâmetro skipShardingConfigurationChecks.

Quando tiver iniciado, conecte mongosh à instância reiniciada.

O secundário leva tempo para alcançar o primário. A partir de mongosh, use o seguinte comando para verificar se o membro passou do estado RECOVERING para o estado SECONDARY .

rs.status()
5
  1. Para realizar a manutenção no primário depois de concluir as tarefas de manutenção em todos os secundários, conecte mongosh ao primário e use rs.stepDown() para diminuir o primário e permitir que um dos secundários seja eleito o novo primário. Especifique um 300 segundo período de espera para evitar que o membro seja eleito principal novamente por cinco minutos:

    rs.stepDown(300)

    Após as etapas primárias, o conjunto de réplicas selecionará uma nova primária.

  2. Reinicie o mongod como uma instância independente, fazendo as seguintes atualizações de configuração.

  1. Execute a tarefa de manutenção no agora autônomo.

    Importante

    Embora o nó seja standalone, nenhuma gravação é replicada para esse nó e as gravações para o nó não são replicadas para os outros nós do conjunto de réplicas.

    Certifique-se de que todas as gravações nesse autônomo não entrem em conflito com as gravações de oplog que serão aplicadas ao membro quando ele ingressar novamente no conjunto de réplicas.

  2. Após executar todas as tarefas de manutenção, reinicie a instância do mongod como um membro do conjunto de réplicas com sua configuração original; isto é, desfaça as alterações de configuração feitas ao iniciar como um independente.

    Dica

    Certifique-se de remover o parâmetro disableLogicalSessionCacheRefresh .

    Para shard ou configurar membros do servidor, certifique-se de remover o parâmetro skipShardingConfigurationChecks.

← Alterar o tamanho do Oplog