RabbitMQ介面管理和命令管理
RabbitMQ vhost管理
RabbitMQ vhost 全稱為Virtual Host(虛擬主機),一個broker裡可以開設多個vhost,用作不同使用者的許可權分離。許可權控制組,使用者只能關聯到一個vhost上,一個vhost中可以有若干個Exchange和Queue,預設的vhost是”/”
一、通過RabbitMQ管理後臺管理vhost
2、對虛擬主機設定許可權和刪除虛擬主機
在虛擬主機列表中對著想要操作的虛擬主機點選,進行操作頁面
二、通過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