Ответ 1
Перед выдачей команды кластера убедитесь, что вы вызываете sudo rabbitmqctl stop_app
. Это, казалось, проблема для меня.
Затем убедитесь, что вы вызываете sudo rabbitmqctl start_app
, чтобы начать его снова:)
Я пытаюсь сгруппировать кролика с помощью шеф-повара
Вот моя ошибка. Я выключил весь кролик на второй node.
rabbitmqctl join_cluster --ram [email protected]
Error: mnesia_unexpectedly_running
Итак... Какая сделка? Я пробовал это из http://agiletesting.blogspot.com/2010/05/rabbitmq-clustering-in-ubuntu.html, который должен удалить /var/lib/rabbitmq/mnesia. Нет. А на каком сервере doen он не будет работать? Все?
Спасибо
Перед выдачей команды кластера убедитесь, что вы вызываете sudo rabbitmqctl stop_app
. Это, казалось, проблема для меня.
Затем убедитесь, что вы вызываете sudo rabbitmqctl start_app
, чтобы начать его снова:)
Вызвать очень важную часть комментария @Itai Ganot, которая не сразу интуитивно понятна: вам нужно запустить rabbitmqctl stop_app
на всех узлах, кроме одного. Если вы запустите rabbitmqctl stop_app
на всех узлах, вы получите другое сообщение: Error: mnesia_not_running
.
Короче:
Error: mnesia_unexpectedly_running
означает "вам нужно запустить rabbitmqctl stop_app
на этом nodeError: mnesia_not_running
означает "вам нужно запустить rabbitmqctl start_app
на node, который вы пытаетесь сгруппировать с помощьюВам нужно скопировать файл cookie из node, который вы пытаетесь подключить
Давайте используем пример с двумя узлами: rabbit @node1 и rabbit @node2
[email protected]
и скопируйте файл cookie из cat /var/lib/rabbitmq/.erlang.cookie
[email protected]
, удалите текущий файл cookie и вставьте новый.Выполните следующие команды в том же node
/usr/sbin/rabbitmqctl stop_app
/usr/sbin/rabbitmqctl reset
/usr/sbin/rabbitmqctl cluster [email protected]
Это должно сделать это.
Та же процедура документирована здесь
Я также получил ту же ошибку при попытке создать кластер из двух серверов rabbitmq.
Насколько я знаю, реальный процесс создания кластера немного отличается от тех, которые описаны в других ответах, но это тот, который в конечном итоге сработал у меня:
После того, как у вас есть два или более узлов, на которых запущен rabbitmq-сервер, выберите один сервер и тот, который вы не касаетесь, - позвоните ему в rabbitmaster во всех других узлах, выполните следующие действия:
1. Make sure the rabbitmq-server is not running.
2. # su - rabbitmq
3. $ rabbitmq-server -detached
4. $ rabbitmqctl cluster_status
5. $ rabbitmqctl stop_app
6. $ rabbitmqctl join_cluster [email protected]
7. $ rabbitmqctl start_app
Теперь вы можете запустить rabbitmqctl cluster_status
и посмотреть, как вы только что сконфигурировали node, и мастер rabbitmq.
Более подробную информацию можно найти в Официальном сайте RabbitMQ.
Я не люблю отвечать на мои собственные вопросы, но кластеризация раввин-шеф-повара была настоящей болью. Проблема с кроликом была решена путем использования опции -N при начальной загрузке. Кролику не нравится изменение имени хоста.
Итак, после того, как документы на сайте кролика для кластеризации работали, как ожидалось. Если вы используете опцию -N с шеф-поваром... возникнут основные проблемы.