【问题标题】:MongoDB - No autodiscovery for clusteringMongoDB - 集群没有自动发现
【发布时间】:2019-03-14 14:41:26
【问题描述】:

场景:

  1. 我在 3 MongoDB 节点上安装 MongoDB v3.6
  2. 在 3 个节点上设置密钥文件
  3. mongod.conf 中命名一个 Replset
  4. 重启 MongoDB

此时 MongoDB 会自动在 3 个节点之间启动副本集。这在我的情况下是不希望的。

问题: 如何确保 MongoDB 不会自动启动 ReplSet?

我想手动完成。

【问题讨论】:

    标签: mongodb replication


    【解决方案1】:

    似乎我的解决方案是:

    1. 安装 mongoDB
    2. 在未启用安全/密钥文件的情况下放置配置 -> 重新启动 mongo
    3. 创建用户
    4. 启动副本集
    5. 在配置中启用安全/密钥文件的配置 -> 重新启动 mongo

    【讨论】:

      【解决方案2】:

      我不确定您为什么要手动启动副本集。你能详细说明一下你的用例吗?据我所知,在 MongoDB 副本集中,从属节点遵循上游主机的操作日志 (oplog),该主机可以是主节点,也可以是具有较新 oplog 的从节点。这确保了设置的高可用性,所有这些都在后台自动发现。为什么要摆弄自动发现和启动副本集?如果我在这里遗漏任何东西,也许我可以从你的用例中学习。

      【讨论】:

      • 因为我使用 Ansible 来启动和管理集群。我还希望运行是幂等的。我需要管理复制和身份验证。但是,如果它的配置中有复制设置,则无法再管理身份验证。所以,当 MongoDB 第一次自动集群时,我 / Ansible 就无法控制身份验证了。
      猜你喜欢
      • 2020-11-25
      • 2022-01-25
      • 2020-12-24
      • 2020-03-21
      • 2023-03-24
      • 1970-01-01
      • 2020-03-28
      • 2015-08-27
      • 1970-01-01
      相关资源
      最近更新 更多