Rabbitmq日常维护
一、服务器管理 1.启动rabbit /usr/local/rabbitmq/sbin/abbitmq-server 即可运行rabbitmq节点 2.后台方式运行 /usr/local/rabbitmq/sbin/abbitmq-server -detached 3.关闭节点 /usr/local/rabbitmq/sbin/rabbitmqctl stop 关闭节点(会同时关闭erlang节点) 4.不关闭节点只关闭rabbitmq /usr/local/rabbitmq/sbin/rabbitmqctl stop_app 注意:关闭应用程序控制台日志与关闭整个节点的日志是相同的. 二、用户权限配置 1.新建用户 /usr/local/rabbitmq/sbin/rabbitmqctl add_user admin admin 用户账号密码为admin 2.查看当前用户列表 /usr/local/rabbitmq/sbin/rabbitmqctl list_users 3.删除用户 /usr/local/rabbitmq/sbin/rabbitmqctl delete_user admin 注意:当删除用户时,任何引用该用户访问权限条目都会从Rabbit权限数据库中自动删除,有点类似关联删除。同时,Rabbit并不会提醒你与用户相关的控制条目都被删除了,所有删除用户时需要谨慎 4.给用户设置读、写、及配置权限 /usr/local/rabbitmq/sbin/rabbitmqctl set_permissions -p / admin “.*” “.*” “.*” 5.查看指定vhost的用户权限列表 /usr/local/rabbitmq/sbin/rabbitmqctl list_permissions –p / NOTE: -p /:代表set_permissions控制条目应该应用到哪个vhost上; admin:代表被授权的用户名字; “.*” “.*” “.*”:分别代表配置、读和写权限,而其中的”.*”为正则表达式,代表匹配所有权限; 6.查看指定用户权限 /usr/local/rabbitmq/sbin/list_user_permissions admin 三、用户角色 (1) 超级管理员(administrator) 可登陆管理控制台(启用managementplugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。 (2) 监控者(monitoring) 可登陆管理控制台(启用managementplugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等) (3) 策略制定者(policymaker) 可登陆管理控制台(启用managementplugin的情况下),同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。 (4) 普通管理者(management) 仅可登陆管理控制台(启用managementplugin的情况下),无法看到节点信息,也无法对策略进行管理。 (5) 其他 无法登陆管理控制台,通常就是普通的生产者和消费者。 1.设置有用户角色为管理员 注意:设置完需使用list_permisson检查权限是否正确 2.查看默认虚拟机上所有队列列表 /usr/local/rabbitmq/sbin/ list_permission 3.查看默认虚拟机上的队列的名字、消息数目、消费者数目及内存 /usr/local/rabbitmq/sbin/rabbitmqctl list_queues name messages consumers memory 4.获取默认的交换机的信息列表 /usr/local/rabbitmq/sbin/rabbitmqctl list_exchanges 5.查看交换机的名字、绑定在其上的队列名字、路由键及相关参数 /usr/local/rabbitmq/sbin/rabbitmqctl list_bindinds (3) 修改用户的密码 rabbitmqctl change_password Username Newpassword (1) 设置用户权限 rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP (2) 查看(指定hostpath)所有用户的权限信息 rabbitmqctl list_permissions [-p VHostPath] (3) 查看指定用户的权限信息 rabbitmqctl list_user_permissions User (4) 清除用户的权限信息 rabbitmqctl clear_permissions [-p VHostPath] User 开启web管理 rabbitmq-plugins enable rabbitmq_management *查看队列详细信息(生产者,消费者,队列,交换机,通道信息)可以做监控用. rabbitmqctl list -queue -p vhost [ opthion ]
监控rabbitmq
1.使用python脚本
2.使用shell脚本
3.使用rabbitmq自带的api http://x.x.x.x:15672/api
一、服务器管理
1.启动rabbit
/usr/local/rabbitmq/sbin/abbitmq-server 即可运行rabbitmq节点
2.后台方式运行
/usr/local/rabbitmq/sbin/abbitmq-server -detached
3.关闭节点
/usr/local/rabbitmq/sbin/rabbitmqctl stop 关闭节点(会同时关闭erlang节点)
4.不关闭节点只关闭rabbitmq
/usr/local/rabbitmq/sbin/rabbitmqctl stop_app
注意:关闭应用程序控制台日志与关闭整个节点的日志是相同的.
二、用户权限配置
1.新建用户
/usr/local/rabbitmq/sbin/rabbitmqctl add_user admin admin 用户账号密码为admin
2.查看当前用户列表
/usr/local/rabbitmq/sbin/rabbitmqctl list_users
3.删除用户
/usr/local/rabbitmq/sbin/rabbitmqctl delete_user admin
注意:当删除用户时,任何引用该用户访问权限条目都会从Rabbit权限数据库中自动删除,有点类似关联删除。同时,Rabbit并不会提醒你与用户相关的控制条目都被删除了,所有删除用户时需要谨慎
4.给用户设置读、写、及配置权限
/usr/local/rabbitmq/sbin/rabbitmqctl set_permissions -p / admin “.*” “.*” “.*”
5.查看指定vhost的用户权限列表
/usr/local/rabbitmq/sbin/rabbitmqctl list_permissions –p /
NOTE:
-p /:代表set_permissions控制条目应该应用到哪个vhost上;
admin:代表被授权的用户名字;
“.*” “.*” “.*”:分别代表配置、读和写权限,而其中的”.*”为正则表达式,代表匹配所有权限;
6.查看指定用户权限
/usr/local/rabbitmq/sbin/list_user_permissions admin
三、用户角色
(1) 超级管理员(administrator)
可登陆管理控制台(启用managementplugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
(2) 监控者(monitoring)
可登陆管理控制台(启用managementplugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
(3) 策略制定者(policymaker)
可登陆管理控制台(启用managementplugin的情况下),同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
(4) 普通管理者(management)
仅可登陆管理控制台(启用managementplugin的情况下),无法看到节点信息,也无法对策略进行管理。
(5) 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
1.设置有用户角色为管理员
注意:设置完需使用list_permisson检查权限是否正确
2.查看默认虚拟机上所有队列列表
/usr/local/rabbitmq/sbin/ list_permission
3.查看默认虚拟机上的队列的名字、消息数目、消费者数目及内存
/usr/local/rabbitmq/sbin/rabbitmqctl list_queues name messages consumers memory
4.获取默认的交换机的信息列表
/usr/local/rabbitmq/sbin/rabbitmqctl list_exchanges
5.查看交换机的名字、绑定在其上的队列名字、路由键及相关参数
/usr/local/rabbitmq/sbin/rabbitmqctl list_bindinds
(3) 修改用户的密码
rabbitmqctl change_password Username Newpassword
(1) 设置用户权限
rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP
(2) 查看(指定hostpath)所有用户的权限信息
rabbitmqctl list_permissions [-p VHostPath]
(3) 查看指定用户的权限信息
rabbitmqctl list_user_permissions User
(4) 清除用户的权限信息
rabbitmqctl clear_permissions [-p VHostPath] User
开启web管理
rabbitmq-plugins enable rabbitmq_management
*查看队列详细信息(生产者,消费者,队列,交换机,通道信息)可以做监控用.
rabbitmqctl list -queue -p vhost [ opthion ]
燃烧吧,骚年.