пятница, 12 апреля 2013 г.

Что в имени тебе моём? "Erlang machine stopped instantly ... (Code 7023)" при запуске RabbitMQ

English version is at the end of post.

Итак, вы решили использовать брокер сообщений. Почитали отзывы, поговорили с гуру, и выбор пал на RabbitMQ. Определились с компьютером, на котором будет работать брокер, и устанавливаете на него RabbitMQ Server. Сначала ставите Erlang (установщик сервера сам предложит перейти на сайт Erlang-а, если последний ещё не установлен), а затем и сам сервер.

Ничто не предвещало беды, но... брокер не работает! Смотрим на установленные сервисы и видим, что RabbitMQ Server есть, но не запущен. Запускаем и... наблюдаем, как на наших глазах от тут же останавливается. Идём в журнал событий и видим уведомление от Service Control Manager, с кодом 7023 и параметрами "RabbitMQ" и "%%1067". <sarcasm>Ну, теперь то всё ясно!</sarcasm> Посмотрев внимательно на события замечаем, что есть ещё одно, от компонента ErlSrv, с параметрами "RabbitMQ" и причиной: "Erlang machine stopped instantly (distribution name conflict?). The service is not restarted as OnFail is set to ignore." Всё это, конечно, замечательно, но решению проблемы не особо помогает.