当前位置: 代码迷 >> 综合 >> Centos7 安装RabbitMQ + 采坑
  详细解决方案

Centos7 安装RabbitMQ + 采坑

热度:89   发布时间:2023-09-18 20:51:17.0

安装 RabbitMQ 之前要安装 Erlang,需要先到RabbitMQ官网看下版本对应关系。

当前我的rabbitmq-server是新版rabbitmq-server-3.8.1-1.el7.noarch.rpm,Erlang是erlang-22.2.1-1.el7.x86_64.rpm。下载地址:

链接:https://pan.baidu.com/s/1Vfvc2evjQOAUndPMCqmyaA 
提取码:1kpr

一、安装依赖

yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel

二、安装依赖socat,安装Erlang时需要这个

yum install -y socat

三、接下来安装Erlang和RabbitMQ

rpm -ivh erlang-22.2.1-1.el7.x86_64.rpm

rpm -ivh rabbitmq-server-3.8.1-1.el7.noarch.rpm

四、启动/停止RabbitMQ

方式一:

service rabbitmq-server stop

service rabbitmq-server start

方式二:

systemctl start rabbitmq-server

查看状态:

systemctl status rabbitmq-server

注:设置开机启动

chkconfig rabbitmq-server on

五、开启web管理界面

rabbitmq默认安装启动以后,是没有开启web管理界面的,通过rabbitmq-plugins list命令可列出插件的启用和禁用状态。

使用rabbitmq-plugins enable xxx开启插件

这里使用[root@localhost ~]#rabbitmq-plugins enable rabbitmq_management开启web界面管理插件

Centos7 安装RabbitMQ + 采坑

 

然后重新启动服务:

#systemctl restart rabbitmq-server

(或systemctl restart rabbitmq-server.service)

六、开放15672端口:

RabbitMQ默认使用15672端口进行web访问,所以我们要开放15672端口(或关闭防火墙)

1、查看状态: systemctl status firewalld 

2、开放端口

firewall-cmd --zone=public --add-port=15672/tcp --permanent   //开放端口

firewall-cmd --reload                                         //重新载入,使其生效

3、查看防火墙开放端口

firewall-cmd --list-ports

4、停止或禁用防火墙

停止: systemctl disable firewalld
禁用: systemctl stop firewalld

5、启动

启动: systemctl start firewalld

七、访问web界面

然后在主机中通过地址:http://IP:15672

第一次访问需要登录,默认的账号密码为:`guest/guest`

八、采坑

1、登录遇到问题:User can only log in via localhost(原因:rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问)

#Vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.x.x/ebin/rabbit.app

注:rabbitmq_server-3.x.x  》》写自己的安装版本

(找到这一行)将:{loopback_users, [<<”guest”>>]}

改为:{loopback_users, []}

Centos7 安装RabbitMQ + 采坑

2、版本关系不对应导致错误(导致启动失败)

(1)Error: unable to connect to node rabbit@localhost: nodedown

(2)rabbitmq安装报错erlang >= R16B-03 is needed by rabbitmq

注:必备小知识

卸载rpm包语法:

基本语法 rpm -e RPM包的名称

应用案例 :删除firefox  软件包

rpm -e firefox使用rpm进行安装

删除例如:

rpm -qa 软件名    #先查询已安装的软件

rpm -i rabbitmq-server-3.8.1-1.el7.noarch.rpm   #再删除