我参考官网安装 RabbitMQ 没有成功,结合另一篇文章成功安装好 3.7.10 版本的 RabbitMQ,故在此记录下安装过程。
1. 更新系统
安装”epel-release”的软件包,这个软件包会自动配置yum的软件仓库:
sudo yum install epel-release
更新 yum,重启系统:
sudo yum update
sudo reboot
2. 安装 Erlang
cd ~
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
sudo yum install erlang
检查 Erlang 是否安装成功,输入如下命令:
erl
如果 Erlang 安装成功,你会得到类似下面的输出:
Erlang/OTP 21 [erts-10.2] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]
Eshell V10.2 (abort with ^G)
1>
两次 Ctrl + C
退出 Erlang 命令行。
3. 安装 rabbitmq server
可以去官网下载和安装最新的 rabbitmq, 这里我安装的版本是 3.7.10. ( 注:安装包地址和签名地址从这里复制 )
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.10/rabbitmq-server-3.7.10-1.el7.noarch.rpm
sudo rpm --import https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.10/rabbitmq-server-3.7.10-1.el7.noarch.rpm.asc
sudo yum install ./rabbitmq-server-3.7.10-1.el7.noarch.rpm
4. 修改防火墙规则
为了可以访问 rabbitmq 的 remote management console,你需要在端口 4369, 25672, 5671, 5672, 15672, 61613, 61614, 1883, 8883 上允许 TCP 入访问。
如果系统没有启用防火墙可以跳过这一步。
sudo firewall-cmd --zone=public --permanent --add-port=4369/tcp --add-port=25672/tcp --add-port=5671-5672/tcp --add-port=15672/tcp --add-port=61613-61614/tcp --add-port=1883/tcp --add-port=8883/tcp
sudo firewall-cmd --reload
5. 运行 RabbitMQ
运行 RabbitMQ
sudo systemctl start rabbitmq-server.service
配置开机启动 RabbitMQ
sudo systemctl enable rabbitmq-server.service
检查 RabbitMQ 运行状态
sudo rabbitmqctl status
6. 配置 RabbitMQ 管理控制台
启用了 RabbitMQ 管理控制台就可以通过浏览器管理和监控 RabbitMQ 了
sudo rabbitmq-plugins enable rabbitmq_management
sudo chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/
新建一个管理员账户登陆 RabbitMQ 管理控制台。
在本地可以使用 guest 账号(用户名和密码都是 guest)登陆管理控制台,外网则不能通过 guest 登陆。
通过下面的命令添加管理员账号:
sudo rabbitmqctl add_user wangxiaoqi 123abc
sudo rabbitmqctl set_user_tags wangxiaoqi administrator
sudo rabbitmqctl set_permissions -p / wangxiaoqi ".*" ".*" ".*"
注:在上面的命令中,wangxiaoqi
为用户名,123abc
为密码
现在,通过访问 http://[your-server-IP]:15672
就可以访问了。
阿里云服务器如果无法访问,需要在安全组规则中配置端口 15672
访问权限,配置方法可参照:阿里云配置安全组规则,将文中的 8080
端口替换为 15672
即可。