Elasticsearch 系统状态查询:使用 Cat APIs 监控集群
Elasticsearch 提供了一系列 cat APIs(基于 HTTP 的 REST 接口),以简洁的文本格式展示集群、索引、节点等核心组件的状态信息,便于开发者和运维人员快速监控系统运行情况。这些 API 输出格式直观(类似命令行工具),支持通过参数筛选和格式化输出。
Cat APIs 核心特点
- 轻量高效:返回纯文本或表格格式,数据量小,适合快速查看。
- 易于解析:支持
v参数显示表头,h参数筛选字段,便于脚本处理。 - 覆盖全面:涵盖集群健康、节点状态、索引信息、分片分配等核心指标。
常用 Cat APIs 详解
集群健康状态:_cat/health
展示集群的整体健康状态(绿色 / 黄色 / 红色)、节点数量、分片状态等。
1 | GET _cat/health?v |
输出示例:
1 | epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent |
字段说明:
status:集群健康状态(green/yellow/red)。node.total:总节点数;node.data:数据节点数。shards:总分片数;pri:主分片数;unassign:未分配分片数。
节点信息:_cat/nodes
展示所有节点的基本信息,包括内存占用、CPU 负载、角色等。