Ubuntu下RabbitMq 安裝與運行


參考:https://blog.csdn.net/haeasringnar/article/details/82715823?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

https://www.cnblogs.com/shuzhengyi/p/4280102.html

https://blog.csdn.net/cnxieyang/article/details/52710967

 

由於rabbitMq需要erlang語言的支持,在安裝rabbitMq之前需要安裝erlang,執行命令:

apt-get install erlang-nox     # 安裝erlang
erl    # 查看relang語言版本,成功執行則說明relang安裝成功

退出erl:

 安裝 RabbitMQ

sudo apt-get install rabbitmq-server

查看狀態

systemctl status rabbitmq-server   #Active: active (running) 說明處於運行狀態

# service rabbitmq-server status 用service指令也可以查看,同systemctl指令

啟用 web端可視化操作界面,我們還需要配置Management Plugin插件

rabbitmq-plugins enable rabbitmq_management   # 啟用插件
service rabbitmq-server restart    # 重啟

安裝完成

使用以下鏈接進入插件提供的管理界面,用戶名密碼為上一步設置的用戶名與密碼(默認密碼官網上找,我忘記了)

http://IP:15672

啟動與停止:

啟動:sudo rabbitmq-server start

關閉: sudo rabbitmq-server stop

重啟: sudo rabbitmq-server restart

新建用戶

sudo rabbitmqctl add_user  【用戶名】 【密碼】

賦予權限

sudo rabbitmqctl set_user_tags [用戶名] administrator

賦予virtual host中所有資源的配置、寫、讀權限以便管理其中的資源,也是添加遠程訪問權限

sudo rabbitmqctl  set_permissions -p / [用戶名] '.*' '.*' '.*'

基本操作:
sudo rabbitmqctl # 查看所有命令和幫助文檔

本地節點默認被命名為”rabbit”。可以通過這個命令前使 用”-n”標志明確的指定節點名稱, 例如:  

sudo rabbitmqctl -n rabbit@hostname **** 控制台命令

sudo rabbitmqctl stop # 停止服務
sudo rabbitmqctl status # 查看服務狀態 顯示RabbitMQ中間件各種信息

啟動應用:sudo  rabbitmqctl start_app

停止應用:sudo rabbitmqctl stop_app

sudo rabbitmqctl list_users # 查看當前所有用戶
sudo rabbitmqctl list_user_permissions guest # 查看默認guest用戶的權限
sudo rabbitmqctl delete_user guest # 刪掉默認用戶(由於RabbitMQ默認的賬號用戶名和密碼都是guest。為了安全起見, 可以刪掉默認用戶)
sudo rabbitmqctl add_user username password # 添加新用戶

sudo rabbitmqctl change_password username newpassword  #修改密碼

sudo rabbitmqctl delete_user username # 刪除用戶
sudo rabbitmqctl set_user_tags username administrator # 設置用戶tag

設置用戶權限

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

example:sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*" # 賦予用戶默認vhost的全部操作權限
sudo rabbitmqctl list_user_permissions username # 查看用戶的權限

清除用戶權限
sudo rabbitmqctl clear_permissions [-p vhostpath] username
列出虛擬主機上的所有權限
sudo rabbitmqctl list_permissions [-p vhostpath]
創建虛擬主機 sudo rabbitmqctl add_vhost vhostpath

刪除虛擬主機 sudo rabbitmqctl delete_vhost vhostpath

列出所有虛擬主機 sudo rabbitmqctl list_vhosts

列出全部隊列,exchanger,binder

sudo rabbitmqctl  list_queues [-p <vhostpath>] [<queueinfoitem> ...]
   list_exchanges [-p <vhostpath>] [<exchangeinfoitem> ...]
   list_bindings [-p <vhostpath>] [<bindinginfoitem> ...]
   list_connections [<connectioninfoitem> ...]
   list_channels [<channelinfoitem> ...]
   list_consumers [-p <vhostpath>]


rabbitmqctl set_user_tags User Tag
User為用戶名, Tag為角色名(對應於上面的administrator,monitoring,policymaker,management,或其他自定義名稱)。

重置RabbitMQ節點:
sudo rabbitmqctl reset

sudo rabbitmqctl force_reset


(1) 超級管理員(administrator)

可登陸管理控制台(啟用management plugin的情況下),可查看所有的信息,並且可以對用戶,策略(policy)進行操作。

(2) 監控者(monitoring)

可登陸管理控制台(啟用management plugin的情況下),同時可以查看rabbitmq節點的相關信息(進程數,內存使用情況,磁盤使用情況等)

(3) 策略制定者(policymaker)

可登陸管理控制台(啟用management plugin的情況下), 同時可以對policy進行管理。但無法查看節點的相關信息(上圖紅框標識的部分)。

與administrator的對比,administrator能看到這些內容

(4) 普通管理者(management)

僅可登陸管理控制台(啟用management plugin的情況下),無法看到節點信息,也無法對策略進行管理。

(5) 其他

無法登陸管理控制台,通常就是普通的生產者和消費者。

 

 


免責聲明!

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



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