You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在RabbitMQ集群环境中通过API/CLI识别主节点

如何在RabbitMQ集群中识别主节点(API/CLI方式)

你当前调用的/api/vhosts接口仅返回虚拟主机相关信息,无法获取集群主节点数据,以下是两种可行的识别方式:

CLI方式

查看集群全局主节点

使用RabbitMQ自带的rabbitmqctl工具执行集群状态查询:

rabbitmqctl cluster_status

执行后查看输出:

  • Cluster name对应的节点即为集群的主节点(通常是第一个创建集群的磁盘节点)
  • Disk Nodes列表中的节点是持久化节点,集群主节点一定属于此类

查看镜像队列的主节点

如果需要确认特定镜像队列的主节点,执行:

rabbitmqctl list_queues name master_node

输出中master_node列对应的节点就是该队列的主节点。

API方式

查询集群全局主节点

调用/api/nodes接口获取所有节点信息,其中包含is_leader字段(布尔值),值为true的节点即为集群主节点:

curl -sL -u guest:guest -H "Accept: application/json" http://127.0.0.1:15672/api/nodes

返回的JSON数据中,还可通过type字段筛选磁盘节点(值为disc),主节点必然是磁盘节点。

查询特定队列的主节点

若需查看单个队列的主节点,调用/api/queues/{vhost}/{queue_name}接口,返回数据中的owner_node字段即为该队列的主节点:

# 替换{your_vhost}和{your_queue}为实际值
curl -sL -u guest:guest -H "Accept: application/json" http://127.0.0.1:15672/api/queues/{your_vhost}/{your_queue}

内容的提问来源于stack exchange,提问作者Vishwa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 22:42:31