一、 啓動和關閉
1、啓動RabbitMQ
rabbitmq-server start
注意:這裏可能會出現錯誤,錯誤原因是/var/lib/rabbitmq/.erlang.cookie文件權限不夠。
解決方案對這個文件授權
chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
chmod 400 /var/lib/rabbitmq/.erlang.cookie
2、停止服務
rabbitmqctl stop
啓動與停止其他命令
service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart
二、插件管理
1、添加插件
rabbitmq-plugins enable {插件名}
2、刪除插件
rabbitmq-plugins disable {插件名}
注意:RabbitMQ啓動以後可以使用瀏覽器進入管控臺但是默認情況RabbitMQ不允許直接使用瀏覽器瀏覽器進行訪問因此必須添加插件
rabbitmq-plugins enable rabbitmq_management
3、使用瀏覽器訪問管控臺http://RabbitMQ服務器IP:15672
例如:http://192.168.71.128:15672
三、用戶管理
RabbitMQ安裝成功後使用默認用戶名guest登錄
賬號:guest
密碼:guest
注意:這裏guest只允許本機登錄訪問需要創建用戶並授權遠程訪問命令如下:
1、 添加用戶:
rabbitmqctl add_user {username} {password}
2、 刪除用戶:
rabbitmqctl delete_user {username}
3、 修改密碼:
rabbitmqctl change_password {username} {newpassword}
4、 設置用戶角色:
rabbitmqctl set_user_tags {username} {tag}
例如:
rabbitmqctl set_user_tags root administrator
tag參數表示用戶角色取值爲:management ,monitoring ,policymaker administrator
各角色詳解:
management
用戶可以通過AMQP做的任何事外加:
列出自己可以通過AMQP登入的virtual hosts
查看自己的virtual hosts中的queues, exchanges 和 bindings
查看和關閉自己的channels 和 connections
查看有關自己的virtual hosts的“全局”的統計信息,包含其他用戶在這些virtual hosts中的活動。
policymaker
management可以做的任何事外加:查看、創建和刪除自己的virtual hosts所屬的policies和parameters
monitoring
management可以做的任何事外加:
列出所有virtual hosts,包括他們不能登錄的virtual hosts
查看其他用戶的connections和channels
查看節點級別的數據如clustering和memory使用情況
查看真正的關於所有virtual hosts的全局的統計信息
administrator
policymaker和monitoring可以做的任何事外加:
創建和刪除virtual hosts
查看、創建和刪除users
查看創建和刪除permissions
關閉其他用戶的connections
四、權限管理
1、 授權命令:
rabbitmqctl set_permissions [-p vhostpath] {user} {conf} {write} {read}
-p vhostpath :用於指定一個資源的命名空間,例如 –p / 表示根路徑命名空間
user:用於指定要爲哪個用戶授權填寫用戶名
conf:一個正則表達式match哪些配置資源能夠被該用戶配置。
write:一個正則表達式match哪些配置資源能夠被該用戶讀。
read:一個正則表達式match哪些配置資源能夠被該用戶訪問。
例如:
rabbitmqctl set_permissions -p / root ‘.’ '.’ ‘.*’
用於設置root用戶擁有對所有資源的 讀寫配置權限
2、查看用戶權限
rabbitmqctl list_permissions [vhostpath]
例如
查看根徑經下的所有用戶權限
rabbitmqctl list_permissions
查看指定命名空間下的所有用戶權限
rabbitmqctl list_permissions /abc
3、查看指定用戶下的權限
rabbitmqctl list_user_permissions {username}
例如
查看root用戶下的權限
rabbitmqctl list_user_permissions root
4、清除用戶權限
rabbitmqctl clear_permissions {username}
例如:
清除root用戶的權限
rabbitmqctl clear_permissions root
五、vhost管理
vhost是RabbitMQ中的一個命名空間,可以限制消息的存放位置利用這個命名空間可以進行權限的控制有點類似Windows中的文件夾一樣,在不同的文件夾中存放不同的文件。
1、添加vhost: rabbitmqctl add vhost {name}
例如
rabbitmqctl add vhost bjpowernode
2、刪除vhost:rabbitmqctl delete vhost {name}
例如
rabbitmqctl delete vhost bjpowernode