如何为mongodb 3.2副本分配优先级?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为mongodb 3.2副本分配优先级?相关的知识,希望对你有一定的参考价值。

我有mongodb数据库与复制(1个主要和4个辅助机器命名为node1,node2,node3,node4和node5)。我想为节点分配优先级。如果node1下降然后node2应该成为主要如果node1node2下降然后node3应该成为主要等等。我正在尝试分配优先级使用以下命令,但它没有改变:

cfg = rs.conf()
cfg.members[0].priority = 20
cfg.members[1].priority = 15
cfg.members[2].priority = 10
cfg.members[3].priority = 5
cfg.members[4].priority = 1
rs.reconfig(cfg)

我使用的是Mongodb版本:3.2

答案

你还必须配置votes

cfg = rs.conf()
cfg.members[0].votes = 1;
cfg.members[0].priority = 20;
cfg.members[1].votes = 1;
cfg.members[1].priority = 15;
cfg.members[2].votes = 1;
cfg.members[2].priority = 10;
cfg.members[3].votes = 1
cfg.members[3].priority = 5;
cfg.members[4].votes = 1
cfg.members[4].priority = 1;
rs.reconfig(cfg);

重要事项在版本3.2中已更改:

无表决权的成员必须拥有

优先级为0.优先级大于0的成员不能有0票。

要将成员配置为非投票,请将其投票和优先级值都设置为0。

有关MongoDB Documentationvotes的更多信息,请参阅priority

以上是关于如何为mongodb 3.2副本分配优先级?的主要内容,如果未能解决你的问题,请参考以下文章

如何为kafka主题分配优先级

Mongodb添加副本及修改优先级

配置MongoDB副本集

常用调度算法总结

MongoDB副本集replica set--成员配置

如何为以下代码设置优先级高精度位置