レプリカセットを使用してMongoDBをクラスター化したい。 3つのノードのレプリカセット(rs0、rs1、rs2)を作成し、問題なくDBを並列実行しました。しかし、任意の2つのインスタンス(1つのプライマリとセカンダリ)をシャットダウンすると、残りのセカンダリメンバーはプライマリにならず、セカンダリのままになります。
ステップ1:
全て大丈夫。いつ
ステップ2:
どうして?
これは仕様によるものです。 1つのノードのみで実行する場合は、レプリカセットスイッチなしでそのノードを再起動します。
レプリカセットの大部分が現在のプライマリにアクセスできない、または利用できない場合、プライマリは降格してセカンダリになります。この後、レプリカセットは書き込みを受け入れることができませんが、セカンダリで実行するようにクエリが構成されている場合、残りのメンバーは引き続き読み取りクエリを処理できます。
詳細については、次のリソースをご覧ください。