1.单机搭建
RabbitMQ的安装需要首先安装Erlang,因为它是基于Erlang的VM运行的。
RabbitMQ需要的依赖:socat 和 logrotate, logrotate操作系统中已经存在了,只需要安装socat就可以了。
1.1 安装 依赖 socat 和 logrotate
#检查 logrotate 是否安装
rpm -qa | grep logrotate
#如果无安装 安装 logrotate
yum install logrotate -y
#检查 socat 是否安装
rpm -qa | grep socat
#如果无安装 安装 socat
yum install socat -y
1.2 安装 Erlang
RabbitMQ与Erlang的兼容关系详见:https://www.rabbitmq.com/which-erlang.html
# 获取 Erlang 软件包
wget https://github.com/rabbitmq/erlang-rpm/releases/download/v23.0.2/erlang-23.0.2-1.el7.x86
# 安装 Erlang
rpm -ivh erlang-23.0.2-1.el7.x86_64.rpm
验证 Erlang 是否安装成功 如下图 (halt(). 退出)
erl 安装目录
出现如下错误: 运行
yum install libnsl* -y
1.3 安装 rabbitMQ
#获取 rabbitMQ 安装包
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.5/rabbitmq-server-3.8.5-1.el7.noarch.rpm
#安装 rabbitMQ
rpm -ivh rabbitmq-server-3.8.5-1.el7.noarch.rpm
#开启 RabbitMQ的管理插件----网络访问 http://IP:15672
rabbitmq-plugins enable rabbitmq_management
#rabbitmq 启动命令
# 前台启动 rabbitmq-server 后台启动 rabbitmq-server -detached 重新启动 rabbitmq-server restart
systemctl start rabbitmq-server
#rabbitmq 关闭命令
systemctl stop rabbitmq-server
#添加用户
rabbitmqctl add_user root 123456
#给用户添加权限
rabbitmqctl set_permissions root -p / ".*" ".*" ".*"
#给用户设置标签和权限
rabbitmqctl set_user_tags root administrator
TAG | Capablities(职权范围) |
---|---|
(None) | 没有访问management插件的权限 |
management | 可以使用消息协议做任何操作的权限,加上 1.可以查询 AMQP协议登录到 虚拟机权限 2.查看他们能登录的所有虚拟主机中的所有队列,交换器和绑定的权限 3.查看和关闭他们自己通道和连接的权限 4.查看他们能访问的虚拟主机中的全局统计信息,包括其他用户的活动 |
policymaker | 所有management标签可以做到,加上 1.在他们能通过AMQP协议登录的虚拟主机上,查看,创建和删除策略一级虚拟主机参数的权限 |
monitoring | 所有managerment能做到的,加上 1.列出所有虚拟主机,包括列出不能使用消息协议访问的虚拟主机权限 2.查看其它用户连接和通道的权限。 3.查看节点级别的数据和内存使用和集群的权限 4.查看真正的全局所有虚拟主机统计数据的权限 |
administrator | 所有policymaker和monitoring能做的,加上: 1. 创建删除虚拟主机的权限 2. 查看、创建和删除用户的权限 3. 查看、创建和删除权限的权限 4. 关闭其他用户连接的权限 |
常用命令
#查看所有的队列:
rabbitmqctl list_queues
#清除所有的队列:
rabbitmqctl reset
#查看用户:
rabbitmqctl list_users
#查看状态:
rabbitmqctl status