我一直在設置我的Mongo v3.2副本集/集羣時遇到困難。我將mongod
的日誌與來自A)的內嵌評論包括在一起,節點I初始化了來自另一個節點(其餘節點具有相同問題)的複製集。簡而言之,問題在於從所有其他節點到節點I的心跳最初都會由於HostUnreachable而設置複製集保持失敗,但我不確定如何進一步調試,因爲mongo <initial node>
可以在所有其他節點中正常工作所以我不認爲這是一個網絡訪問問題。谷歌搜索後,我認爲這是由於我在我的Mongo配置文件(或缺乏)的bindIp設置,但列出所有節點IP似乎沒有辦法。MongoDB副本集Healtcheck - 主機不可達
見MongoDB的配置文件&日誌這裏 -
https://gist.github.com/tejasmanohar/f0e705fb0d9e96f68e05e1ab20c478be
爲什麼會這樣健康檢查是失敗的和/或我如何進一步調試或者也許除了重現失敗連接mongod
以外(我可以ping
並通過mongo
連接到每個主機的所有同行)?謝謝!
更新: options: { config: "/etc/mongod.conf", net: { bindIp: true }, replication: { replSet: "rs0" } }
我注意到mongod
日誌顯示bindIp: true
,而不是我的蒙戈配置文件設置列表。這有問題嗎?我嘗試提供逗號分隔的字符串而不是數組,因爲字段的類型是unclear in docs,但結果相同。
啊,這是正確的......但仍然沒有運氣:(我看到''在啓動時沒有找到本地副本集配置文檔; NoMatchingDocument:沒有找到副本集配置文件在local.system.replset「'at在所有的節點上啓動,這是有問題的嗎?bindIp選項在'mongod'日誌中記錄爲'true',而不是數組(參見原文的要點)。我感覺好像我錯在那裏配置了一些東西, t指甲什麼的。 –
這就是它......必須是逗號分隔的字符串,而不是列表 –
哇我沒有看到,我會更新我的答案以反映它 – andresk