0

我们有一个带有 2 个分片的 mongodb,每个分片都有这些服务器:

  1. Shard 1:Master,运行 MongoD 和 Config 服务器
  2. Shard 1-s1:Slave,运行 MongoD 和 MongoS 服务器
  3. Shard 1-s2:Slave,运行 MongoD 和 MongoS 以及 Arbiter 服务器
  4. Shard 2:Master,运行 MongoD 和 Config Server
  5. Shard 2-s1:Slave,运行 MongoD 和 Config 和 MongoS 服务器
  6. Shard 2-s2:Slave,运行 MongoD 和 MongoS 以及 Arbiter 服务器

但是最近几天mongodb总是失败,经过几天的搜索,我发现MongoD在Shard 1(Master)运行总是在修改太多连接后出现故障,其他MongoD没有这个问题。

当 S1Master 的 MongoD 运行过多连接约 2 小时后,4 个 Mongos Server 会一一关闭。这是 Mongos 的错误日志(10.81.4.72:7100 运行 MongoD):

8 月 20 日星期二 20:01:52 [conn8526] DBClientCursor::init call() 失败 8 月 20 日星期二 20:01:52 [conn3897] ns:user.dev 无法在所有分片中初始化光标,因为:为 ns 检测到过时的配置:用户。dev ParallelCursor::_init @ s01/10.36.31.36:7100,10.42.50.24:7100,10.81.4.72:7100 尝试:0 8 月 20 日星期二 20:01:52 [conn744] ns:user.dev 无法初始化所有光标分片,因为:为 ns 检测到过时的配置:user.d ev ParallelCursor::_init @ s01/10.36.31.36:7100,10.42.50.24:7100,10.81.4.72:7100 尝试:0

我不知道为什么这个 mongod 恢复了这么多连接,这些块显示分片效果很好。 在此处输入图像描述

4

0 回答 0