本文使用版本: rabbitmq-server-3.8.3-1.el7.noarch.rpm Centos7 erlang 22.3.1
在线安装
yum install esl-erlang_22.3-1~centos~7_amd64.rpm yum install esl-erlang-compat-21.2.6-1.noarch.rpm
离线安装
上传安装包到centos7
依次执行命令:
--force:强制安
装 --nodeps:不检查依赖
-ivh i(install):(安装) v(view):显示安装过程 h(human):人类易读的方式显示
rpm -ivh erlang-22.3-1.el8.x86_64.rpm --force --nodeps 下载地址: https://packagecloud.io/rabbitmq/erlang/
rpm -ivh esl-erlang_22.3-1~centos~7_amd64.rpm --force --nodeps
rpm -ivh esl-erlang-compat-21.2.6-1.noarch.rpm --force --nodeps
安装RabbitMQ
-ivh rabbitmq-server-3.8.3-1.el7.noarch.rpm --force --nodeps
安装rabbit的时候将被需要socat
yum install socat
再次安装rabbitmq
设置配置文件
cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin
设置远程登录
vi rabbitmq.app
修改前
修改后
启动,停止,重启
systemctl start rabbitmq-server.service systemctl stop rabbitmq-server.service
systemctl restart rabbitmq-server.service
启动web界面化工具
rabbitmq-plugins enable rabbitmq_management
重新启动rabbitmq systemctl restart rabbitmq-server
设置开机自启动
chkconfig rabbitmq-server on
开放防火墙15672端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent # 开放15672端口
firewall-cmd --reload # 配置立即生效
查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
关闭防火墙
如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估
systemctl stop firewalld.service
查看防火墙状态
firewall-cmd --state
远程登录RabbitMQ进行操作
本地浏览器访问:虚拟机ip:15672
登录账号后
参数解释
connections:无论生产者还是消费者,都需要与RabbitMQ建立连接后才可以完成消息的生产和消费,在这里可以查看连接情况 channels:通道,建立连接后,会形成通道,消息的投递获取依赖通道。 Exchanges:交换机,用来实现消息的路由 Queues:队列,即消息队列,消息存放在队列中,等待消费,消费后被移除队列。 端口: 5672: rabbitMq的编程语言客户端连接端口 15672:rabbitMq管理界面端口 25672:rabbitMq集群的端口
添加用户
如果不使用guest,可以自己创建一个用户
1、 超级管理员(administrator)
可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
2、 监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
3、 策略制定者(policymaker)
可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
4、 普通管理者(management)
仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
5、 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
创建Virtual Hosts
虚拟主机:类似于mysql中的database。他们都是以“/”开头
设置权限