使用副本集仲裁节点和无投票节点¶
雷竞技下载官网MongoDB的Percona服务器复制模型是基于选举,当节点的副本集选择哪个节点成为主节点。
选举的需要会影响集群中节点数量的选择。选举是避免偶数节点的原因,并且至少有三个而不超过七个参与节点。
不过,有时在适合选举的节点数量和存储数据所需的节点数量之间存在矛盾。你可以用两种方法来解决这个矛盾:
- 添加仲裁者节点参与选举,但不存储数据,
- 添加无投票权的节点,存储数据但不参与选举。
添加仲裁节点¶
通常,每个节点存储一个完整的数据副本,但也有一种可能,为了减少磁盘IO和数据库使用的空间,添加一个仲裁者节点。仲裁程序不能成为主程序,并且没有数据的完整副本。仲裁者有一个选举投票,可以是奇数选举。仲裁器不要求持久卷。
雷竞技下载官网Percona Operator for MongoDB有能力创建副本集仲裁节点,如果需要。的“副本集”部分中可以配置此特性部署/ cr.yaml文件:
- 集
arbiter.enabled选项真正的允许仲裁实例, - 使用
arbiter.size选项设置所需数量的仲裁实例。
例如,输入以下内容部署/ cr.yaml将创建一个包含4个数据实例和1个仲裁器的集群:
…replset:…大小:4…仲裁者:启用:真正的大小:1…
请注意
可以在。中找到其他可能选项的描述复制集。仲裁者section的自定义资源选项参考。
增加无投票节点¶
无投票权的成员为副本集节点,不参与初选过程。该特性需要有7个以上的节点,或者如果有节点的边缘位置美国显然不应该参与投票过程。
请注意
无投票节点支持处于技术预览状态,不建议用于生产环境。
请注意
方法可以在边缘位置中添加无投票节点externalNodes选择。请参阅跨站点复制文档获取详细信息。
雷竞技下载官网的副本集部分中配置无投票节点的能力部署/ cr.yaml文件:
- 集
nonvoting.enabled选项真正的为了允许无投票的情况, - 使用
nonvoting.size选项,设置所需的非投票实例数量。
例如,输入以下内容部署/ cr.yaml将创建一个包含3个数据实例和1个无投票实例的集群:
…replset:…大小:3.…无投票权的:启用:真正的大小:1…
请注意
可以在。中找到其他可能选项的描述复制集。无投票权的section的自定义资源选项参考。
最近更新:2023-03-31