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


8

rabbitmq-serverubuntu-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を起動する方法について何か提案はありますか?


ps -ef | grep [r]abbit
クォンタム

回答:


10

chefのインストール中にrabbitmq-serverのインストール中にこの問題に直面しました。私の回避策とこの問題の解決策は次のとおりです。

    $ sudo vim /etc/hosts

それから加えて

    $ 127.0.0.1 <hostname>

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

    $ hostname

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

    $ sudo service rabbitmq-server start

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


1

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

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

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


ありがとう、私のufwはこれらのポートをブロックしていました。あなたのコメントは私にとって問題を修正しました。
Bartosz Hernas 2015


0

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

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

$ sudo -s
$ vim /etc/hosts

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

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

127.0.0.1  your host name

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


質問はすでにそれ/etc/hostsが除外されたことを述べています。
Andrew B

実際に動作します。言葉遣いは不十分ですが
rdsoze 2014

0

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

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


0

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

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


0

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

ip add

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

ifconfig lo up

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

systemctl start rabbitmq-server
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.