RabbitMQ界面管理和命令管理

RabbitMQ vhost管理

RabbitMQ vhost 全称为Virtual Host(虚拟主机),一个broker里可以开设多个vhost,用作不同用户的权限分离。权限控制组,用户只能关联到一个vhost上,一个vhost中可以有若干个Exchange和Queue,默认的vhost是”/”

一、通过RabbitMQ管理后台管理vhost

http://localhost:15672/#/vhosts
1、添加一个虚拟主机
RabbitMQ界面管理和命令管理_第1张图片


2、对虚拟主机设置权限和删除虚拟主机
在虚拟主机列表中对着想要操作的虚拟主机点击,进行操作页面
RabbitMQ界面管理和命令管理_第2张图片


RabbitMQ界面管理和命令管理_第3张图片


RabbitMQ界面管理和命令管理_第4张图片

二、通过RabbitMQ 命令行管理vhost

virtual_host管理

 add_vhost <vhost>
 delete_vhost <vhost>
 list_vhosts [<vhostinfoitem> ...]
 set_permissions [-p <vhost>] <user> <conf> <write> <read>
       conf:正则表达式匹配哪些配置资源能够被该用户访问
       conf:正则表达式匹配哪些配置资源能够被该用户读
       conf:正则表达式匹配哪些配置资源能够被该用户访问
 clear_permissions [-p <vhost>] <username>
 list_permissions [-p <vhost>]
 list_user_permissions <username>

示例:
1、创建vhost

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl add_vhost /testvhost
Creating vhost "/testvhost" ...

2、查看vhost列表

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl list_vhosts
Listing vhosts ...
/testvhost
/

3、对vhost设置权限

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl set_permissions -p /testvhost test1 ConfP  WriteP  ReadP
Setting permissions for user "test1" in vhost "/testvhost" ...

4、查看指定vhost的权限

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl  list_permissions -p /testvhost
Listing permissions in vhost "/testvhost" ...
test1   ConfP   WriteP  ReadP

5、查看指定用户的权限

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl list_user_permissions test1
Listing permissions for user "test1" ...
/testvhost       ConfP   WriteP  ReadP

6、清除权限

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl clear_permissions -p /testvhost test1
Clearing permissions for user "test1" in vhost "/testvhost" ...

7、设置所有权限

D:\Worksoftware\RabbitMQServer\rabbitmq_server-3.6.3\sbin>rabbitmqctl set_permissions -p /testvhost test1 ".*" ".*" ".*"
Setting permissions for user "test1" in vhost "/testvhost" ... 

RabbitMQ:基本命令

rabbitmq的安装、启动和停止

rabbitmq-service.bat install
rabbitmq-service.bat start
rabbitmq-service.bat stop

列出所有queue

rabbitmqctl list_queues

列出指定queue的信息

rabbitmqctl list_queues [the queue name] messages_ready messages_unacknowledged

列出所有exchange

rabbitmqctl list_exchanges

列出所有binding

rabbitmqctl list_bindings

安装基于web的管理插件

rabbitmq-plugins.bat enable rabbitmq_management 

应用和集群管理

1.停止RabbitMQ应用,关闭节点

# rabbitmqctl stop 

2.停止RabbitMQ应用

# rabbitmqctl stop_app 

3.启动RabbitMQ应用

# rabbitmqctl start_app 

4.显示RabbitMQ中间件各种信息

# rabbitmqctl status 

5.重置RabbitMQ节点

# rabbitmqctl reset 
# rabbitmqctl force_reset 

从它属于的任何集群中移除,从管理数据库中移除所有数据,例如配置过的用户和虚拟宿主, 删除所有持久化的消息。
force_reset命令和reset的区别是无条件重置节点,不管当前管理数据库状态以及集群的配置。如果数据库或者集群配置发生错误才使用这个最后 的手段。
注意:只有在停止RabbitMQ应用后,reset和force_reset才能成功。

6.循环日志文件

# rabbitmqctl rotate_logs[suffix] 

7.集群管理

# rabbitmqctl cluster clusternode… 

用户管理

1.添加用户

# rabbitmqctl add_user username password 

2.删除用户

# rabbitmqctl delete_user username 

3.修改密码

# rabbitmqctl change_password username newpassword 

4.列出所有用户

# rabbitmqctl list_users 

权限控制
1.创建虚拟主机

# rabbitmqctl add_vhost vhostpath 

2.删除虚拟主机

# rabbitmqctl delete_vhost vhostpath 

3.列出所有虚拟主机

# rabbitmqctl list_vhosts 

4.设置用户权限

# rabbitmqctl set_permissions [-p vhostpath] username regexp regexp regexp 

5.清除用户权限

# rabbitmqctl clear_permissions [-p vhostpath] username

6.列出虚拟主机上的所有权限

# rabbitmqctl list_permissions [-p vhostpath] 

7.列出用户权限

# rabbitmqctl list_user_permissions username

你可能感兴趣的:(分布式开发技术,消息队列【RabbitMQ】)