web-dev-qa-db-ja.com

Ubuntu 12.04でrabbitmq-serverを起動できません

インストールしようとしていますrabbitmq-server ubuntu-server 12.04で失敗しました。

次に http://www.rabbitmq.com/install-debian.html のガイドに従ってaptソースリストを追加します

しかし、再インストールしても、次と同じエラーが発生します。

$ 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

そしてエラーログは何も役に立たないようです:

# 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,[]]}}}"}

私はしばらくグーグルしましたが、何も役に立ちませんでした。

インターネット上の1つの解決策は、ホスト名がping可能であることを確認することですが、私の/etc/hostsはすでにこの行を上に持っています:

127.0.0.1    localhost    myserver

Rabbitmq-serverを起動する方法について何か提案はありますか?

8
lxyu

Chefをインストールしているときに、rabbitmq-serverをインストールしているときにこの問題に直面しました。私の回避策とこの問題の解決策は次のとおりです。

    $ Sudo vim /etc/hosts

それから加えて

    $ 127.0.0.1 <hostname>

ホスト名は次のとおりです。ホスト名がわからない場合は、次のコマンドを実行してください。

    $ hostname

結果はホスト名です。それを/ etc/hostsに追加して実行します。

    $ Sudo service rabbitmq-server start

そしてそれが始まりました。これでうまくいきました。お読みいただきありがとうございます。

10
Apurv Nerlekar

まず、erl -sname fooシェルで。同じエラーが発生する場合、それは buntu erlangパッケージ の問題である可能性があります。

それで、私は 最新のerlangパッケージ をインストールしただけで、これは私にとってはうまくいきます。

1
joest

ファイアウォール/ポートがブロックして、起動できない可能性があります!

デフォルトでは、5672(rabbit mqポート)および4365(empdポート)を有効にする必要があります

次に、再起動して機能するはずです。

1
Kit Ho

これは/etc/Hostファイルに関連する問題です。このファイルは正しく構成されていません。

ファイルを開くだけです:

$ Sudo -s
$ vim /etc/hosts

このファイルの「127.0.0.1」で始まる行を確認します(通常、ファイルの先頭にあります)。

次に、次のようにします。

127.0.0.1  your Host name

次に、保存して終了します。ここでrabbitmq-serverを再起動し、機能することを確認します。

0
Ajay Kumar Karn

同様のエラーも発生しました(devstackのrabbitmq-serverを再起動したため、ログがありません)/ etc/hostsファイルは適切に構成されていました。

Rabbitmq_serverが失敗すると、特定の情報がerl_crash.dumpに記録されます。ファイルでは、ポート5672(サーバーがデプロイされている場所)が空いていないことがわかりました。同じことがnetstat -vtanp | grep 5672からも確認できました。ポートは、beam.smpによって使用されていました。プロセスを停止してrabbitmq-serverを再起動すると、動作しました。

0
Reedip Banerjee

私の場合、問題はファイアウォールがすべてのローカル接続をブロックしていたことでした。

着信パケットのiptablesポリシーをDROPに設定しました。ただし、localhostからのパケットを許可する特定のルールを追加する必要がありました。

0
Winston Ewert

念のため、ローカルネットワークをご覧ください

ip add

「lo」ネットワークがない場合は、有効にする必要があります。

ifconfig lo up

次に、サーバーを再起動して、今すぐ機能するかどうかを確認しましょう

systemctl start rabbitmq-server
0