背景描述

MongoDB 两个集群之间可通过 MongoShake 进行跨集群的数据异步复制,实现灾备和多活的业务场景,同时也免去双写的业务开销。

MongoShake 异步复制原理为从源库抓取 oplog 数据,然后发送到各个不同的 tunnel 通道,用户可以通过对接 tunnel 通道获取关注的数据,例如对接 Direct 通道直接写入目的 MongoDB,或者对接 RPC 进行同步数据传输等。

mongoshake

操作步骤

步骤一:创建目标集群

创建一个 MongoDB 集群,用于迁移源集群的数据。详情参考创建 MongoDB 集群

注意

确保目标集群与源集群之间的网络畅通。

步骤二:源集群开启 MongoShake 服务

详情参考开启 MongoShake 服务

步骤三:查看数据同步情况

  1. MongoShake 提供 Restful 接口,可用于数据同步期间监控数据同步情况。详细说明,请参见官方文档

  2. 数据同步完成后,执行 脚本 comparison.py 对比确认数据是否同步完成。

步骤四:关闭 MongoShake 同步通道

数据同步完成后,参考关闭 MongoShake 服务