rabbitmqctl常用命令-3


1)啟動、關閉 rabbitmq節點和應用

rabbitmq-server -detached   #rabbitmq分別啟動節點和應用  應用關閉rabbitmqctl stop_app 應用啟動 rabbitmqctl start_app
netstat -lnp |grep beam  #查看端口

rabbitmqctl stop    #應用和節點都將被關閉
rabbitmqctl start_app #應用啟動
rabbitmqctl stop_app #應用關閉

2)開啟rabbitmq控制台

rabbitmq-plugins enable rabbitmq_management
netstat -lnp |grep beam  #查看端口,15672是rabbimq網頁管理監聽端口,5672是客戶端使用的端口

3)用戶管理

用戶管理包括增加用戶,刪除用戶,查看用戶列表,修改用戶密碼。
(1) 新增一個用戶
rabbitmqctl  add_user  Username  Password
(2) 刪除一個用戶
rabbitmqctl  delete_user  Username
(3) 修改用戶的密碼
rabbitmqctl  change_password  Username  Newpassword
(4) 查看當前用戶列表
rabbitmqctl  list_users

例:
添加rabbitmq控制台管理員用戶
rabbitmqctl add_user admin admin  #添加用戶,前一個admin是用戶名,后一個admin是密碼
rabbitmqctl set_user_tags admin administrator  #admin設置為管理員

 4)用戶角色

用戶角色可分為五類,超級管理員, 監控者, 策略制定者, 普通管理者以及其他。
(1) 超級管理員(administrator)
可登陸管理控制台(啟用management plugin的情況下),可查看所有的信息,並且可以對用戶,策略(policy)進行操作。
(2) 監控者(monitoring)
可登陸管理控制台(啟用management plugin的情況下),同時可以查看rabbitmq節點的相關信息(進程數,內存使用情況,磁盤使用情況等)
(3) 策略制定者(policymaker)
可登陸管理控制台(啟用management plugin的情況下), 同時可以對policy進行管理。但無法查看節點的相關信息(上圖紅框標識的部分)。
與administrator的對比,administrator能看到這些內容
(4) 普通管理者(management)
僅可登陸管理控制台(啟用management plugin的情況下),無法看到節點信息,也無法對策略進行管理。
(5) 其他
無法登陸管理控制台,通常就是普通的生產者和消費者。
了解了這些后,就可以根據需要給不同的用戶設置不同的角色,以便按需管理。

設置用戶角色的命令為:
rabbitmqctl  set_user_tags  User  Tag
User為用戶名, Tag為角色名(對應於上面的administrator,monitoring,policymaker,management,或其他自定義名稱)。
也可以給同一用戶設置多個角色,例如
rabbitmqctl  set_user_tags  hncscwc  monitoring  policymaker

5)用戶權限

用戶權限指的是用戶對exchange,queue的操作權限,包括配置權限,讀寫權限。配置權限會影響到exchange,queue的聲明和刪除。讀寫權限影響到從queue里取消息,向exchange發送消息以及queue和exchange的綁定(bind)操作。
例如: 將queue綁定到某exchange上,需要具有queue的可寫權限,以及exchange的可讀權限;向exchange發送消息需要具有exchange的可寫權限;從queue里取數據需要具有queue的可讀權限。詳細請參考官方文檔中"How permissions work"部分。
相關命令為:
(1) 設置用戶權限
rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP
(2) 查看(指定hostpath)所有用戶的權限信息
rabbitmqctl  list_permissions  [-p  VHostPath]
(3) 查看指定用戶的權限信息
rabbitmqctl  list_user_permissions  User
(4)  清除用戶的權限信息
rabbitmqctl  clear_permissions  [-p VHostPath]  User

6)vhost操作

rabbitmqctl delete_vhost /
rabbitmqctl add_vhost /
rabbitmqctl list_vhosts
rabbitmqctl set_permissions -p / guest '.*' '.*' '.*' ##設置用戶權限
rabbitmqctl list_permissions -p / ##列出虛擬主機上的所有權限
rabbitmqctl list_user_permissions guest ##列出用戶權限

 

7)queue操作

http://www.cnblogs.com/hanxiaohui/p/8904268.html

 

8)集群節點的操作

列出集群狀態
rabbitmqctl cluster_status

添加節點
rabbitmqctl stop_app
rabbitmqctl join_cluster {--ram|--disk} rabbit@xxx  #默認是disk , xxx是其中一台節點的host
rabbitmqctl start_app

修改節點存儲類型
集群中必須存活一個磁盤節點
rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type {ram|disk}
rabbitmqctl start_app

將xxx踢除集群
./rabbitmqctl forget_cluster_node rabbit@xxx

 清空消息

這個方法 會把用戶也給清楚了
關閉應用:rabbitmqctl stop_app 清空隊列:rabbitmqctl reset 重啟應用:rabbitmqctl start_ap

 


免責聲明!

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



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