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