问题描述
集群:3个节点(一个失败)
数据:〜150GB
操作日志:大约24小时
每个节点都有4GB RAM
我有Mongodb群集,该群集在同一replicaset中包含3个mongodb节点。群集由OpsManager管理。
几天前,副本集中的一个节点发生故障,没有足够的Oplog可用于与副本自动同步。 我试图通过删除所有他的DBPath内容并触发初始同步来手动同步该节点(整个过程是,停止mms服务,终止mongod进程,删除数据并启动mms服务)。
节点状态已更改为“ STARTUP2”(初始同步)。我正在观看dbpath数据以跟踪同步过程(使用'watch du -sh / var / lib / mongo'),数据增长正常,但是大约80GB之后,整个数据已删除(命令显示100MB) ,然后同步又重新开始。 (我知道WiredTiger不会将存储释放到操作系统,而是偶尔释放它,但是这种下降看起来很严重)。 这个同步过程发生了很多次(我让同步运行了2天)。
我也尝试过从备份开始同步。我已经使用了OpsManager的快照(我检查了是否有足够的oplog可以从快照进行同步)。但是,一旦我启动了mms服务,所有数据都将被删除。
我还考虑过从replicaset中另一个节点的文件系统备份开始,但是此过程需要数据库锁定,因此会引起大多数写入问题。
您对如何将节点与副本集同步有任何建议吗?
谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)