Elasticsearch 的监控可以从 集群、节点、索引、性能、健康状态 等多个层面来做。下面给你一个比较系统的梳理,从最常用到进阶。
GET _cluster/health
常见字段说明:
status
green:一切正常yellow:主分片可用,副本未分配red:有主分片不可用(严重)number_of_nodes:节点数量unassigned_shards:未分配分片数(需关注)✅ 生产环境强烈建议定期监控 status 和 unassigned_shards
GET _nodes/stats
可查看:
常用子维度:
GET _nodes/stats/jvm
GET _nodes/stats/process
GET _nodes/stats/fs
GET _stats
GET _cat/indices?v
重点关注:
docs.count:文档数store.size:存储大小indexing / search 性能GET _cluster/state
⚠️ 数据量大时返回很多,不建议频繁调用
_cat API(简单直观)适合快速查看:
# 集群健康
GET _cat/health?v
# 节点信息
GET _cat/nodes?v
# 索引列表
GET _cat/indices?v
# 分片分布
GET _cat/shards?v
# 磁盘使用
GET _cat/allocation?v
✅ 运维排查问题非常好用
GET _nodes/stats/jvm
重点关注:
heap_used_percent如果你有 Kibana:
✅ 生产环境强烈推荐
Metricbeat → Elasticsearch → Kibana
Metricbeat 可采集:
✅ 企业级常用方案
| 指标 | 说明 |
|---|---|
| cluster health status | red/yellow 必须告警 |
| unassigned shards | >0 需排查 |
| JVM heap usage | <75% |
| disk usage | <85% |
| node status | 是否掉线 |
red → 立即告警yellow 持续超过 5–10 分钟 → 告警curl -s http://localhost:9200/_cluster/health?pretty | grep status
如果你愿意,我可以帮你:
你现在是 生产环境 还是 学习/测试环境?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。