Подтвердить что ты не робот

RabbitMQ имеет ошибку Nodedown

На машине с Windows 7 Enterprise я сделал новую установку Erlang 17.4 и RabbitMQ 3.4.3 x64. Установка прошла успешно и беспрецедентно.

Я еще не пытался создать свою первую очередь или обмен, но я уже вижу проблемы. Эта проблема аналогична другому сообщению SO, но это другое сообщение, похоже, связано с кластеризацией, которой у меня нет. Кроме того, этот другой плакат может обойти его проблему, перезапустив службу RabbitMQ; этот подход не работает для меня.

Моя "nodedown" проблема очевидна в командной строке RabbitMQ:

C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.3\sbin > статус rabbitmqctl Статус node кролик @TPAJ05421843...
Ошибка: невозможно подключиться к node rabbit @TPAJ05421843: nodedown

ДИАГНОСТИКА

попытался связаться: [rabbit @TPAJ05421843]

кролик @TPAJ05421843:
  * подключен к epmd (порт 4369) на TPAJ05421843
  * epmd сообщает: node "кролик" вообще не работает
                  другие узлы на TPAJ05421843: ['RabbitMQ']
  * предложение: запустите node

current node подробности:
- node имя: 'rabbitmqctl-19884 @TPAJ05421843'
- home dir: H:\
- хеш файл cookie: PD4QQCYrf0TME9vIko3Xuw ==

Исходя из вышесказанного, я решил проверить статус node явно названного "RabbitMQ" . Я получаю следующее:

C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.3\sbin > rabbitmqctl -n Статус RabbitMQ

Статус node 'RabbitMQ @TPAJ05421843'...
Ошибка: невозможно подключиться к node 'RabbitMQ @TPAJ05421843': nodedown

ДИАГНОСТИКА

попытался связаться: ['RabbitMQ @TPAJ05421843']

RabbitMQ @TPAJ05421843:
  * подключен к epmd (порт 4369) на TPAJ05421843
  * epmd сообщает node "RabbitMQ" работает на порту 59301
  * TCP-соединение выполнено успешно, но распределение Erlang не удалось
  * предложение: имя хоста несоответствие?
  * предложение: правильно ли установлен файл cookie?

current node подробности:
- node имя: 'rabbitmqctl-23076 @TPAJ05421843'
- home dir: H:\
- хеш файл cookie: PD4QQCYrf0TME9vIko3Xuw ==

Хорошо, это едва лучше, поскольку, по крайней мере, он признает, что "RabbitMQ" работает на порту 59301. Но что, черт возьми, это может означать, что "Распределение Erlang не удалось"?

Когда я пытаюсь исследовать эту тему, я нашел статьи, в которых говорится: "Убедитесь, что у вас есть файлы cookie". Исходя из этого, я нашел эту статью, в которой утверждается, что "несоответствие cookie" не относится ко мне, потому что я не создал (и не намеревался создавать) кластер RabbitMQ.

Что мне делать?

4b9b3361

Ответ 1

У меня была такая же проблема сегодня. Не было проблем с файлами cookie или брандмауэром, и окна сообщили, что служба работает успешно. Это, наконец, исправлено:

  • Запустите команду RabbitMQ sbin в качестве администратора.
  • Запустите "rabbitmq-service remove"
  • Запустите "rabbitmq-service install"

По какой-то причине служба, настроенная установщиком, не настроила несколько записей в реестре. Запуск этого правильного набора и разрешить запуск службы.

Одна вещь, которую я заметил, заключалась в том, что до того, как я это сделал, описания службы в представлении служб Windows не было. После установки с помощью команды rabbitmq-service описание было видимым. Это может быть быстрым индикатором, если у вас такая же проблема.

Ответ 2

Из командной строки RabbitMQ sbin (запускается как администратор) выполните следующую команду:

rabbitmq-server restart 

Ответ 3

Как заметил @eddyP, у меня было два разных файла cookie. Один в C:\Windows\.erlang.cookie и один в C:\Users\my_user_name\.erlang.cookie. Копирование первого над последним, так что оба файла были одинаковыми, исправили проблему для меня.

Ответ 4

Тот же вопрос в списке рассылки RabbitMQ: https://groups.google.com/forum/#!topic/rabbitmq-users/0s1ExFhl4hM.

Файл cookie Erlang используется rabbitmqctl, а также серверные узлы, поэтому ему может потребоваться позаботиться (помещен в нужное место). См. "Установка в качестве пользователя, не являющегося администратором, оставляет .erlang.cookie не в том месте" в quirks Windows.

Ответ 5

В Windown, по какой-либо причине удалите всю папку в c:\Users\xxx\AppData\Roaming\RabbitMQ\db\ (xxx - ваше имя пользователя) затем поток @Jerdev ответ и

  • запустите rabbitmq net start rabbitmq

  • проверить службу rabbitmq rabbitmqctl status

Ответ 6

Если вы придете сюда искать ответ linux для того же сообщения об ошибке, попробуйте

sudo service rabbitmq-server start

(который не является блокирующей командой)

Ответ 7

Я разрешаю свою проблему, делая это в Windows 10.

  • Выполнение командной строки RabbitMQ (sbin dir) в качестве администратора.
  • Выполнить "rabbitmq-service remove" в (Командная строка RabbitMQ).
  • Выполнить% AppData% в диалоговом окне "Запуск Windows".
  • Удалить все файлы в папке RabbitMQ.
  • Выполнить "rabbitmq-service install" в (Командная строка RabbitMQ).
  • Выполнить "rabbitmqctl start_app" в (Командная строка RabbitMQ).

Ответ 8

Просто выполните следующие действия:

  • Удалите rabbitmq и erlang.
  • удалите папку rabbitmq, существующую в ваших appdata (если вы не узнайте местоположение appdata, просто введите echo% AppData% в команде подскажите)
  • Затем установите сначала erlang, а затем rabbitmq.
  • После установки включите плагин управления, используя следующую команду:

    rabbitmq-plugins enable rabbitmq_management

Ответ 9

Вот как я разрешил ошибку в моей системе Windows 8:

Проверьте наличие синтаксической ошибки в файле rabbitmq.config, размещенном в папке AppData для Windows.

Как проверить, есть ли синтаксическая ошибка?

Вы можете запустить rabbitmq-server restart из папки sbin в:
Program Files/RabbitMQ/rabbitmq_server_x.x/sbin/.

Замените содержимое rabbitmq.config на rabbitmq.config.example.

Вы можете найти файл rabbitmq.config.example в:

Program Files/RabbitMQ/rabbitmq_server_x.x/etc/

Предупреждение, вы потеряете конфигурацию, которую вы сохранили ранее с помощью rabbitmq.

После изменения файлов просто нажмите

перезапуск rabbitmq-server

в папке sbin, упомянутой выше.