欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

rabbitmq简介

程序员文章站 2022-07-12 12:50:21
...

https://www.jianshu.com/p/42b98f5eacb3

celery 用到了,link

安装

自动安装
# sudo apt-get install rabbitmq-server
如果没有问题,那就直接安装了,不用设置什么东西

查看运行状态
# service rabbitmq-server status

创建用户

rabbitmqctl add_user {用户名} {密码}

// 设置权限
rabbitmqctl set_user_tags {用户名} {权限}

RabbitMQ用户增删及权限控制

用户角色分类

none:无法登录控制台

不能访问 management plugin,通常就是普通的生产者和消费者。

management:普通管理者。

仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对policies进行管理。用户可以通过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的全局的统计信息
同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

administrator:超级管理员。

policymaker和monitoring可以做的任何事外加:
创建和删除virtual hosts
查看、创建和删除users
查看创建和删除permissions
关闭其他用户的connections

创建用户

rabbitmqctl add_user {用户名} {密码}

// 设置权限
rabbitmqctl set_user_tags {用户名} {权限}

例:创建一个超级用户

rabbitmqctl add_user admin1 admin1
rabbitmqctl set_user_tags admin1 administrator

查看用户列表

rabbitmqctl list_users

为用户赋权

// 使用户user1具有vhost1这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl  set_permissions -p vhost1 user1 '.*' '.*' '.*' 

// 查看权限
rabbitmqctl list_user_permissions user1

rabbitmqctl list_permissions -p vhost1

// 清除权限
rabbitmqctl clear_permissions [-p VHostPath] User

删除用户

rabbitmqctl delete_user Username

修改用户的密码

rabbitmqctl change_password Username Newpassword

rabbitmq的vhost与用户管理

当我们在创建用户时,会指定用户能访问一个虚拟机,并且该用户只能访问该虚拟机下的队列和交换机,如果没有指定,默认的是”/”;一个rabbitmq服务器上可以运行多个vhost,以便于适用不同的业务需要,这样做既可以满足权限配置的要求,也可以避免不同业务之间队列、交换机的命名冲突问题,因为不同vhost之间是隔离的。


添加虚拟机

rabbitmqctl add_vhost vhost_one
1
 

删除虚拟机

rabbitmqctl delete_vhost vhost_one
1
 

查看虚拟机列表

rabbitmqctl list_vhosts
1


“/”是rabbitmq默认的虚拟机,之前默认连接的都是它

创建一个用户

rabbitmqctl add_user username password
1
为用户分配角色

rabbitmqctl set_user_tags username administrator
#Tags 可以是:administrator, monitoring, management
1
2
设置访问权限

rabbitmqctl set_permissions -p vhostname username ".*" ".*" ".*"
1
后边三个.*分别代表:配置权限、写权限、读权限

附:
删除用户
rabbitmqctl delete_user username 


改密码:
rabbimqctl change_password username newpassword