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

相关推荐
睎zyl1 小时前
Spark自定义分区器-基础
大数据·分布式·spark
predisw6 小时前
Kafka如何实现高性能
分布式·kafka
joker D8889 小时前
【C++】深入理解 unordered 容器、布隆过滤器与分布式一致性哈希
c++·分布式·哈希算法
CET中电技术9 小时前
“光伏+储能+智能调控”,CET中电技术分布式智能微网方案如何实现?
分布式·储能·光伏
Akamai中国10 小时前
分布式AI推理的成功之道
人工智能·分布式·云原生·云计算·云服务·云平台·云主机
星星点点洲11 小时前
【RabbitMQ】消息丢失问题排查与解决
分布式·rabbitmq
小白学大数据12 小时前
基于Scrapy-Redis的分布式景点数据爬取与热力图生成
javascript·redis·分布式·scrapy
hong_zc12 小时前
简单入门RabbitMQ
rabbitmq
Kookoos13 小时前
Redis + ABP vNext 构建分布式高可用缓存架构
redis·分布式·缓存·架构·c#·.net
勤奋的大熊猫13 小时前
Ruby 循环与迭代器
ruby