【问题标题】:why each mongodb replica set should have a distinct replSetName value, when application connects to these multiple replica set?当应用程序连接到这些多个副本集时,为什么每个 mongodb 副本集都应该有一个不同的 replSetName 值?
【发布时间】:2019-08-22 19:46:25
【问题描述】:

我正在部署多个 mongdb 副本集,并且想知道我应该给每个集一个唯一的 replSetName 吗?

我已经阅读了关于为每个集合选择唯一 replSetName 的 mongodb 官方文档的建议。 https://docs.mongodb.com/manual/reference/configuration-options/#replication.replSetName

所以我很想知道“哪些驱动程序可以按副本集名称对副本集连接进行分组?”。

【问题讨论】:

  • 当您一次连接多个副本集时,最好不要使用重复的副本集名称。与所有最佳实践建议一样,您不必遵循它们,但它可能有助于防止将来在解决问题时出现混淆。

标签: mongodb


【解决方案1】:

原因如下: 1. mongo 不允许你为副本集的所有成员分配相同的名称 2. 轻松识别哪个节点受到影响或有问题

澄清: 1. 为什么要为副本集的所有节点分配相同的名称?

在你的驱动的连接字符串中,你必须提到副本集所有成员的名称和端口以实现HA,以便它可以自动连接到新的Primary节点

【讨论】:

  • 感谢您的回复。但是我相信 replication.replSetName 选项是副本集所有成员的全局设置,因为文档提到“副本集中的所有主机必须具有相同的集名称”。
  • 澄清一下,我想为多个副本集分配相同的名称(不仅仅是一个副本集中的所有节点),只是为了简化 ansible 部署。
猜你喜欢
  • 2018-09-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-25
  • 1970-01-01
  • 2021-08-17
  • 2013-05-25
  • 2018-08-03
相关资源
最近更新 更多