サービスが実行されているが、rabbit-mq
突然サービスが実行されていないため起動できないことがわかりました。
このタイプの問題に関する他の既存の質問を確認しましたが、ほとんど/etc/hosts設定の問題を指摘しています。
再起動の結果は次のとおりです。
/etc/init.d/rabbitmq-server restart
[....] Restarting rabbitmq-server (via systemctl): rabbitmq-server.serviceJob for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
failed!
systemctlの詳細は次のとおりです。
systemctl status rabbitmq-server.service
rabbitmq-server.service - RabbitMQ Messaging Server
Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since mié 2018-10-03 13:07:32 CEST; 42s ago
Process: 5545 ExecStop=/usr/sbin/rabbitmqctl stop (code=exited, status=2)
Process: 4564 ExecStartPost=/usr/lib/rabbitmq/bin/rabbitmq-server-wait (code=exited, status=2)
Process: 4563 ExecStart=/usr/sbin/rabbitmq-server (code=exited, status=1/FAILURE)
Main PID: 4563 (code=exited, status=1/FAILURE)
systemd[1]: Starting RabbitMQ Messaging Server...
rabbitmq[4564]: Waiting for rabbit@edr ...
rabbitmq[4564]: pid is 4571 ...
systemd[1]: rabbitmq-server.service: Main process exited, code=exited, status=1/FAILURE
rabbitmq[4564]: Error: process_not_running
systemd[1]: rabbitmq-server.service: Control process exited, code=exited status=2
systemd[1]: Failed to start RabbitMQ Messaging Server.
systemd[1]: rabbitmq-server.service: Unit entered failed state.
systemd[1]: rabbitmq-server.service: Failed with result 'exit-code'.
結果はjournalctl -xe
追加情報を提供しなかった。
/var/log/rabbitmq/startup_err ファイルには、次のメッセージが表示されます。
Crash dump is being written to: erl_crash.dump...done
Kernel pid terminated (application_controller) ({application_start_failure,kernel,{{shutdown,{failed_to_start_child,net_sup,{shutdown,{failed_to_start_child,auth,{"Cookie file /var/lib/rabbitmq/.erl
tail: /var/log/rabbitmq/startup_err: file truncated
Rabbit-mqが起動しないときに正確なエラーを見つける他の方法はありますか?
答え1
/var/log/rabbitmq/startup_log
最後に、次の詳細なエラーが見つかりました。
{error_logger,{{2018,10,3},{13,14,18}},“Cookie file /var/lib/rabbitmq/.erlang.cookie must be accessible by owner only”,[]}
私はRabbitmqに新しいファイルを作成させる方が良いと思ったので、適用された解決策はerlang Cookieファイルを削除することでした。
rm /var/lib/rabbitmq/.erlang.cookie
その後、Rabbitmqを再起動すると再び動作します。
答え2
chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
chmod 600 /var/lib/rabbitmq/.erlang.cookie