MongoDB Replica Set 重新同步
生产环境上用了 MongoDB,三个节点组成的 ReplicaSet(复制集)。部署好后,应用一直没出过问题,所以平时也没管过。今天早上突然想上服务器看看,于是登录了 primary 节点查看日志,发现这条日志不断重复:
2016-04-15T03:02:39.470+0000 W NETWORK [ReplExecNetThread-28676] Failed to connect to 172.31.168.48:11102, reason: errno:111 Connection refused
其实就是有个 secondary 节点一直连接不上。不太可能是网络问题,所以很可能是那个节点的 mongod 进程挂掉了。登录上 secondary 节点,mongod 进程果然不在运行;查看日志发现最后一条是在 2016-03-21. 一时间有两个疑问涌上心头:
- 为什么会挂掉?
- 如何修复?