CentOS 7 x64 rabbitmq
一、CentOS 7 yum 新增epel 源
yum -y install epel-release
1、 yum -y install erlang
yum remove epel-release
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.1/rabbitmq-server-generic-unix-3.5.1.tar.gz
tar zxvf rabbitmq-server-generic-unix-3.5.1.tar.gz
mv rabbitmq_server-3.5.1 /opt/local/rabbitmq
cd /opt/local/rabbitmq/sbin
./rabbitmq-server -detached #後臺啟動
設定環境變數
vi /etc/profile
export PATH=$PATH:/opt/local/rabbitmq/sbin
source /etc/profile
cd /opt/local/rabbitmq/sbin
./rabbitmqctl stop #關閉rabbitmq
增加配置檔案,限制IP訪問
vi /etc/rabbitmq/rabbitmq-env.conf #檔案預設不存在,需要自己建立
-------------------------------------------------------------------
RABBITMQ_NODENAME=jicki
RABBITMQ_NODE_IP_ADDRESS=127.0.0.1
RABBITMQ_NODE_PORT=5672
RABBITMQ_MNESIA_BASE=/opt/local/rabbitmq/data
--------------------------------------------------------------------
RABBITMQ_NODENAME #節點名稱
RABBITMQ_NODE_IP_ADDRESS #監聽IP
RABBITMQ_NODE_PORT #監聽埠
RABBITMQ_MNESIA_BASE #資料儲存路徑
儲存!
2、 開啟下rabbitmq-server的外掛(網頁管理外掛 , 可不執行):
/usr/sbin/rabbitmq-plugins enable rabbitmq_management
3、 重啟 rabbitmq-server
service rabbitmq-server restart
4、驗證rabbitmq 的埠
netstat -plantup|grep 15672
netstat -plantup|grep 5672
其中5672為預設的rabbitmq監聽埠,15672埠為WEB介面訪問需要開啟的埠。
5、 WEB介面訪問
http://ip:15672/
預設帳號密碼為:guest/guest
6、新增使用者
rabbitmqctl命令新增使用者:
rabbitmqctl add_user jicki 123456
新增許可權:
rabbitmqctl set_user_tags jicki administrator
許可權有:
1. administrator (管理員)
可登陸管理控制檯(啟用management plugin的情況下),可檢視所有的資訊,並且可以對使用者,策略(policy)進行操作。
2. management
使用者可以通過AMQP做的任何事外加:
列出自己可以通過AMQP登入的virtual hosts
檢視自己的virtual hosts中的queues, exchanges 和 bindings
檢視和關閉自己的channels 和 connections
檢視有關自己的virtual hosts的“全域性”的統計資訊,包含其他使用者在這些virtual hosts中的活動。
3. monitoring
可登陸管理控制檯(啟用management plugin的情況下),同時可以檢視rabbitmq節點的相關資訊(程式數,記憶體使用情況,磁碟使用情況等)。
4. policymaker
可登陸管理控制檯(啟用management plugin的情況下), 同時可以對policy進行管理。但無法檢視節點的相關資訊(上圖紅框標識的部分)。
檢視已有使用者:
rabbitmqctl list_users
相關命令為:
(1) 設定使用者許可權
rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP
例:rabbitmqctl set_permissions -p "/" jicki ".*" ".*" ".*"
(2) 檢視(指定hostpath)所有使用者的許可權資訊
rabbitmqctl list_permissions [-p VHostPath]
(3) 檢視指定使用者的許可權資訊
rabbitmqctl list_user_permissions User
(4) 清除使用者的許可權資訊
rabbitmqctl clear_permissions [-p VHostPath] User