rabbitmq 使用者管理和虛擬機器管理
一,使用者管理
RabbitMQ的使用者角色分類:
none、management、policymaker、monitoring、administrator
RabbitMQ各類角色描述:
none
不能訪問 management plugin
management
使用者可以通過AMQP做的任何事外加:
列出自己可以通過AMQP登入的virtual hosts
檢視自己的virtual hosts中的queues, exchanges 和 bindings
檢視和關閉自己的channels 和 connections
檢視有關自己的virtual hosts的“全域性”的統計資訊,包含其他使用者在這些virtual hosts中的活動。
policymaker
management可以做的任何事外加:
檢視、建立和刪除自己的virtual hosts所屬的policies和parameters
monitoring
management可以做的任何事外加:
列出所有virtual hosts,包括他們不能登入的virtual hosts
檢視其他使用者的connections和channels
檢視節點級別的資料如clustering和memory使用情況
檢視真正的關於所有virtual hosts的全域性的統計資訊
administrator
policymaker和monitoring可以做的任何事外加:
建立和刪除virtual hosts
檢視、建立和刪除users
檢視建立和刪除permissions
關閉其他使用者的connections
建立使用者並設定角色:
可以建立管理員使用者,負責整個MQ的運維,例如:
$sudo rabbitmqctl add_user user_admin passwd_admin
賦予其administrator角色:
$sudo rabbitmqctl set_user_tags user_admin administrator
可以建立RabbitMQ監控使用者,負責整個MQ的監控,例如:
$sudo rabbitmqctl add_user user_monitoring passwd_monitor
賦予其monitoring角色:
$sudo rabbitmqctl set_user_tags user_monitoring monitoring
可以建立某個專案的專用使用者,只能訪問專案自己的virtual hosts
$sudo rabbitmqctl add_user user_proj passwd_proj
賦予其management角色:
$sudo rabbitmqctl set_user_tags user_proj management
建立和賦角色完成後檢視並確認:
$sudo rabbitmqctl list_users
二,虛擬機器管理
每個RabbitMQ伺服器都能建立虛擬的訊息伺服器,我們稱之為虛擬主機(vhost)每一個vhost本質上是一個mini版的RabbitMQ伺服器,擁有自己的佇列、交換器和繫結等等
1,建立虛擬機器
rabbitmqctl add_vhost [vhost_name]
2,刪除虛擬機器
rabbitmqctl delete_vhos t[vhsost_name]
3,檢視虛擬機器
rabbitmqctl list_vhost