Un set di repliche MongoDB richiede almeno 2 o 3 membri?


Risposte:


19

Puoi effettivamente eseguire un singolo set "set" se vuoi.

Tuttavia, 3 membri (o un numero dispari più elevato) sono davvero i migliori. I set di repliche vengono letti solo se la maggior parte del set non è disponibile, quindi se si perde un membro in un set a due membri, il membro rimanente diventa di sola lettura.

Puoi eseguire due membri a pieno titolo più un membro "solo votante" (chiamato arbitro). Questa è l'opzione più piccola ragionevolmente sicura per un set di repliche.


6
Vuoi evidenziare che due membri non sono un sistema a tolleranza d'errore. @MrKurt ha ragione nel dire che se un membro scende (non pianificato), l'altro non può essere PRIMARY e passerà a SECONDARY (sola lettura). In altre parole, se è necessaria una replica in produzione, 3 membri è il minimo per la tolleranza agli errori in caso di errore di un membro.
Bret Fisher,

3

Questo è fondamentalmente un problema di formulazione perché i requisiti del tutorial non sono una dichiarazione generale sui set di repliche, ma riguardano il tutorial stesso. Il requisito per distribuire un set di repliche in generale è 1 o più, la maggior parte ne ha 2 o più, ma l'esercitazione a cui si collega è specificamente per distribuire un set di 3 membri:

Questo tutorial descrive come creare un set di repliche a tre membri da tre istanze esistenti di MongoDB

Quindi, il requisito per il tutorial è che il set abbia 3 membri. Tuttavia, è un po 'confuso avere le due dichiarazioni, quindi ho inviato una richiesta pull (EDIT: la richiesta pull è stata ora unita) per ripulirla un po'.

Puoi avere un singolo nodo mongod configurato per far parte di un set di repliche, ma a rigor di termini non sarebbe un "set". In effetti, poiché la replica utilizza più risorse di una versione autonoma mongod(fondamentalmente a causa dell'oplog ) non ha davvero senso eseguire un singolo membro a meno che non sia una misura temporanea prima di aggiungere altri membri all'insieme o se è necessario un oplog per altri motivi (come il backup).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.