rabbitmq安装(rpm方式)
1、准备资料
1、erlang-23.0.2-1.el7.x86_64
2、rabbitmq-server-3.8.4-1.el7.noarch
3、centos7
RabbitMQ的安装需要首先安装Erlang,因为它是基于Erlang的VM运行的。
RabbitMQ需要的依赖:socat和logrotate,logrotate操作系统中已经存在另需安装socat
erlang与rabbitmq版本映射:https://www.rabbitmq.com/which-erlang.html
2、安装
1、安装socat
yum install socat -y
2、安装Erlang
https://github.com/rabbitmq/erlang-rpm/releases/download/v23.0.2/erlang-23.0.2-1.el7.x86_64.rpm
rpm -ivh erlang-23.0.2-1.el7.x86_64.rpm
3、安装rabbitmq
下载地址
https://www.rabbitmq.com/install-rpm.html#downloads
https://repo.huaweicloud.com/rabbitmq-server/v3.8.9/
选择与centos系统版本一致的方案
rabbitmq-server-3.8.9-1.el7.noarch.rpm
rpm -ivh rabbitmq-server-3.8.4-1.el7.noarch.rpm
安装完成,通过查看/usr/lib/rabbitmq/bin,可以看到一些软连接
4、启用RabbitMQ的管理插件
rabbitmq-plugins enable rabbitmq_management
5、开启RabbitMQ
systemctl start rabbitmq-server
或者前台启动
rabbitmq-server
后台启动
rabbitmq-server -detached
6、添加用户
rabbitmqctl add_user root 123456
7、给用户添加权限
#给root用户在虚拟主机"/"上的配置、写、读的权限
rabbitmqctl set_permissions root -p / ".*" ".*" ".*"
权限列表
标签 | 权限 |
---|---|
None | 没有访问management插件的权限 |
management | 可以使用消息协议做任何操作的权限,加上:1、 可以使用AMQP协议登录的虚拟主机的权限2、 查看它们能登录的所有虚拟主机中所有队列、交换器和绑定的权限3、 查看和关闭它们自己的通道和连接的权限4、 查看它们能访问的虚拟主机中的全局统计信息,包括其他用户的活动 |
policymaker | 所有management标签可以做的,加上:1. 在它们能通过AMQP协议登录的虚拟主机上,查看、创建和删除策略以及虚拟主机参数的权限 |
monitoring | 所有management能做的,加上:1. 列出所有的虚拟主机,包括列出不能使用消息协议访问的虚拟主机的权限2. 查看其他用户连接和通道的权限3. 查看节点级别的数据如内存使用和集群的权限4. 查看真正的全局所有虚拟主机统计数据的权限 |
administrator | 所有policymaker和monitoring能做的,加上:1. 创建删除虚拟主机的权限2. 查看、创建和删除用户的权限3. 查看、创建和删除权限的权限4. 关闭其他用户连接的权限 |
8、给用户设置标签
rabbitmqctl set_user_tags root administrator
用户的标签和权限
截图
9、访问192.168.27.5:15672,用新用户登录
3、常用操作命令
# 前台启动Erlang VM和RabbitMQ
rabbitmq-server
# 后台启动
rabbitmq-server -detached
# 停止RabbitMQ和Erlang VM
# 查看节点状态
rabbitmqctl stop/status
# 查看所有队列
rabbitmqctl list_queues
# 查看所有虚拟主机
rabbitmqctl list_vhosts
# 在Erlang VM运行的情况下启动RabbitMQ应用
rabbitmqctl start_app
rabbitmqctl stop_app
# 查看所有可用的插件
rabbitmq-plugins list
# 启用插件
rabbitmq-plugins enable <plugin-name>
# 停用插件
rabbitmq-plugins disable <plugin-name>
# 添加用户
rabbitmqctl add_user username password
# 列出所有用户:
rabbitmqctl list_users
# 删除用户:
rabbitmqctl delete_user username
# 清除用户权限:
rabbitmqctl clear_permissions -p vhostpath username
# 列出用户权限:
rabbitmqctl list_user_permissions username
# 修改密码:
rabbitmqctl change_password username newpassword
# 设置用户权限:
rabbitmqctl set_permissions -p vhostpath username ".*" ".*" ".*"
# 创建虚拟主机:
rabbitmqctl add_vhost vhostpath
# 列出所以虚拟主机:
rabbitmqctl list_vhosts
# 列出虚拟主机上的所有权限:
rabbitmqctl list_permissions -p vhostpath
# 删除虚拟主机:
rabbitmqctl delete_vhost vhost vhostpath
# 移除所有数据,要在 rabbitmqctl stop_app 之后使用:
rabbitmqctl reset
# 列出exchange和绑定
rabbitmqctl list_exchanges
rabbitmqctl list_bindings
测试rabbitmq可以编写一个脚本用于初始化数据
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app
rabbitmqctl add_user root 123456
rabbitmqctl set_user_tags root administrator
rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
作者:chang_hf
来源链接:https://blog.csdn.net/chang_li/article/details/114965808
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。