RabbitMQ安装教程
Linux安装
安装环境
-
- 操作系统:CentOS Linux release 7.7.1908
-
- Erlang:erlang-23.0.2-1.el7.x86_64
-
- RabbitMQ:rabbitmq-server-3.8.4-1.el7.noarch
RabbitMQ的安装需要首先安装Erlang,因为它是基于Erlang的VM运行的。
RabbitMQ与Erlang的兼容关系详见:www.rabbitmq.com/which-erlan…
下载和安装相关文件
安装socat依赖
yum install socat -y
安装Erlang
erlang-23.0.2-1.el7.x86_64.rpm
下载完成后通过sftp上传至服务器,然后进行安装
rpm -ivh erlang-23.0.2-1.el7.x86_64.rpm
安装RabbitMQ
rabbitmq-server-3.8.4-1.el7.noarch.rpm
下载完成后通过sftp上传至服务器,然后进行安装
rpm- ivh rabbitmq-server-3.8.4-1.el7.noarch.rpm
启用RabbitMQ的管理插件
rabbitmq-plugins enable rabbitmq_management
启动
# 关闭防火墙
systemctl stop firewalld
#启动服务
service rabbitmq-server start
#停止服务
service rabbitmq-server stop
#重启服务
service rabbitmq-serverr restart
添加用户
rabbitmq ctl add_user root 123456
给用户添加权限
rabbitmq ctl set_permissions root -p / ".*" ".*" ".*"
给用户设置标签
rabbitmq ctl set_user_tags root administrator
开启管理界面及配置
配置虚拟主机及用户
用户角色
RabbitMQ在安装好后,可以访问http://ip地址:15672 其自带了guest/guest的用户名和密码;如果需要创建自定义用户;那么也可以登录管理界面后,如下操作:
角色说明
- 1、超级管理员(administrator)
可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
- 2、监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
- 3、策略制定者(policymaker)
可登陆管理控制台,同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
- 4、普通管理者(management)
仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
- 5、其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
VirtualHosts配置
在RabbitMQ中可以虚拟消息服务器VirtualHost,每个VirtualHosts相当于一个相对独立的RabbitMQ服务器,每个VirtualHost之间是相互隔离的。exchange、queue、message不能互通。相当于mysql的db。VirtualName一般以/开头。
创建VirtualHosts
设置VirtualHosts权限
docker安装RabbitMQ容器
进入docker仓库官网搜索RabbitMQ
拉取Rabbit镜像
docker pull rabbitmq:3.8-management
注意使用后缀为"-management"的镜像版本,是包含网页控制台的。
查看镜像
docker images
创建和启动RabbitMQ容器
docker run --name rabbitmq \
-p 5672:5672 -p 15672:15672 \
-v `pwd`/data:/var/lib/rabbitmq \
-v ${RABBIT_DIR}/log:/var/log/rabbitmq \
--hostname localRabbit \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
--network localNetwork \
--ip 172.172.0.30 \
-d rabbitmq:3.7.7-management
-
参数说明
-
-d 后台运行容器
-
--name 指定容器名
-
-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号)
-
-v 映射目录或文件
-
--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名)
-
-e 指定环境变量
- RABBITMQ_DEFAULT_VHOST:默认虚拟机名
- RABBITMQ_DEFAULT_USER:默认的用户名
- RABBITMQ_DEFAULT_PASS:默认用户名的密码
-
查询运行的rabbit容器
docker ps
使用浏览器打开web管理端
删除和卸载
docker stop rabbitmq
docker rm rabbitmq