我正在寻找一种方法来configuration两个不同数据中心的MongoDB服务器,它们保持主动 – 主动configuration。 站点A是客户访问的正常生产环境,所有写入都在此处发送,但所有数据写入也都复制到站点B(备份)。 此外,站点B也应该能够接受任何写入并将其复制到站点A.在DR情况下,站点A不在,站点B将具有完整的数据集并立即切换(仅最有可能的DNS),并且没有什么需要通过应用程序来改变。
我已经做了相当多的search,我还没有find解决办法。 我发现的最接近的是分片群集,但是这需要设置多个分片,每个分片具有副本集合和纵横交错,其中每个副本集合都位于站点A和B之间。这也意味着正常写入在主数据中心位于其他数据中心的主Mongo实例被分割为遍历networking,速度相当慢。
你要求的是“主 – 主复制”; MongoDB不支持这个,它只支持主 – 次级复制:
在MongoDB中复制
副本集是一组保持相同数据集的mongod实例。 副本集包含多个数据承载节点和可选的一个仲裁节点。 在数据承载节点中, 只有一个成员被认为是主节点 ,而其他节点被认为是次节点。