2016-10-15 2 views
1

У меня возникли проблемы с настройкой набора/кластера Mongo v3.2. Я включил mongod s журналы с встроенными комментариями от A) узел, в котором я инициализировал набор реплик, и B) другой узел (остальные узлы имеют такую ​​же проблему). Короче говоря, проблема в том, что сердцебиение от всех других узлов к узлу, из которого я первоначально устанавливал набор реплик из keep failing из-за HostUnreachable, но я не уверен, как отлаживать дальше, так как mongo <initial node> отлично работает со всеми другими узлами поэтому я не думаю, что это проблема с доступом к сети. После некоторого Googling я предположил, что это связано с установкой bindIp, которую я использовал в моем файле конфигурации Mongo (или его отсутствии), но перечисление всех IP-адресов узлов не похоже на трюк.MongoDB Replica Set Healtcheck - HostUnreachable

ВИДЕТЬ MongoDB конфигурационные файлы & журналы здесь-

https://gist.github.com/tejasmanohar/f0e705fb0d9e96f68e05e1ab20c478be

Почему это Healthcheck может быть сбой и/или как я могу отлаживать дальше или, может быть, воспроизводящие неисправного соединения друг от друга за пределами mongod (я могу ping и подключитесь через mongo ко всем одноранговым узлам от каждого хоста)? Благодаря!

Update: options: { config: "/etc/mongod.conf", net: { bindIp: true }, replication: { replSet: "rs0" } } Я заметил, что mongod журналы показывают bindIp: true, а не список, установленного в моем файле конфигурации Монго. Это проблематично? Я попытался предоставить строку с разделителями-запятыми вместо массива, так как тип поля бит unclear in docs, но тот же результат.

ответ

1

Кажется, вы устанавливаете ips других машин на bindIp, но вы должны использовать ip-устройство машины, доступное другим.

Например, на вашей машине mongo-initial.q, ваш bindIp должен быть как:

"bindIp": "127.0.0.1,10.0.11.2" 

here Подробнее.

Не знаю, исправит ли он все, кроме старта.

+0

А, это правильно ... но все равно не повезло :(. Я вижу '. Не нашел локальный набор настроек конфигурации конфигурации при запуске; NoMatchingDocument: Не удалось найти файл конфигурации набора реплик в local.system.replset" 'at запускается на всех узлах.Это проблематично? Опция bindIp также регистрируется как «истина» в журналах «mongod», а не в массиве (см. gist from original post). Мне кажется, что я что-то неправильно настраиваю, –

+0

Это было ... должно было быть разделение запятой, а не список. –

+0

Wow я этого не видел. Я обновлю свой ответ, чтобы отразить его – andresk

1

Итак, решение не имеет для меня 100% -ного смысла, но мне пришлось изменить значение bindIps на строку с разделителями-запятыми вместо массива. Кажется, что массив работает в YAML, но не JSON. Все еще не понимаю, почему он вышел из системы как раньше. @andresk указала на что-то еще неправильное в моем решении. У меня bindIp настройка имела мои IP-адреса, но не собственный хост.

Смежные вопросы