Não foi possível iniciar o rabbitmq-server no Ubuntu 12.04

8

Eu tento instalar rabbitmq-serverno ubuntu-server 12.04, mas falhou.

Em seguida, adiciono a lista de fontes apt seguindo o guia em http://www.rabbitmq.com/install-debian.html

Mas a reinstalação ainda tem o mesmo erro da seguinte maneira:

$ sudo aptitude install rabbitmq-server
...
Setting up rabbitmq-server (2.8.7-1) ...
 * Starting message broker rabbitmq-server
 * FAILED - check /var/log/rabbitmq/startup_\{log, _err\}
   ...fail!
invoke-rc.d: initscript rabbitmq-server, action "start" failed.
dpkg: error processing rabbitmq-server (--configure):
 subprocess installed post-installation script returned error exit status 1
No apport report written because MaxReports is reached already
                                                              Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Errors were encountered while processing:
 rabbitmq-server
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install.  Trying to recover:
Setting up rabbitmq-server (2.8.7-1) ...
 * Starting message broker rabbitmq-server
 * FAILED - check /var/log/rabbitmq/startup_\{log, _err\}
   ...fail!
invoke-rc.d: initscript rabbitmq-server, action "start" failed.
dpkg: error processing rabbitmq-server (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 rabbitmq-server

E o log de erros parece não mostrar nada útil:

# startup_err shows this
Crash dump was written to: erl_crash.dump
Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})

# startup_log shows this
{error_logger,{{2012,10,10},{22,31,54}},"Protocol: ~p: register error: ~p~n",["inet_tcp",{{badmatch,{error,epmd_close}},[{inet_tcp_dist,listen,1},{net_kernel,start_protos,4},{net_kernel,start_protos,3},{net_kernel,init_node,2},{net_kernel,init,1},{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}]}
{error_logger,{{2012,10,10},{22,31,54}},crash_report,[[{initial_call,{net_kernel,init,['Argument__1']}},{pid,<0.20.0>},{registered_name,[]},{error_info,{exit,{error,badarg},[{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}},{ancestors,[net_sup,kernel_sup,<0.9.0>]},{messages,[]},{links,[#Port<0.90>,<0.17.0>]},{dictionary,[{longnames,false}]},{trap_exit,true},{status,running},{heap_size,610},{stack_size,24},{reductions,511}],[]]}
{error_logger,{{2012,10,10},{22,31,54}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{'EXIT',nodistribution}},{offender,[{pid,undefined},{name,net_kernel},{mfargs,{net_kernel,start_link,[[rabbitmqprelaunch18417,shortnames]]}},{restart_type,permanent},{shutdown,2000},{child_type,worker}]}]}
{error_logger,{{2012,10,10},{22,31,54}},supervisor_report,[{supervisor,{local,kernel_sup}},{errorContext,start_error},{reason,shutdown},{offender,[{pid,undefined},{name,net_sup},{mfargs,{erl_distribution,start_link,[]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor}]}]}
{error_logger,{{2012,10,10},{22,31,54}},std_info,[{application,kernel},{exited,{shutdown,{kernel,start,[normal,[]]}}},{type,permanent}]}
{"Kernel pid terminated",application_controller,"{application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}}"}

Pesquisei no Google por algum tempo, mas não obtive nada útil.

Uma solução na internet é garantir que o nome do host possa ser pingado, mas eu /etc/hostsjá tenho essa linha no topo:

127.0.0.1    localhost    myserver

Alguma sugestão sobre como levantar o rabbitmq-server?

lxyu
fonte
ps -ef | grep [r]abbit?
quanta

Respostas:

10

Eu enfrentei esse problema ao instalar o rabbitmq-server, enquanto instalava o chef. A solução alternativa para mim e a solução para esse problema são apresentadas a seguir.

    $ sudo vim /etc/hosts

Então adicione

    $ 127.0.0.1 <hostname>

Aqui está o seu nome de host, se não tiver certeza sobre o nome do host, execute o seguinte comando:

    $ hostname

o resultado é o seu nome de host. Apenas adicione isso ao seu / etc / hosts e execute:

    $ sudo service rabbitmq-server start

E foi iniciado. Isso funcionou para mim. Obrigado pelo seu tempo para ler. :)

Apurv Nerlekar
fonte
1

Seu firewall / porta pode bloquear para que não seja possível inicializar!

Por padrão, você deve ativar 5672 (porta coelho mq) e 4365 (porta empd)

Em seguida, reinicie-o novamente e deve funcionar.

Kit Ho
fonte
Obrigado, meu ufw estava bloqueando essas portas. O seu comentário corrigiu um problema para mim.
Bartosz Hernas
0

Este é um problema relacionado ao /etc/hostarquivo. Este arquivo não está configurado corretamente.

Basta abrir o arquivo:

$ sudo -s
$ vim /etc/hosts

Verifique as linhas que começam com "127.0.0.1" neste arquivo (geralmente está localizado na parte superior do arquivo).

Então faça com que fique assim:

127.0.0.1  your host name

Em seguida, salve e saia. Agora reinicie rabbitmq-servere confirme se está funcionando.

Ajay Kumar Karn
fonte
A questão já afirma que /etc/hostsfoi descartada.
Andrew B
Realmente funciona. Embora mal formulada
rdsoze
0

Também recebi um erro semelhante (eu não tenho os logs quando reiniciei o rabbitmq-server para devstack) Meu arquivo / etc / hosts estava bem configurado.

Quando rabbitmq_server falha, ele registra certas informações em erl_crash.dump. No arquivo, pude ver que a porta 5672 (onde o servidor está implantado) não é livre. O mesmo era visível no netstat -vtanp | grep 5672 A porta estava sendo usada pelo beam.smp. Parei o processo e reiniciei o rabbitmq-server, e funcionou.

Reedip Banerjee
fonte
0

No meu caso, o problema era que meu firewall estava bloqueando todas as conexões locais.

Eu havia definido a política iptables para pacotes recebidos como DROP. No entanto, eu precisava adicionar uma regra específica para permitir pacotes provenientes do host local.

Winston Ewert
fonte
0

Só para ter certeza, dê uma olhada na sua rede local

ip add

Se não houver uma rede "lo", você deve habilitá-la:

ifconfig lo up

Em seguida, reinicie o servidor novamente e vamos ver se ele funciona novamente agora

systemctl start rabbitmq-server
Caberset Mercabarna
fonte