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

相关推荐
AUGENSTERN_dc40 分钟前
RaabitMQ 快速入门
java·后端·rabbitmq
Charlie__ZS2 小时前
RabbitMQ
分布式·rabbitmq
桑榆08062 小时前
spark-core编程2
大数据·分布式·spark
小袁拒绝摆烂6 小时前
Redis-高级篇(分布式缓存/持久化)
redis·分布式·缓存
帝锦_li10 小时前
微服务1--服务架构
分布式·微服务·系统架构
星辰瑞云10 小时前
Spark-SQL核心编程2
大数据·分布式·spark
ErizJ11 小时前
Golang|Kafka在秒杀场景中的应用
开发语言·分布式·后端·golang·kafka
老友@11 小时前
Docker 搭建 RabbitMQ
docker·容器·rabbitmq
M-bao11 小时前
RabbitMQ demo案例
分布式·rabbitmq
麻芝汤圆12 小时前
Hadoop:大数据时代的基石
大数据·linux·hadoop·分布式·安全·web安全·centos