CentOS7 安装 RabbitMQ 3.6(方法适用于安装任
安装 RabbitMQ 步骤
说明:
由于新版本的诸多不确定性,所以这里我们选择稳定的 3.6.x 版本进行安装,由于 RabbitMQ 基于 Erlang,所以我们需要先安装 Erlang,注意:切记不要使用 yum 安装 Erlang,因为使用 yum 默认会安装较新版本的 Erlang,而我们这里安装 RabbitMQ 3.6.x 需要的 Erlang 的版本是:19.3.x,本文会借助 kerl 来进行特定版本的 Erlang 的安装。
- Erlang 和 RabbitMQ 的对应关系请看这里:
- 安装 kerl
-
下载 kerl
curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl
-
给 kerl 赋予可执行权限
chmod a+x kerl
-
查看 Erlang 所有发行版本号,找到自己需要的版本号并复制,我这里需要的是:19.3
./kerl list releases
-
安装编译 Erlang 所需的依赖
sudo yum install -y which perl openssl-devel make automake autoconf ncurses-devel gcc
-
编译 Erlang
./kerl build 19.3 19.3
注意:若编译失败,请执行
rm /root/.kerl -rf
命令删除 .kerl 文件夹后重新编译即可,若提示需要 git 依赖,请安装 git 后重新编译,git 安装教程参考:https://www.jianshu.com/p/e6ecd86397fb
-
安装 Erlang 到指定目录
./kerl install 19.3 ~/erlang
-
激活 Erlang:进入到安装目录下,我这里用的是 root 用户,所以目录是:root/erlang,执行以下命令
. /root/erlang/activate
- 安装 RabbitMQ
- 创建安装目录
mkdir -p /usr/local/rabbit
- 下载安装包(若需要安装其他版本 RabbitMQ,更换源地址即可)
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm
- 安装
yum install rabbitmq-server-3.6.10-1.el7.noarch.rpm
- 启动 RabbitMQ
systemctl start rabbitmq-server
- 查看 RabbitMQ 状态
systemctl status rabbitmq-server
- 安装 RabbitMQ Web 管理界面
- 启用 Web 管理界面插件
rabbitmq-plugins enable rabbitmq_management
- 开放 15672 端口,使用防火墙的开放防火墙端口,使用云服务器安全组的则开放安全组端口
防火墙为 firewalld,执行以下命令:
# 查看防火墙 zone 名称
firewall-cmd --get-active-zones
# 开放 15672 端口,我这里 zone 名称是 public
firewall-cmd --zone=public --add-port=15672/tcp --permanent
# 重启防火墙
firewall-cmd --reload
# 查看 15672 端口是否开启
firewall-cmd --query-port=15672 /tcp
防火墙为 iptables,执行以下命令:
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
/etc/rc.d/init.d/iptables save
注意:RabbitMQ 监听 5672 端口,RabbitMQ Web 管理插件监听 15672 端口
-
访问 Web 管理页面,浏览器输入:http://ip:15672,出现下图则表示安装并且配置成功
image.png
-
新增 RabbitMQ 用户
# 查看 RabbitMQ 用户列表
rabbitmqctl list_users
# 创建新用户 xdyang,密码为 123456
rabbitmqctl add_user xdyang 123456
# 给用户 xdyang 赋予 admin 权限
rabbitmqctl set_user_tags xdyang administrator
- 使用新用户登录 Web 管理页面,成功登录则大功告成~