MongoDB - 将复制设置为 DocumentDB

问题描述

我们正在建立一个本地 MongoDB 集群 - 在本地,我们将拥有一个主节点和一个节点,并且我们希望在 AWS 中拥有另一个节点。是否可以将该节点作为 DocumentDB 服务而不是 EC2 实例?

另外,我知道我必须有奇数个节点,是否可以先添加一个节点,然后再添加一个? 谢谢啊哈。

解决方法

另外,我知道我必须有奇数个总节点

在 MongoDB 副本集中,您可以拥有任意数量的节点。可以有一个 2 节点的副本集,尽管它在实际中并不是很有用,因为单个节点的不可用(例如,为了维护而重新启动)会使整个部署无法进行写入。如果您想在某处添加一个额外的副本(例如,用于从辅助节点进行地理位置接近的查询,或用于分析查询),则 4 节点副本集是一种可行的结构,但如果您只是为了冗余而这样做,您可能应该坚持使用标准 3 -node 配置并配置适当的备份。

是否可以先添加一个节点,然后再添加一个?

您可以随时重新配置副本集。

是否可以将该节点作为 DocumentDB 服务而不是 EC2 实例?

不太可能。 DocumentDB 不是 MongoDB。 DocumentDB 假装像一个 MongoDB,但它 1) 假装是 MongoDB 的旧版本,2) 即使这样,许多功能也不起作用,3) 它不是在引擎盖下与 MongoDB 接近相同架构的任何地方。因此,当您要求真正的 MongoDB 数据库与 DocumentDB 节点一起工作时,这可能不起作用。

这假设您甚至可以以所需的方式配置 DocumentDB - 我怀疑这是不可能的。

,

如果您只想将数据复制到 DocumentDB,数据库迁移服务是一个很好的工具:https://aws.amazon.com/dms/

但正如其他人所说,这将是一个独立于您的 MongodDB 设置的集群。