web-dev-qa-db-ja.com

systemctlを使用してcentos 7でrabbitmqサーバーを起動できない

Centos 7でrabbitmqサーバーを起動しようとしています。これはrabbitmq-serverに依存するため、erlangをインストールしました。パッケージerlang.x86_64 0:R16B-03.7.el7 .Iその後、パッケージrabbitmq-server-3.2.2-1.noarch.rpmを使用してrabbitmqをインストールしました。インストールは成功しました。 rabbitmq-pluginsを使用して管理コンソールを有効にし、rabbitmq_managementを有効にしました。しかし、サービスrabbitmq-serverの開始中に失敗します。

[root@tve-centos ~]# systemctl start rabbitmq-server.service
Job for rabbitmq-server.service failed. See 'systemctl status rabbitmq-server.service' and 'journalctl -xn' for details.
[root@tve-centos ~]# systemctl status rabbitmq-server.service
rabbitmq-server.service - LSB: Enable AMQP service provided by RabbitMQ broker
   Loaded: loaded (/etc/rc.d/init.d/rabbitmq-server)
   Active: failed (Result: exit-code) since Fri 2014-09-12 13:07:05 PDT; 8s ago
  Process: 20235 ExecStart=/etc/rc.d/init.d/rabbitmq-server start (code=exited, status=1/FAILURE)

Sep 12 13:07:04 tve-centos su[20245]: (to rabbitmq) root on none
Sep 12 13:07:05 tve-centos su[20296]: (to rabbitmq) root on none
Sep 12 13:07:05 tve-centos su[20299]: (to rabbitmq) root on none
Sep 12 13:07:05 tve-centos rabbitmq-server[20235]: Starting rabbitmq-server: FAILED - check /var/log/rabbitmq/startup_{log, _err}
Sep 12 13:07:05 tve-centos rabbitmq-server[20235]: rabbitmq-server.
Sep 12 13:07:05 tve-centos systemd[1]: rabbitmq-server.service: control process exited, code=exited status=1
Sep 12 13:07:05 tve-centos systemd[1]: Failed to start LSB: Enable AMQP service provided by RabbitMQ broker.
Sep 12 13:07:05 tve-centos systemd[1]: Unit rabbitmq-server.service entered failed state.

ログには/ var/log/rabbitmq/startup_logが表示されますBOOT FAILED ===========

Error description:
   {could_not_start,rabbitmq_management,
                    {could_not_start_listener,[{port,15672}],eacces}}

Log files (may contain more information):
   /var/log/rabbitmq/[email protected]
   /var/log/rabbitmq/[email protected]

しかし、プロセスはポート15672を使用していません

ただし、/ usr/sbin/rabbitmq-serverを使用して開始しようとした場合。サービスを正常に開始しました。しかし、私の要件はsystemctlを使用して起動することです。

15
Vignesh Kumar

ポートの問題のようです。それを確認するには

systemctl stop firewalld
systemctl disable firewalld 

そして、/ etc/selinux/configファイルで一時的にSELinuxを無効にします

SELINUX=disabled

マシンを再起動して、問題が解決するかどうかを確認してください。

2
KarthikJ

より良い答えは、実際にSELinuxとファイアウォールを修正することです。

ポートを開きます。

firewall-cmd --permanent --add-port=5672/tcp
firewall-cmd --reload
setsebool -P nis_enabled 1

それは私のために働く。

19
chriscowley

このコマンドを実行した後:

[root@gcp-hehe-amqp ~]# /sbin/service rabbitmq-server start

そして、エラーを取得します:

Redirecting to /bin/systemctl start rabbitmq-server.service
Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details"

多くの試みの後、私はこれに従うことでエラーを解決しました:

  1. コマンドを実行:firewall-cmd --permanent --add-port=5672/tcp
  2. その後:firewall-cmd --reload
  3. これを変える: SELINUX=disabled/etc/selinux/config
  4. /etc/rabbitmq/rabbitmq.confでプロキシプロトコルを有効にします

    proxy_protocol = true

1
Jeanne Y.