RabbitMQ是一款使用Erlang语言开发的,实现AMQP(高级消息队列协议)的开源消息中间件。首先要知道一些RabbitMQ的特点,官网可查:
可靠性。支持持久化,传输确认,发布确认等保证了MQ的可靠性。灵活的分发消息策略。这应该是RabbitMQ的一大特点。在消息进入MQ前由Exchange(交换机)进行路由消息。分发消息策略有:简单模式、工作队列模式、发布订阅模式、路由模式、通配符模式。支持集群。多台RabbitMQ服务器可以组成一个集群,形成一个逻辑Broker。多种协议。RabbitMQ支持多种消息队列协议,比如 STOMP、MQTT 等等。支持多种语言客户端。RabbitMQ几乎支持所有常用编程语言,包括 Java、.NET、Ruby 等等。可视化管理界面。RabbitMQ提供了一个易用的用户界面,使得用户可以监控和管理消息 Broker。插件机制。RabbitMQ提供了许多插件,可以通过插件进行扩展,也可以编写自己的插件。 1.1、官网地址
https://www.rabbitmq.com/download.html
1.2、文件上传 上传到/usr/local/rabbitmq目录下(如果没有rabbitmq需要自己创建)
1.3、安装文件(分别按照一下顺序安装)rpm -ivh erlang-21.3-1.el7.x86_64.rpm yum install socat -y rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm
执行rpm -ivh erlang-21.3-1.el7.x86_64.rpm
执行yum install socat -y(我之前下载过socat了)
执行rpm -ivh rabbitmq-server-3.9.13-1.el7.noarch.rpm
1.4、常用命令(按照一下顺序执行)
添加开机启动RabbitMQ服务
systemctl enable rabbitmq-server
启动服务
systemctl start rabbitmq-server
查看服务状态
systemctl status rabbitmq-server
停止服务
systemctl stop rabbitmq-server stop
开启web管理插件
rabbitmq-plugins enable rabbitmq_management
之后在浏览器输入:http://ip地址:15672即可访问web后台管理界面
创建账号
rabbitmqctl add_user admin 123
设置用户角色
rabbitmqctl add_user_tags admin administrator
设置用户权限
set_permissions [-p 当前用户和角色 rabbitmqctl list_users 再次利用admin用户登录 重置命令 关闭应用的命令为
rabbitmqctl stop_app 清楚命令为
rabbitmqctl reset 重新启动的命令为
rabbitmqctl start_app
2、Docker安装RabbitMQ
2.1、下载地址
https://www.rabbitmq.com/download.html yum 包更新到最新 安装需要的软件包 yum-util 提供yum-config-manager功能, 另外两个是devicemapper驱动依赖的包 设置源为阿里云 全局安装docker 查看docker的版本号 安装加速镜像 vim /etc/docker/daemon.json 重新加载镜像配置 重启docker 启动docker服务 查看状态 开机自启动 创建并运行容器 查看进程ID 查看镜像 在docker中启动rabbitmq 3.X以后RabbitMQ官方不再支持默认用户等录 如果采用以下方式安装则可以不用添加新用户 直接可以给用户设置权限然后进行登录
yum update
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce -y
docker -v
{
"registry-mirrors": ["http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn"]
}
systemctl daemon-reload
systemctl restart docker
systemctl start docker
systemctl status docker
systemctl enable docker
docker run -di --name myrabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=******** -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq:3-management
# 参数 -p为:端口号
# 参数 --name为容器名称
# 参数 -e RABBITMQ_DEFAULT_USER是设置用户名 -e RABBITMQ_DEFAULT_PASS是设置密码
# rabbitmq:3-management 直接安装rabbitmq和web管理界面
docker ps -a
docker images
docker start ID
2.3、安装完成
2.3.1、初始化用户无法登录(guest/guest)
# 创建账号
rabbitmqctl add_user admin 123
#设置用户角色
rabbitmqctl add_user_tags admin administrator
2.3.3、设置用户权限
# set_permissions [-p
2.3.4、再次使用添加的用户登录即可
2.4、补充说明
docker run -di --name myrabbit
-e RABBITMQ_DEFAULT_USER=admin
-e RABBITMQ_DEFAULT_PASS=********
-p 15672:15672
-p 5672:5672
-p 25672:25672
-p 61613:61613
-p 1883:1883
rabbitmq:3-management



