RabbitMQ-rabbitmqctl和插件使用(四)


rabbitmqctl

說明

進入mq的bin目錄 cd /usr/local/Cellar/rabbitmq/3.7.8/sbin

./rabbitmqctl [-n node] [-t timeout] [-q command] [command options.....]

運行:./rabbitmqctl (默認當前 適合本地)

虛擬主機

虛擬主機將隊列元數據綁定的關系等進行完全隔離 當我們mq業務龐大時可以通過虛擬主機將不同隊業務隔離開來

添加

./rabbitmqctl add_vhost vhost1

查看所有虛擬主機

./rabbitmqctl list_vhosts

通過

./rabbitmqctl list_vhosts [vhostinfoitem...]可以指定查看n哪些詳細信息

如:查看名字和是否啟用tracing

./rabbitmqctl list_vhosts name tracing

刪除

刪除指定虛擬主機會刪除主機下的交換器、隊列、綁定關系、用戶關系、權限等

./rabbitmqctl delete_vhost vhost1

權限

分配

./rabbitmqctl set_permissions [-p vhost] {user} {conf} {write} {read}
vhost:分配的虛擬主機 默認/
user 可以訪問指定vhost的用戶名
conf 用於配置用戶在哪些資源上擁有可配置權限的正則表達式
write 用於配置用戶在哪些資源上擁有可寫正則表達式
read 用於配置用戶在哪些資源上擁有可讀正則表達式
例子:

./rabbitmqctl set_permissions -p vhost1 guest ".*" ".*" ".*"

用戶guest可以訪問vhost1 並且對所有資源都擁有可配置,可寫可讀的權限

./rabbitmqctl set_permissions -p vhost1 guest "^queue.*" ".*" ".*"
用戶guest可以訪問vhost1 對queue開頭的資源擁有可配置權限對所有資源擁有可讀可寫的權限

 

刪除權限

./rabbitmqctl clear_permissions -p vhost1 guest

 

查詢虛擬所分配權限

./rabbitmqctl list_permissions -p vhost1

 

查看指定用戶擁有權限

./rabbitmqctl list_user_permissions guest

用戶管理

創建

./rabbitmqctl add_user aa123 aa123

修改密碼

./rabbitmqctl change_password aa123 aa321

刪除用戶

./rabbitmqctl delete_user aa123

查看所有用戶

./rabbitmqctl list_users
5種角色類型
nono 無任何角色,新建用戶默認為nono
management 可以訪問web頁面
policymaker 包含management所有權限 並且可以管理策略
monitorning 包含management所有權限 並且可以看到所有連接、信道及節點相關信息
administrator 包含monitoring的所有權限 並且可以掛你藍用戶·用戶、虛擬主機、權限、策略、參數等 代表最高權限
可以通過
./rabbitmqctl set_user_tags aa123 [tag....]來設置角色 設置后現有身份會被刪除

./rabbitmqctl set_user_tags aa123 management

 

rabbitmqctl插件

通過web管理頁面來管理上面的虛擬機 用戶 權限等
存放在mq的plugins目錄下
 

/usr/local/Cellar/rabbitmq/3.7.8/plugins

 

.ez結尾的就是插件

啟動插件

如web管理頁面

./rabbitmq-plugins enable rabbitmq_management

關閉插件

./rabbitmq-plugins disable rabbitmq_management

插件使用情況

./rabbitmq-plugins list
E*表示顯式啟動
e*表示隱式啟動

應用管理

./rabbitmq-server -detached
后台進程啟動mq
.
/rabbitmqctl stop [pid_file] 用於停止運行mq的erlang虛擬機rabbitmq服務應用 如果指定了pid_file(進程id)則會等待pid_file結束
.
/rabbitmqctl shutdown 與stop的區別會阻塞等待如果沒有關閉成功則返回一個非0值
.
/rabbitmqctl stop_app 停止mq服務應用但是不會停止虛擬機(也不能發送消息和接收消息)
.
/rabbitmqctl start_app 啟動mq服務應用
.
/rabbitmqctl reset 重置mq到最初狀態 需要停止mq比如./rabbitmqctl stop_app
.
/rabbitmqctl fore_reset 強制重置

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM