“Rabbitmq常用命令”的版本间的差异
跳到导航
跳到搜索
第126行: | 第126行: | ||
注意 运维 例如查看队列 是用 rabbitmqadmin ,rabbitmqadmin --username=admin --password=333 list queues 不是 rabbitmqctl list_queues 早上 同桌也说是这个 ,搞半天 还以为集群坏了呢 还看什么日志 | 注意 运维 例如查看队列 是用 rabbitmqadmin ,rabbitmqadmin --username=admin --password=333 list queues 不是 rabbitmqctl list_queues 早上 同桌也说是这个 ,搞半天 还以为集群坏了呢 还看什么日志 | ||
+ | =RabbitMQ 概念:= | ||
+ | <pre> | ||
+ | 概念 详解 | ||
+ | Exchange 消息交换机,它指定消息按什么规则,路由到哪个队列 | ||
+ | Queue 消息队列,每个消息都会被投入到一个或多个队列 | ||
+ | Binding 绑定,它的作用就是把 exchange 和 queue 按照路由规则绑定起来 | ||
+ | Routing Key 路由关键字,exchange 根据这个关键字进行消息投递 | ||
+ | Vhost 虚拟主机,可以开设多个 vhost,用作不同用户的权限分离 | ||
+ | Producer 消息生产者,就是投递消息的程序 | ||
+ | Consumer 消息消费者,就是接受消息的程序 | ||
+ | Channel 消息通道,在客户端的每个连接里,可建立多个 channel,每个 channel 代表一个会话任务 | ||
+ | </pre> | ||
=查看 RabbitMQ日志= | =查看 RabbitMQ日志= | ||
第131行: | 第143行: | ||
[https://blog.csdn.net/weixin_33716941/article/details/90324587 学会查看 RabbitMQ日志] | [https://blog.csdn.net/weixin_33716941/article/details/90324587 学会查看 RabbitMQ日志] | ||
+ | |||
=* see alse= | =* see alse= | ||
[https://blog.csdn.net/zyz511919766/article/details/42292655 RabbitMQ用户角色及权限控制] | [https://blog.csdn.net/zyz511919766/article/details/42292655 RabbitMQ用户角色及权限控制] |
2019年12月25日 (三) 02:07的版本
目录
创建vhost
#创建 lxtx_hello vhost rabbitmqctl add_vhost /hello 为用户设置virtual host 权限 用户为admin: rabbitmqctl set_permissions -p /hello admin '.*' '.*' '.*' rabbitmqctl delete_vhost /hello
开启镜像模式
#为 vhost hello 开启镜像 ,名为 mirror4_hello rabbitmqctl set_policy -p hello mirror4_hello "^" '{"ha-mode":"all"}' Setting policy "mirror4_hello" for pattern "^" to "{\"ha-mode\":\"all\"}" with priority "0" #默认vhost rabbitmqctl set_policy mirror4_newcailuw "^" '{"ha-mode":"all"}' #书面一点的解说 #这行命令在vhost名称为hello创建了一个策略,策略名称为mirror4_hello ,策略模式为 all 即复制到所有节点,包含新增节点,策略正则表达式为 “^” 表示所有匹配所有队列名称 参数 ha-mode:策略键 1.all 队列镜像在群集中的所有节点上。当新节点添加到群集时,队列将镜像到该节点 2.exactly 集群中的队列实例数。 3.nodes 队列镜像到节点名称中列出的节点。 ha-sync-mode:队列同步 1.manual手动<默认模式>.新的队列镜像将不会收到现有的消息,它只会接收新的消息。 2.automatic自动同步.当一个新镜像加入时,队列会自动同步。队列同步是一个阻塞操作。 作者:全能程序猿 链接:https://www.jianshu.com/p/f81d62a8de02 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
https://www.rabbitmq.com/parameters.html
https://www.rabbitmq.com/rabbitmqctl.8.html
* Rabbitmq 用户角色及权限控制
RabbitMQ的用户角色分类:
none、management、policymaker、monitoring、administrator
RabbitMQ各类角色描述:
none 不能访问 management plugin 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
Note
administrator一定能看到 cluster信息,manager不行 monitoring 也可以
* 创建用户
** 新增用户admin,密码1234 rabbitmqctl add_user admin 1234 ** 也可以使用rabbitmqctl命令更改密码 rabbitmqctl change_password admin adm ** 将admin加入到管理员组 赋予其management角色: rabbitmqctl set_user_tags admin administrator ** 查看用户列表 rabbitmqctl list_users
运维常用命令
rabbitmqadmin
一般情况下,我们会使用 rabbitmq_management 插件,通过 Web UI 的方式来监控和操作 RabbitMQ(端口 15672),但有时候命令的方式会更加方便一些,RabbitMQ 提供了 CLI 管理工具 rabbitmqadmin ,其实就是基于 RabbitMQ 的 HTTP API,用 Python 写的一个脚本。
NOTE
注意 运维 例如查看队列 是用 rabbitmqadmin ,rabbitmqadmin --username=admin --password=333 list queues 不是 rabbitmqctl list_queues 早上 同桌也说是这个 ,搞半天 还以为集群坏了呢 还看什么日志
RabbitMQ 概念:
概念 详解 Exchange 消息交换机,它指定消息按什么规则,路由到哪个队列 Queue 消息队列,每个消息都会被投入到一个或多个队列 Binding 绑定,它的作用就是把 exchange 和 queue 按照路由规则绑定起来 Routing Key 路由关键字,exchange 根据这个关键字进行消息投递 Vhost 虚拟主机,可以开设多个 vhost,用作不同用户的权限分离 Producer 消息生产者,就是投递消息的程序 Consumer 消息消费者,就是接受消息的程序 Channel 消息通道,在客户端的每个连接里,可建立多个 channel,每个 channel 代表一个会话任务
查看 RabbitMQ日志
* see alse