197、管理 RabbitMQ 的虚拟主机

开启Rabbitmq的一些命令:

小黑窗输入:

rabbitmq-plugins enable rabbitmq_management 启动控制台插件,

就是启动登录rabbitmq控制台的页面,rabbitmq_management 代表了RabbitMQ的管理界面。

rabbitmq-server 启动rabbitMQ服务器

启动浏览器访问 http://localhost:15672/ 将看到登录界面

★ 何谓虚拟主机

RabbitMQ虚拟主机只是相当于一个命名空间,用于组织 Exchange 和 Queue。

【备注】:有点类似于Java的包。

比如RabbitMQ可以先在"/"虚拟主机下创建一个名为 my.fanout 的 Exchange,

然后又可在"fkjava-vhost"虚拟主机下创建一个名为 my.fanout 的 Exchange。

★ 添加虚拟主机

控制台添加虚拟主机

(1)单击管理页面右边的"Virtual Hosts"标签,系统进入虚拟主机管理界面 。

(2)在该界面上输入虚拟主机的Name、Tags信息,然后单击"Add virtual host"按钮即可成功添加虚拟主机。

添加虚拟主机时,只有Name是必填信息,Description和Tags都是选填信息。

▲ 上面创建虚拟主机的过程可通过如下命令来完成:

多个标签用逗号隔开

复制代码
rabbitmqctl add_vhost 虚拟主机名 --tags "Tags1,Tags2"

rabbitmqctl add_vhost my-vhost02 --tags "my-tags02,my-tags022"

【备注】

如果通过管理控制台来添加虚拟主机,那RabbitMQ会自动为系统中唯一用户添加访问该虚拟主机的权限。

如果通过命令来添加虚拟主机,此时添加的虚拟主机将没有任何用户具有访问权限。

如果有两个用户的话,用控制台新增虚拟主机是否还会被该虚拟主机添加系统中的用户访问该虚拟主机的权限?如图:

我再添加一个用户 aaa

已经有两个用户了,这时再添加虚拟主机,rabbitmq 依然会自动给 ljh 用户添加这个虚拟主机的操作权限

★ 为新的虚拟主机分配权限

重复上面为用户分配权限的步骤,这一次选中新建的虚拟主机,这样就可为新的虚拟主机分配权限。

这里的为新的虚拟主机分配权限,就是给用户添加这个虚拟主机的同时,也给虚拟主机添加能操作哪些实体的权限,用正则表达式来设置。如图:

把刚刚添加的 my-vhost02 删除掉,用命令添加。

如图:现在的 ljh 用户 只拥有 / 和 my-vhost01 这两个虚拟主机的操作权限

使用如下命令也一样:

给这个 ljh 用户添加 my-vhost02 虚拟主机 及 虚拟主机的操作权限( 正则表达式: "." "." ".*")

复制代码
rabbitmqctl set_permissions --vhost "my-vhost02" ljh ".*" ".*" ".*"

在虚拟主机下添加 Exchange

在不同的虚拟主机下,可以创建同个名字的 Exchange

比如RabbitMQ可以先在"/"虚拟主机下创建一个名为 abc 的 Exchange,

然后又可在"my-vhost01"虚拟主机下创建一个名为 abc 的 Exchange。

如图:现在是没添加之前

在不同的虚拟主机都创建一个 abc 的 exchange

相关推荐
没有bug.的程序员31 分钟前
Spring Boot 事务管理:@Transactional 失效场景、底层内幕与分布式补偿实战终极指南
java·spring boot·分布式·后端·transactional·失效场景·底层内幕
LuminescenceJ1 小时前
GoEdge 开源CDN 架构设计与工作原理分析
分布式·后端·网络协议·网络安全·rpc·开源·信息与通信
组合缺一4 小时前
论 AI Skills 分布式发展的必然性:从单体智能到“云端大脑”的跃迁
java·人工智能·分布式·llm·mcp·skills
shepherd1265 小时前
深度剖析SkyWalking:从内核原理到生产级全链路监控实战
分布式·后端·skywalking
h7ml7 小时前
基于 RabbitMQ 构建异步化淘客订单处理流水线:解耦、削峰与失败重试
分布式·rabbitmq·ruby
夜月蓝汐8 小时前
分布式监控SkyWalking链路追踪
分布式·skywalking
shandongtianhe8 小时前
分布式光伏气象站:实现对光伏电站所处环境的多参数、实时化、高精度监测
分布式
源代码•宸8 小时前
分布式理论基础——Raft算法
经验分享·分布式·后端·算法·golang·集群·raft
J_liaty8 小时前
XXL-Job 实现分布式定时任务
分布式·xxl-job
小北方城市网19 小时前
Redis 分布式锁高可用实现:从原理到生产级落地
java·前端·javascript·spring boot·redis·分布式·wpf