我使用的Linux搭建,搭建流程可参考官网: https://www.rabbitmq.com/install-rpm.html查看系统版本号,Rabbitmq 对 Erlang 有版本要求,不能使用太旧的Erlang版本:https://www.rabbitmq.com/which-erlang.html
1、下载rpm包
- erlang-23.3.4.8-1.el7.x86_64.rpm
- rabbitmq-server-3.10.5-1.el8.noarch.rpm
2、上传至服务器
#创建存放目录
mkdir -p /usr/rabbitmq
3、安装文件
[root@xiaobear rabbitmq]# rpm -Uvih erlang-25.0.2-1.el8.x86_64.rpm
警告:erlang-25.0.2-1.el8.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID cc4bbe5b: NOKEY
错误:依赖检测失败:
libcrypto.so.1.1()(64bit) 被 erlang-25.0.2-1.el8.x86_64 需要
libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) 被 erlang-25.0.2-1.el8.x86_64 需要
libcrypto.so.1.1(OPENSSL_1_1_1)(64bit) 被 erlang-25.0.2-1.el8.x86_64 需要
libstdc++.so.6(CXXABI_1.3.9)(64bit) 被 erlang-25.0.2-1.el8.x86_64 需要
libtinfo.so.6()(64bit) 被 erlang-25.0.2-1.el8.x86_64 需要
libz.so.1(ZLIB_1.2.7.1)(64bit) 被 erlang-25.0.2-1.el8.x86_64 需要
PS:这是因为下载版本的问题,el8下载的是8的版本,改回下载7的就可以了
我下载的版本:erlang-23.3.4.8-1.el7.x86_64.rpm
[root@xiaobear rabbitmq]# rpm -Uivh erlang-23.3.4.8-1.el7.x86_64.rpm
警告:erlang-23.3.4.8-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID cc4bbe5b: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:erlang-23.3.4.8-1.el7 ################################# [100%]
[root@xiaobear rabbitmq]# yum install socat -y
查看版本
# 测试
erl -version
rabbitmq
在安装过程中需要依赖socat
这个插件,需要先安装
[root@xiaobear rabbitmq]# rpm -ivh rabbitmq-server-3.10.5-1.el8.noarch.rpm
警告:rabbitmq-server-3.10.5-1.el8.noarch.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID 6026dfca: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:rabbitmq-server-3.10.5-1.el8 ################################# [100%]
[root@xiaobear rabbitmq]#
4、常用命令
#开机启动 chkconfig rabbitmq-server on会转发到下面命令
systemctl enable rabbitmq-server.service
# 启动服务
systemctl start rabbitmq-server
# 查看服务状态,running表示启动成功
systemctl status rabbitmq-server.service
# 开机自启动
systemctl enable rabbitmq-server
# 停止服务
systemctl stop rabbitmq-server
5、安装Web管理插件
rabbitmq-plugins enable rabbitmq_management
#安装完成后,重启服务
systemctl restart rabbitmq-server
6、访问web页面
访问地址:服务器 IP+端口号(默认15672),若没有反应,请开放端口,执行下面命令
# 防火墙开放15672端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload
注意:
- 在对应服务器(阿里云,腾讯云等)的安全组中开放
15672
端口(rabbitmq默认端口号),5672端口后续程序需要使用也要开放 - rabbitmq有一个默认账号和密码都是:
guest
默认情况只能在 localhost本计下访问,所以需要添加一个远程登录的用户
7、添加用户
创建账号
rabbitmqctl add_user admin admin123
分配角色
rabbitmqctl set_user_tags admin administrator
用户操作权限分四种级别:
- administrator:可以登录控制台、查看所有信息、可以对 rabbitmq进行管理
- monitoring:监控者 登录控制台,查看所有信息
- policymaker:策略制定者 登录控制台,指定策略
- managment 普通管理员 登录控制台
设置权限
set_permissions [-p ]
用户 user_admin 具有/vhost1 这个 virtual host 中所有资源的配置、写、读权限当前用户和角色
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
- 再次访问登录,即可成功
8、重置命令
#关闭应用的命令
rabbitmqctl stop_app
#清除的命令
rabbitmqctl reset
#重新启动命令
rabbitmqctl start_app
9、其他命令
# 添加账号、密码
rabbitmqctl add_user
# 设置账号为管理员
rabbitmqctl set_user_tags 账号 administrator
# 修改账号密码
rabbitmqctl change_password Username Newpassword
# 查看用户清单
rabbitmqctl list_users
# 添加账号查看资源的权限
rabbitmqctl set_permissions -p / 用户名 ".*"".*"".*"