16

我正在尝试在centos 7中启动rabbitmq服务器。我安装了erlang,因为它是rabbitmq-server的依赖项。包 erlang.x86_64 0:R16B-03.7.el7 。然后我使用包 rabbitmq-server-3.2.2-1.noarch.rpm 安装了 rabbitmq。安装成功。我启用了管理控制台 uisng rabbitmq-plugins enable 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 启动失败 ===========

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

Log files (may contain more information):
   /var/log/rabbitmq/rabbit@tve-centos.log
   /var/log/rabbitmq/rabbit@tve-centos-sasl.log

但没有进程使用端口 15672

但是,如果我尝试使用 /usr/sbin/rabbitmq-server 启动它。我成功启动了该服务。但我的要求是使用 systemctl 启动它。

4

3 回答 3

21

更好的答案是实际修复 SELinux 和防火墙。

打开端口:

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

这对我行得通。

于 2014-11-16T20:34:05.757 回答
4

它看起来像一个端口问题。确认

systemctl stop firewalld
systemctl disable firewalld 

并在 /etc/selinux/config 文件中暂时禁用 SELinux

SELINUX=disabled

尝试重新启动您的机器,看看问题是否仍然存在。

于 2014-09-12T23:15:10.887 回答
1

运行此命令后:

[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 中启用代理协议为 true

    proxy_protocol = true

于 2018-10-05T09:41:39.393 回答