MongoDB 복제 세트에 최소 2 ~ 3 명의 구성원이 필요합니까? 시스템이 필요합니다 …” 여기 문서에는 두 가지가 있지만

여기에 세 가지 문서가 있습니다 :
http://docs.mongodb.org/manual/tutorial/deploy-replica-set/

“복제 세트에는 세 가지 시스템이 필요합니다 …”

여기 문서에는 두 가지가 있지만
http://docs.mongodb.org/manual/core/replication/

“대부분의 복제 세트는 둘 이상의 mongod 인스턴스로 구성됩니다 …”

누구가 올바른지 아십니까?



답변

원하는 경우 실제로 단일 멤버 “세트”를 실행할 수 있습니다.

그래도 3 명의 멤버 (또는 높은 홀수)가 가장 좋습니다. 복제본 세트는 대부분의 세트를 사용할 수없는 경우에만 읽기 때문에 두 멤버 세트의 멤버를 잃으면 나머지 멤버는 읽기 전용이됩니다.

두 개의 정식 멤버와 “투표 전용”멤버 (중재자)도 실행할 수 있습니다. 이것은 복제 세트에 대해 가장 합리적으로 안전한 옵션입니다.


답변

튜토리얼의 요구 사항은 복제본 세트에 대한 일반적인 설명이 아니라 튜토리얼 자체와 관련이 있기 때문에 이는 기본적으로 표현 문제입니다. 일반적으로 복제본 세트를 배포하기위한 요구 사항은 1 이상이며 대부분 2 이상이 있지만 링크하는 자습서는 구체적으로 3 개의 멤버 집합을 배포하는 것입니다.

이 학습서는 3 개의 기존 MongoDB 인스턴스에서 3 개의 멤버 복제 세트를 작성하는 방법에 대해 설명합니다.

따라서 학습서의 요구 사항에는 세트에 3 개의 멤버가 있어야합니다. 그럼에도 불구하고 두 문을 갖는 것은 약간 혼란 스럽기 때문에 풀 요청 (편집 : 풀 요청이 병합되었습니다)을 제출 하여 조금 정리했습니다.

복제 세트의 일부로 구성된 단일 mongod 노드를 가질 수 있지만 엄격하게 말하면 “세트”가 아닙니다. 실제로 복제는 독립형 mongod(기본적으로 oplog로 인해) 보다 많은 자원을 사용 하므로 다른 구성원을 세트에 추가하기 전에 임시 조치가 아니거나 oplog가 필요한 경우를 제외하고는 단일 구성원을 실행할 필요가 없습니다 다른 이유 (예 : 백업).


답변