RabbitMQ安装
Linux安装
下载
我们需要2个 rpm 安装包,分别是 RabbitMQ
安装包和 Erlang
环境安装包,注意两者的版本对应关系。
下载RabbitMQ
RabbitMQ-GitHub-releases,选择以 noarch.rpm
结尾的安装包
下载Erlang
查看Erlang
与RabbitMQ
版本对应关系:点击跳转
TIP
版本选择
CentOs 7.x 版本需要e17。
CentOs 8.x 版本需要e18。包括 Red Hat 8,modern Fedora 版本。
安装Erlang
上传包
首先在 Linux 的 /usr/local
目录下创建一个文件夹 rabbitmq
,然后使用xftp
或者winscp
工具将两个包上传到Linux指定目录下
mkdir /usr/local/rabbitmq
安装
进入 /usr/local/rabbitmq
目录,解压安装 Erlang
[root@master rabbitmq]# cd /usr/local/rabbitmq
[root@master rabbitmq]# rpm -ivh erlang-21.3-1.el7.x86_64.rpm
警告:erlang-21.3-1.el7.x86_64.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID 6026dfca: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:erlang-21.3-1.el7 ################################# [100%]
安装完成后输入指令查看到版本号,代表成功
[root@master rabbitmq]# erl -v
Erlang/OTP 21 [erts-10.3] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]
Eshell V10.3 (abort with ^G)
1>
可能出现的问题
安装Erlang过程中如果出现下面问题
这个错误的主要原因是没有libcrypto.so.10(OPENSSL_1.0.2)(64bit)
依赖,我们去下载一个就可以了
下载后上传到rabbitmq目录下,通过命令安装
rpm -ivh openssl-libs-1.0.2k-19.el7.x86_64.rpm --force
安装好这个后,再次安装 Erlang
即可成功
安装RabbitMQ
分别执行以下命令
# 在 RabiitMQ 安装过程中需要依赖 socat 插件,首先安装该插件
yum install socat -y
# 解压 RabbitMQ 安装包
[root@master rabbitmq]# rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm
警告:rabbitmq-server-3.8.8-1.el7.noarch.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 6026dfca: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:rabbitmq-server-3.8.8-1.el7 ################################# [100%]
启动
# 启动服务
systemctl start rabbitmq-server
# 查看服务状态
systemctl status rabbitmq-server
启动 RabbitMQ
服务后,查看该服务状态,显示绿色的 active
则表示服务安装并启动成功
其他指令
# 开机自启动
systemctl enable rabbitmq-server
# 停止服务
systemctl stop rabbitmq-server
# 重启服务
systemctl restart rabbitmq-server
管理界面及授权操作
TIP
默认端口
RabbitMQ 的默认访问端口是 15672
如果 Linux 有防火墙,记得开放 15672 端口,否则 Windows 无法访问
# 安装管理界面插件
rabbitmq-plugins enable rabbitmq_management
# 安装完毕以后,重启服务
systemctl restart rabbitmq-server
添加远程登录用户
通过 http://ip:15672
访问,ip 为 Linux 的 ip。rabbitmq
有一个默认的账号密码 guest
,但是登录该账号密码会出现权限问题(Linux安装后会出现无法远程登录问题),所以我们需要添加一个允许远程登录的用户
# 创建账号和密码
rabbitmqctl add_user 用户名 密码
# 设置用户角色
rabbitmqctl set_user_tags 用户名 角色
# 为用户添加资源权限,添加配置、写、读权限
# set_permissions [-p <vhostpath>] <user> <conf> <write> <read>
rabbitmqctl set_permissions -p "/" y ".*" ".*" ".*"
角色固定有四种级别:
administrator
:可以登录控制台、查看所有信息、并对rabbitmq进行管理monToring
:监控者;登录控制台,查看所有信息policymaker
:策略制定者;登录控制台指定策略managment
:普通管理员;登录控制
添加用户和权限后,再次访问 http://ip:15672
登录,输入添加好的用户名和密码,即可进入后台
其他指令
# 修改密码
rabbitmqctl change_ password 用户名 新密码
# 删除用户
rabbitmqctl delete_user 用户名
# 查看用户清单
rabbitmqctl list_user
Docker安装RabbitMQ
# 安装启动 rabbitmq 容器
docker run -d --name myRabbitMQ -e RABBITMQ_DEFAULT_USER=用户名 -e RABBITMQ_DEFAULT_PASS=密码 -p 15672:15672 -p 5672:5672 rabbitmq:3.8.14-management