| 集群起不来 / 反复选主(master not discovered) |
选主节点不足、发现配置错误、网络/防火墙、时钟漂移 |
master 日志、/_cluster/health、/_cat/nodes?v、发现配置与端口连通性 |
保证 ≥3 个专用主节点并跨故障域;校验 discovery/seed 配置与端口;修复网络与时间同步 |
| 分片长期 UNASSIGNED |
节点不足/磁盘水位、分配过滤、版本不兼容、恢复受限 |
/_cat/shards?v、/_cluster/allocation/explain、磁盘水位与 routing 规则 |
扩容或释放磁盘;修正分配过滤与路由限制;调整水位阈值(在可控风险下)并触发重分配 |
| 写入吞吐低 / ingest 卡顿 |
refresh 太频繁、merge 压力大、磁盘 IO 瓶颈、mapping 字段过多 |
segment/merge 指标、节点 IO、写入延迟与线程池 |
写入期提高 refresh_interval;bulk 合并请求;减少不必要字段索引与分析;升级 SSD/提升 IO |
| CPU 飙高(尤其是写入期) |
analyzer 复杂、字段爆炸、动态 mapping 失控 |
hot threads、mapping 字段数、索引速率与 CPU |
收敛字段与动态模板;选择合适 analyzer;对无需检索字段 index:false |
| 内存告警 / circuit breaker |
heap 压力、聚合/排序过重、请求过大 |
breaker 日志、GC、慢查询与大聚合请求 |
拆分查询、限制聚合维度与 size;引入专用协调节点;控制并发与请求体 |
| 查询慢(多天日志/多索引) |
检索面过大、无过滤、分片过多导致 fan-out |
query profile、慢日志、命中索引数量与分片数 |
按时间分索引并先过滤时间;用 filter 减少打分;控制分片数量与分片大小 |
| 搜索线程池 rejected / 429 |
并发过高、协调节点/数据节点压力不均 |
线程池指标、reject 计数、节点负载分布 |
加协调节点与 LB;降低并发/限流;优化查询与副本承载并发 |
| 集群不稳定(抖动/频繁重分片) |
主节点与数据负载混跑、角色未隔离、资源争用 |
master 日志、节点角色与资源利用率 |
主节点专用化;大集群引入协调节点;隔离 JVM/CPU/磁盘资源 |
| “堆设得很大但更慢” |
heap 超过压缩指针阈值带来性能回退 |
JVM 参数与 GC、启动日志 |
heap 控制在 30–32GB;其余内存留给 OS cache;必要时以多实例/多节点扩展 |