ここのドキュメントには3つあります: http://docs.mongodb.org/manual/tutorial/deploy-replica-set/
「レプリカセットには3つの異なるシステムが必要です...」
ここでのドキュメントは2つを言います: http://docs.mongodb.org/manual/core/replication/
「ほとんどのレプリカセットは2つ以上のmongodインスタンスで構成されています...」
誰が正しいのか知っていますか?
必要に応じて、実際には単一のメンバー「セット」を実行できます。
しかし、3人のメンバー(またはそれ以上の奇数)は本当に最高です。セットの大部分が利用できない場合、レプリカセットは読み取り専用になるため、2メンバーセットのメンバーを失うと、残りのメンバーは読み取り専用になります。
2つの完全なメンバーと「投票専用」メンバー(アービターと呼ばれる)も実行できます。これは、レプリカセットの最も安全なオプションです。
チュートリアルの要件はレプリカセットに関する一般的な記述ではなく、チュートリアル自体に関係しているため、これは基本的に表現の問題です。一般にレプリカセットを展開するための要件は1つ以上で、ほとんどの場合は2つ以上ありますが、リンクするチュートリアルは特に3つのメンバーセットを展開することです。
このチュートリアルでは、MongoDBの既存の3つのインスタンスから3つのメンバーのレプリカセットを作成する方法について説明します
したがって、チュートリアルの要件は、セットに3つのメンバーがあることです。それでも、2つのステートメントがあると少し混乱するので、 pull request (編集:プルリクエストがマージされました)を送信して少しクリーンアップしました。
レプリカセットの一部として構成された単一のmongodノードを持つことができますが、厳密に言えば、それは「セット」ではありません。実際、レプリケーションはスタンドアロンのmongod
よりも多くのリソースを使用するため(基本的には oplog が原因で)、一時的な測定でない限り、単一のメンバーを実行しても意味がありません。セットに他のメンバーを追加するか、他の理由(バックアップなど)でoplogが必要な場合。