一、通過yum命令在線安裝RabbitMQ
yum在線安裝,簡單、快捷、自動安裝相關依賴包。
1.安裝Erlang環境(RabbitMQ由Erlang語言開發)
1.1)下載rpm安裝包
官方地址:http://www.erlang.org/downloads
wget -O erlang-20.3.4-1.el7.centos.x86_64.rpm https://bintray.com/rabbitmq/rpm/download_file?file_path=erlang%2F20%2Fel%2F7%2Fx86_64%2Ferlang-20.3.4-1.el7.centos.x86_64.rpm
1.2)安裝Erlang
yum install -y erlang-20.3.4-1.el7.centos.x86_64.rpm
1.3)檢查Erlang是否安裝成功
[root@localhost ~]# erl -version Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 9.3 [root@localhost ~]#
2.安裝RabbitMQ
2.1)下載rpm安裝包
官方地址:http://www.rabbitmq.com/download.html
wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.4/rabbitmq-server-3.7.4-1.el7.noarch.rpm
2.2)安裝RabbitMQ
yum install -y rabbitmq-server-3.7.4-1.el7.noarch.rpm
2.3)檢查RabbitMQ是否安裝成功
[root@localhost ~]# rabbitmqctl status Status of node rabbit@localhost ... [{pid,14618}, {running_applications, [{rabbitmq_management,"RabbitMQ Management Console","3.7.4"}, {rabbitmq_management_agent,"RabbitMQ Management Agent","3.7.4"}, {amqp_client,"RabbitMQ AMQP Client","3.7.4"}, {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.7.4"}, {cowboy,"Small, fast, modern HTTP server.","2.2.2"}, {cowlib,"Support library for manipulating Web protocols.","2.1.0"}, {rabbit,"RabbitMQ","3.7.4"}, {rabbit_common, "Modules shared by rabbitmq-server and rabbitmq-erlang-client", "3.7.4"}, ...
3.關於服務
3.1)啟動服務
service rabbitmq-server start
3.2)停止服務
service rabbitmq-server stop
3.3)設置開機啟動
chkconfig rabbitmq-server on
4.用戶管理
4.1)查看用戶列表
[root@localhost ~]# rabbitmqctl list_users
Listing users ...
guest [administrator]
[root@localhost ~]#
4.2)添加用戶
rabbitmqctl add_user 用戶名 密碼
[root@localhost ~]# rabbitmqctl add_user admin 123456 Adding user "admin" ... [root@localhost ~]#
4.3)刪除用戶
rabbitmqctl delete_user 用戶名
[root@localhost ~]# rabbitmqctl delete_user admin Deleting user "admin" ... [root@localhost ~]#
4.4)修改用戶密碼
rabbitmqctl change_password 用戶名 新密碼
[root@localhost ~]# rabbitmqctl change_password admin 666666 Changing password for user "admin" ... [root@localhost ~]#
5.角色管理
5.1)角色說明

none(普通用戶) 沒有控制台操作權限。 management(普通管理員) 可以查看當前用戶的queues, exchanges和bindings。 可以查看和關閉當前用戶的channels和connections。 可以查看當前用戶的virtual hosts的統計信息。 policymaker(策略管理員) 具有management權限及查看、創建和刪除當前用戶的policies和parameters。 monitoring(監控管理員) 具有management權限 查看所有virtual hosts及全局的統計信息 查看所有用戶的connections和channels 查看所有節點數據,如clustering和memory使用情況 administrator(超級管理員) 具有policymaker、monitoring權限 查看、創建、刪除所有virtual hosts 查看、創建、刪除所有users 查看、創建、刪除所有permissions 可以關閉所有用戶的connections
5.2)查看用戶角色
rabbitmqctl list_users 用戶名
[root@localhost ~]# rabbitmqctl list_users
Listing users ...
admin [administrator]
guest [administrator]
[root@localhost ~]#
5.3)設置用戶角色
rabbitmqctl set_user_tags admin 角色名稱(支持同時設置多個角色)
[root@localhost ~]# rabbitmqctl set_user_tags admin administrator Setting tags for user "admin" to [administrator] ... [root@localhost ~]#
6.權限管理
用戶權限是指用戶對exchange,queue的操作權限,包括配置權限,讀寫權限。配置權限會影響到exchange,queue的聲明和刪除。讀寫權限會影響到queue的讀寫消息、exchange發送消息以及queue和exchange的綁定操作。
6.1)查看用戶權限
rabbitmqctl list_user_permissions 用戶名
[root@localhost ~]# rabbitmqctl list_user_permissions guest Listing permissions for user "guest" ... / .* .* .* [root@localhost ~]#
6.2)設置用戶權限
rabbitmqctl set_permissions -p 虛擬主機名稱 用戶名 <conf> <write> <read>
[root@localhost ~]# rabbitmqctl set_permissions -p / admin '.*' '.*' '.*' Setting permissions for user "admin" in vhost "/" ... [root@localhost ~]#
7.虛擬主機管理
為什么需要虛擬主機(vhost)?因為RabbitMQ只能在虛擬主機的粒度上進行權限控制。每個vhost本質上是一個mini版的RabbitMQ服務器,擁有自己的隊列、交換器和綁定等。
7.1)查看虛擬主機
[root@localhost ~]# rabbitmqctl list_vhosts Listing vhosts ... / [root@localhost ~]#
7.2)添加虛擬主機
rabbitmqctl add_vhost 虛擬主機名稱
[root@localhost ~]# rabbitmqctl add_vhost coreSystem Adding vhost "coreSystem" ... [root@localhost ~]#
7.3)刪除虛擬主機
rabbitmqctl delete_vhost 虛擬主機名稱
[root@localhost ~]# rabbitmqctl delete_vhost coreSystem Deleting vhost "coreSystem" ... [root@localhost ~]#
8.web后台管理
8.1)啟用后台管理插件
[root@localhost ~]# rabbitmq-plugins enable rabbitmq_management The following plugins have been configured: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch Applying plugin configuration to rabbit@localhost... The following plugins have been enabled: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch started 3 plugins. [root@localhost ~]#
8.2)登錄
瀏覽器輸入:http://服務器Ip:15672/