rabbitmq最新版本在外部的訪問權(quán)限上進行了進一步的控制,其中默認情況下假瞬,guest用戶只能通過本地loopback端口訪問
為了在外部對rabbitmq進行連接和訪問诈铛,需要新增用戶,對用到的命令進行簡單記錄
rabbitmqctl add_user<username><userpass>
rabbitmqctl add_vhost<path>
rabbitmqctl set_user_tags<username>administrator
rabbitmqctl set_permissions -p<path><username>".*" ".*" ".*"
rabbitmqctllist_connections---用于查看當前的連接
rabbitmqctllist_queues---會列出所有隊列名稱勃痴,后邊可能還會帶著這個隊列當前消息數(shù)
rabbitmqctlstatus---查看當前隊列信息
rabbitmqctl stop_app
rabbitmqctlreset/force_reset
rabbitmqctl start_app
rabbitmqctl-p${vhost-name}purge_queue${queue-name}
-------------------------------------附加---------------------------------------------
給centos安裝epel yum 源
# rpm -ivh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
安裝erlang運行環(huán)境
# yum install erlang
安裝rabbitmq server
# rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
# rpm -ivh http://www.rabbitmq.com/releases/rabbitmq-server/v3.0.0/rabbitmq-server-3.0.0-1.noarch.rpm
打開server
# chkconfig rabbitmq-server on
# rabbitmqctl status
會報異常:
# rabbitmqctl status
Status of node rabbit@devnote ...
Error: unable to connect to node rabbit@devnote: nodedown
DIAGNOSTICS
===========
nodes in question: [rabbit@devnote]
hosts, their running nodes and ports:
- devnote: [{rabbitmqctl24923,51045}]
current node details:
- node name: rabbitmqctl24923@devnote
- home dir: /var/lib/rabbitmq
- cookie hash: TblHThacrBHJzl5Vt7Y4Ww==
執(zhí)行命令:
# /sbin/service rabbitmq-server stop
# /sbin/service rabbitmq-server start
# rabbitmqctl status 測試正確
查看所有隊列信息
# rabbitmqctl list_queues
關(guān)閉應用
# rabbitmqctl stop_app
啟動應用斗塘,和上述關(guān)閉命令配合使用,達到清空隊列的目的
# rabbitmqctl start_app
清除所有隊列
# rabbitmqctl reset
更多用法及參數(shù),可以執(zhí)行如下命令查看
# rabbitmqctl
(1)首先關(guān)閉rabbitmq:?rabbitmqctl stop_app
(2)還原:?rabbitmqctl reset
(3)啟動: rabbitmqctl start_app
(4)添加用戶:?rabbitmqctl add_user root root
(5)設置權(quán)限:rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
(6)查看用戶:?rabbitmqctl list_users