当前位置: 首页 > news >正文

RabbitMQ-日常运维命令

作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

图片

中间件,我给它的定义就是为了实现某系业务功能依赖的软件,包括如下部分:

Web服务器

代理服务器

ZooKeeper

Kafka

RabbitMQ(本章节)

到目前为止,我们的RabbitMQ的基本功能就算已经讲解完毕,本小节给RabbitMQ的常用命令做一个总结,当然很多命令也可以通过网页和http接口实现,具体用什么方式,就看个人习惯和技能的掌握程度。

1. rabbitmq-server 服务管理

# 前台启动(调试用)
rabbitmq-server# 后台启动
rabbitmq-server -detached# 停止后台服务
rabbitmqctl stop

2. rabbitmq-plugins 插件管理

# 列出所有插件
rabbitmq-plugins list# 启用插件(如管理界面)
rabbitmq-plugins enable rabbitmq_management# 禁用插件
rabbitmq-plugins disable rabbitmq_management

3. rabbitmqctl 核心管理命令

3.1 节点状态管理

# 查看节点状态
rabbitmqctl status# 检查节点健康状态
rabbitmqctl node_health_check# 查看运行环境参数
rabbitmqctl environment

3.2 用户管理​​​​​​​

# 添加用户
rabbitmqctl add_user <username> <password># 删除用户
rabbitmqctl delete_user <username># 修改密码
rabbitmqctl change_password <username> <newpassword># 列出所有用户
rabbitmqctl list_users# 设置用户标签(角色)
rabbitmqctl set_user_tags <username> <tag>
# 示例:设置为管理员
rabbitmqctl set_user_tags admin administrator

3.3 虚拟主机管理​​​​​​​

# 添加虚拟主机
rabbitmqctl add_vhost <vhost_name># 删除虚拟主机
rabbitmqctl delete_vhost <vhost_name># 列出所有虚拟主机
rabbitmqctl list_vhosts# 设置用户权限
rabbitmqctl set_permissions -p <vhost> <user> ".*" ".*" ".*"
# 示例:
rabbitmqctl set_permissions -p /myvhost admin ".*" ".*" ".*"

3.4 交换机管理​​​​​​​

# 列出所有交换机(默认交换机不会显示)
rabbitmqctl list_exchanges [-p <vhost>] [name, type, durable, auto_delete]# 示例:列出默认虚拟主机的所有交换机
rabbitmqctl list_exchanges -p / name type durable# 创建交换机(注意:通常由客户端声明,但可通过HTTP API操作)
# 使用 rabbitmqadmin 创建:
rabbitmqadmin declare exchange --vhost=/ name=my_exchange type=direct durable=true

3.5 队列管理​​​​​​​

# 创建队列
rabbitmqadmin declare queue --vhost=/ name=my_queue durable=true# 列出所有队列
rabbitmqctl list_queues [-p <vhost>] [name, durable, auto_delete, messages, memory]# 示例:显示队列名和消息数
rabbitmqctl list_queues -p / name messages# 删除队列
rabbitmqadmin delete queue --vhost=/ name=my_queue

3.6 绑定管理

# 创建绑定
rabbitmqadmin declare binding --vhost=/ \source=exchange_name \destination=queue_name \routing_key=my.routing.key# 列出所有绑定关系
rabbitmqctl list_bindings [-p <vhost>]# 示例:显示详细绑定信息
rabbitmqctl list_bindings -p / source_name source_kind destination_name destination_kind routing_key# 删除绑定
rabbitmqadmin delete binding --vhost=/ \source=exchange_name \destination=queue_name \routing_key=my.routing.key \destination_type=queue

​​​​​​​

3.7 集群管理

# 加入集群
rabbitmqctl join_cluster rabbit@<master-node># 查看集群状态
rabbitmqctl cluster_status# 修改节点类型(磁盘/内存节点)
rabbitmqctl change_cluster_node_type disc | ram# 从集群移除节点
rabbitmqctl forget_cluster_node rabbit@<node-to-remove>

3.8 策略上管理​​​​​​​
​​​​​​​

# 添加策略
rabbitmqctl set_policy [-p <vhost>] <name> <pattern> <definition>
# 示例:设置高可用策略
rabbitmqctl set_policy ha-all ".*" '{"ha-mode":"all"}'# 列出策略
rabbitmqctl list_policies [-p <vhost>]# 删除策略
rabbitmqctl clear_policy [-p <vhost>] <name>
http://www.lryc.cn/news/613072.html

相关文章:

  • CS231n2017 Assignment3 RNN、LSTM部分
  • 3深度学习Pytorch-神经网络--全连接神经网络、数据准备(构建数据类Dataset、TensorDataset 和数据加载器DataLoader)
  • PID基础知识
  • 关于其他副脑类 GPTs 市场现状及研究报告
  • mysql全屏终端全量、部分备份、恢复脚本
  • Python面试题及详细答案150道(16-30) -- 数据结构篇
  • 分布式微服务--GateWay(过滤器及使用Gateway注意点)
  • 告别YAML,在SpringBoot中用数据库配置替代配置文件
  • word生成问题总结
  • 【遥感图像入门】近三年遥感图像建筑物细粒度分类技术一览
  • Day116 若依融合mqtt
  • 界面组件DevExpress WPF中文教程:网格视图数据布局 - 紧凑模式
  • 音视频时间戳获取与同步原理详解
  • 【Docker】RustDesk远程控制-私有化部署开源版本
  • 生成式AI的“幽灵漏洞”:法律如何为技术的阴影划界
  • PCIe Base Specification解析(八)
  • 从配置到远程访问:如何用群晖NAS FTP+ Cpolar搭建稳定文件传输通道
  • 深入解析Three.js中的BufferAttribute:源码与实现机制
  • Linux下动态库链接的详细过程
  • C++位图(Bitmap)与布隆过滤器(Bloom Filter)详解及海量数据处理应用
  • vue3父组件把一个对象整体传入子组件,还是把一个对象的多个属性分成多个参数传入
  • C#中统计某个字符出现次数的最简单方法
  • Git `cherry-pick` 工具汇总
  • Numpy科学计算与数据分析:Numpy线性代数基础与实践
  • 第一个vue应用
  • 【Kubernetes】部署 kube-bench 实现 K8s 最佳实践
  • LeetCode 分类刷题:125. 验证回文串
  • LongVie突破超长视频生成极限:1分钟电影级丝滑视频,双模态控制告别卡顿退化
  • Postman接口测试入门
  • ESXI7.0添加标准交换机过程