Conjunto de réplicas do MongoDB: Por que o último servidor restante se torna secundário?

1

Estou experimentando conjuntos de réplicas do MongoDB para testar os cenários de alta disponibilidade. Eu configurei um conjunto de réplicas de 3 servidores. Quando eu paro o servidor principal, um dos 2 servidores restantes se torna primário. Depois disso, quando eu parar o novo primário, o último servidor restante mostra seu status como secundário.

O último servidor não deve se tornar automaticamente o principal? Ou preciso configurar alguma configuração para que isso aconteça?

    
por Pritam Barhate 25.11.2015 / 06:54

1 resposta

2

Cada conjunto de réplicas do MongoDB tem no máximo um único primário que é eleito em base de quorum. Uma maioria restrita dos membros do conjunto de réplicas deve votar no primário (por exemplo, n / 2 + 1 votos, em que n é o número de membros configurados do conjunto de réplicas).

Se você tiver um único membro sobrevivente em um conjunto de réplicas de três membros, esse membro não poderá ser eleito (ou permanecerá) como principal, pois há apenas um único voto disponível.

O requisito para a maioria dos votos é evitar ter várias primárias em casos como partições de rede. Por exemplo, se todos os 3 membros do conjunto de réplicas estiverem tecnicamente "ativos", mas não puderem se comunicar devido a problemas de rede, somente uma partição com a maioria dos membros do conjunto de réplicas poderá manter uma primária.

Para obter mais informações, consulte Elections do conjunto de réplicas no manual do MongoDB.

    
por 26.11.2015 / 03:48

Tags