Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

Reconfigure um conjunto de réplicas autogerenciadas com membros indisponíveis

Nesta página

  • Reconfigurar forçando a reconfiguração

Para reconfigurar um conjunto de réplicas quando uma maioria dos membros estiver disponível, use a operação rs.reconfig() no primary atual, seguindo o exemplo no Procedimento de reconfiguração do conjunto de réplicas.

Este documento fornece etapas para reconfigurar um conjunto de réplicas quando apenas uma minoria de membros estiver acessível.

Talvez seja necessário usar o procedimento, por exemplo, em um conjunto de réplicas distribuído geograficamente, onde nenhum grupo local de membros pode alcançar a maioria. Consulte Replica Set Elections para obter mais informações sobre essa situação.

Esse procedimento permite que você recupere enquanto a maioria dos membros do conjunto de réplicas está inativa ou inacessível. Você se conecta a qualquer membro sobrevivente e utiliza a opção force para o método rs.reconfig().

A opção force força uma nova configuração no membro. Use esse procedimento apenas para se recuperar de interrupções catastróficas. Não utilize o force toda vez que você reconfigurar. Além disso, não utilize a opção force em quaisquer scripts automáticos e não utilize force quando ainda houver um principal.

Para forçar a reconfiguração:

  1. Faça backup de um membro sobrevivente.

  2. Conecte-se a um membro sobrevivente e salve a configuração atual. Considere os seguintes comandos de exemplo para salvar a configuração:

    cfg = rs.conf()
    printjson(cfg)
  3. No mesmo nó, remova os nós inativos e inalcançáveis do conjunto de réplicas da array members ao definir a array equivalente somente aos nó sobreviventes. Veja o seguinte exemplo, que utiliza a variável cfg criada na etapa anterior:

    cfg.members = [cfg.members[0] , cfg.members[4] , cfg.members[7]]
  4. No mesmo nó, reconfigure o conjunto utilizando o comando rs.reconfig() com a opção force definida em true:

    rs.reconfig(cfg, {force : true})

    Esta operação força o secundário a usar a nova configuração. A configuração é então propagada para todos os nós sobreviventes listados na matriz members. O conjunto de réplicas elege então um novo primário.

    Observação

    Quando você utiliza o force : true, o número da versão na configuração do conjunto de réplicas aumenta significativamente, por dezenas ou centenas de milhares. Isso é normal e projetado para evitar colisões de versão definida se você acidentalmente forçar reconfigurações em ambos os lados de uma partição de rede e, em seguida, o particionamento de rede terminar.

  5. Se a falha ou partição for apenas temporária, encerre ou desative os nós removidos o mais rápido possível.

Dica

Veja também:

Voltar

Sincronizar novamente um membro