プライマリに接続された mongo シェルを介してレプリカ セット メンバーの投票数を 0 に設定しようとしていますが、呼び出すとエラーが発生します。
rstest:PRIMARY> rs.reconfig(conf)
{
"ok" : 0,
"errmsg" : "priority must be 0 when non-voting (votes:0)",
"code" : 103
}
私がすることは:
rstest:PRIMARY> conf = rs.conf()
... //the conf document
rstest:PRIMARY> conf.members[0].votes = 0
rstest:PRIMARY> rs.reconfig(conf)
conf.members [0]はSECONDARYのドキュメント conf です
このリンクで、MongoDB のドキュメントには次のように記載されています。
...
cfg = rs.conf() cfg.members[3].votes = 0 cfg.members[4].votes = 0 cfg.members[5].votes = 0 rs.reconfig(cfg)
このシーケンスは、rs.conf() の出力のメンバー配列の順序に従って、セットの 4 番目、5 番目、および 6 番目のメンバーに 0 票を与えます。この設定により、セットはこれらのメンバーをプライマリとして選出できますが、選挙で投票することはできません。
...
しかし、返されたエラー メッセージには、non-votingの優先順位 = 0 を設定する必要があることが示されていますが、これはメンバーがプライマリになれないことを意味しています。
私が理解できなかったこと、またはどこが間違っているのでしょうか?
どうもありがとう