使用docker
前提条件是环境中已经安装过docker,并且已经启动docker。
1.拉取镜像,(版本为3.10.7)
docker pull rabbitmq:3.10.7
2.创建挂载目录:
mkdir -p /root/docker/rabbitmq
3.启动容器
docker run -d --name rabbitmq \
-p 15672:15672 -p 5672:5672 \
-v /root/docker/rabbitmq/data:/data/rabbitmq \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
rabbitmq:3.10.7
3.开启web页面管理
# 进入容器
docker exec -it rabbitmq /bin/bash
# 开启web页面插件
rabbitmq-plugins enable rabbitmq_management
4.登录页面:http://你的ip:15672,用户名和密码都是admin
5.创建用户
# 进入容器
docker exec -it rabbitmq /bin/bash
# 创建账号,add_user后面分别为:账户 密码
rabbitmqctl add_user admin2 admin2
效果展示:
# 设置用户角色
rabbitmqctl set_user_tags admin2 administrator
效果展示:
# 设置用户权限
# rabbitmqctl set_permissions [-p <vhostpath>] <user> <conf> <write> <read>
rabbitmqctl set_permissions -p "/" admin2 ".*" ".*" ".*"
效果展示:
# 查看用户列表
rabbitmqctl list_users
效果展示:
设置完之后,可以用当前账号进行登录。
使用安装包安装
1.下载Erlang
2.下载RabbitMQ
下载地址:https://www.rabbitmq.com/download.html
由于官网下载最新版本显示未获得授权,无法正确下载。所以找了rabbitmq-server-3.8.3-1.el7.noarch.rpm版本下载地址: https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.3/rabbitmq-server-3.8.3-1.el7.noarch.rpm
3.上传至指定目录,进行安装
创建上传目录:
mkdir -p /usr/rabbitmq
再利用xftp工具将上述下载的两个.rpm文件上传到服务器的刚创建的文件夹中
4.安装erlang
切换到/usr/rabbitmq目录,解压安装erlang
# 解压
rpm -Uvh erlang-23.2.7-2.el7.x86_64.rpm
#centos8需要安装epel源,否则yum安装出现“未找到匹配的参数”、“没有可用软件包”错误
yum install epel-release
# 安装
yum install -y erlang
效果展示:
5.安装RabbitMQ
在RabiitMQ安装过程中需要依赖socat插件,首先安装该插件。
yum install -y socat
效果展示:
然后解压安装RabbitMQ的安装包
# 解压
rpm -Uvh rabbitmq-server-3.8.14-1.el7.noarch.rpm
# 安装
yum install -y rabbitmq-server
效果展示:
6.启动rabbitMQ
#启动mq
systemctl start rabbitmq-server
#查看启动状态
systemctl status rabbitmq-server
active状态则说明应启动ok.
也可以设置其他属性信息
# 设置rabbitmq服务开机自启动
systemctl enable rabbitmq-server
# 关闭rabbitmq服务
systemctl stop rabbitmq-server
# 重启rabbitmq服务
systemctl restart rabbitmq-server
7.安装rabbitMQ管理界面
# 打开RabbitMQWeb管理界面插件
rabbitmq-plugins enable rabbitmq_management
效果展示:
在linux本机上可以访问: http://locallhost:15672,可以看到管理界面,登录账号和密码都是guest
7.使用其他服务其查看
访问地址: http://ip:15672
# 首先查看Linux服务i的防火墙是否关闭
systemctl status firewalld
#如果是active状态,需要关闭防火墙。否则外网无法访问到mqweb端
service firewalld stop
效果展示:
由于用户guest只能在本地登录,所以还得建立用户。
8.添加用户
# 添加用户
rabbitmqctl add_user 用户名 密码
# 设置用户角色,分配操作权限
rabbitmqctl set_user_tags 用户名 角色
# 为用户添加资源权限(授予访问虚拟机根节点的所有权限)
rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*"
效果展示:
角色有四种:
administrator:可以登录控制台、查看所有信息、并对rabbitmq进行管理
monToring:监控者;登录控制台,查看所有信息
policymaker:策略制定者;登录控制台指定策略
managment:普通管理员;登录控制
设置完毕进行登录:
其他指令:
# 修改密码
rabbitmqctl change_ password 用户名 新密码
# 删除用户
rabbitmqctl delete_user 用户名
# 查看用户清单
rabbitmqctl list_users