如何在虚拟机部署单机rabbitmq 3.8.30
一.文件下载
https://github.com/rabbitmq/erlang-rpm/releases/download/v23.3.4.18/erlang-23.3.4.18-1.el7.x86_64.rpm
https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.30/rabbitmq-server-3.8.30-1.el7.noarch.rpm
https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/socat-1.7.3.2-2.el7.x86_64.rpm
https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/logrotate-3.8.6-19.el7.x86_64.rpm
将上述 4 个 RPM 包上传到虚拟机 /opt/rabbitmq-offline 目录(无则创建):
mkdir -p /opt/rabbitmq-offline
# 可通过 scp/共享文件夹等方式上传,比如:
# scp 本地文件路径 root@虚拟机IP:/opt/rabbitmq-offline/
二、离线安装依赖与 RabbitMQ
# 1. 进入离线包目录
cd /opt/rabbitmq-offline
# 2. 安装系统依赖
rpm -ivh logrotate-*.rpm socat-*.rpm --nodeps --force
# 3. 安装 Erlang(RabbitMQ 3.8.30 必须匹配 Erlang 23.x)
rpm -ivh erlang-23.3.4.18-1.el7.x86_64.rpm --nodeps --force
# 4. 安装 RabbitMQ 3.8.30
rpm -ivh rabbitmq-server-3.8.30-1.el7.noarch.rpm --nodeps --force
# 5. 验证安装(无报错则成功)
erl -v # 输出 Erlang 23.3.4.18
rabbitmqctl version # 输出 3.8.30
查看主机名
hostname
将主机名加入hosts
127.0.0.1 hostname
# 启动服务
sudo systemctl start rabbitmq-server
# 设置开机自启
sudo systemctl enable rabbitmq-server
# 查看服务状态
sudo systemctl status rabbitmq-server
#启动管理端
sudo rabbitmq-plugins enable rabbitmq_management
3. 配置防火墙(放行所有节点端口)
# 放行节点1/2/3的AMQP、管理、集群端口
firewall-cmd --add-port=5672/tcp --permanent
firewall-cmd --add-port=15672/tcp --permanent
firewall-cmd --add-port=25672/tcp --permanent
firewall-cmd --add-port=4369/tcp --permanent # erlang epmd 端口
firewall-cmd --reload
创建管理员用户
# 添加用户,例如用户名 admin,密码 admin123
sudo rabbitmqctl add_user admin admin123
# 设置用户标签为管理员
sudo rabbitmqctl set_user_tags admin administrator
# 设置权限 (允许对所有队列进行配置、读、写)
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
三.验证
在浏览器输入 ip:15672,输入用户密码登录
如果用创建的用户登录不上
编辑 RabbitMQ 的配置文件:
sudo vi /etc/rabbitmq/rabbitmq.conf
在文件中添加或修改以下配置行,这将会解除对所有用户的本地访问限制
loopback_users = none
保存文件后,必须重启 RabbitMQ 服务才能使配置生效:
sudo systemctl restart rabbitmq-server
