Привязка внешнего IP-адреса к серверу Rabbit MQ

у меня есть окно A, и на нем есть потребитель, который слушает на сервере Rabbit MQ

у меня есть окно B, которое опубликует сообщение слушателю

так что пока все это в поле A и я запускаю Rabbit MQ server w / defaults, он работает нормально.

по умолчанию host=127.0.0.1 на порту 5672, но когда я ... --4--> из коробки B я получаю:

Trying  box.a.ip.addy...
telnet: connect to address  box.a.ip.addy: No route to host
telnet: Unable to connect to remote host: No route to host

telnet на порту 22 в порядке, я могу ssh в поле A из окна B

поэтому я предполагаю, что мне нужно измените ip-адрес, используемый сервером RabbitMQ Я нашел это: http://www.rabbitmq.com/configure.html и теперь у меня есть файл config в папке с документацией сказал, С по RabbitMQ имя.config и он содержит:

[
    {rabbit, [{tcp_listeners, {"box.a.ip.addy", 5672}}]}
].

поэтому я остановил сервер и снова запустил сервер RabbitMQ. Не получилось. Вот ошибки из журналов ошибок. Это выше моего понимания. (на самом деле большая часть этого)

=ERROR REPORT==== 23-Aug-2011::14:49:36 ===
FAILED
Reason: {{case_clause,{{"box.a.ip.addy",5672}}},
         [{rabbit_networking,'-boot_tcp/0-lc$^0/1-0-',1},
          {rabbit_networking,boot_tcp,0},
          {rabbit_networking,boot,0},
          {rabbit,'-run_boot_step/1-lc$^1/1-1-',1},
          {rabbit,run_boot_step,1},
          {rabbit,'-start/2-lc$^0/1-0-',1},
          {rabbit,start,2},
          {application_master,start_it_old,4}]}

=INFO REPORT==== 23-Aug-2011::14:49:37 ===
    application: rabbit
    exited: {bad_return,{{rabbit,start,[normal,[]]},
                         {'EXIT',{rabbit,failure_during_boot}}}}
    type: permanent

и вот еще до начала log:

Erlang has closed
Error: {node_start_failed,normal}
^M
Crash dump was written to: erl_crash.dump^M
Kernel pid terminated (application_controller) ({application_start_failure,rabbit,{bad_return,{{rabbit,start,[normal,[]]},{'EXIT',{rabbit,failure_during_boot}}}}})^M

пожалуйста, помогите

2 ответов


вы пытались добавить?

RABBITMQ_NODE_IP_ADDRESS=box.а.ИС.Адди

в /ETC/в RabbitMQ/в RabbitMQ.файл conf?

Per http://www.rabbitmq.com/configure.html#customise-general-unix-environment

также в этой документации указано, что по умолчанию используется привязка ко всем интерфейсам. Возможно, в вашей системе уже установлен параметр конфигурации или переменная среды, чтобы ограничить переопределение сервера localhost все, что угодно.

обновление: после прочтения снова я понимаю, что telnet должен был вернуть " соединение отказано "не" нет маршрута к хосту."Я бы также проверил, есть ли у вас проблема, связанная с брандмауэром.


вам нужно открыть tcp-порт на вашем брандмауэре

используя Linux, найдите файл конфигурации iptables:

eric@dev ~$ find / -name "iptables" 2>/dev/null
/etc/sysconfig/iptables

редактировать файл:

sudo vi /etc/sysconfig/iptables

исправьте файл, добавив порт:

# Generated by iptables-save v1.4.7 on Thu Jan 16 16:43:13 2014
*filter
-A INPUT -p tcp -m tcp --dport 15672 -j ACCEPT
COMMIT