集群运维挑战

  • 用户集群数量多,业务场景差异大
  • 使用与配置不当,优化不够

    思考🤔如何更加高效和正确的使用ES
    如何更全面的了解集群的使用状况

  • 发现问题滞后,需防患于未然,避免集群崩溃

    节点当机—负载过高,导致节点失联
    副本丢失,导致数据可靠性受损
    集群压力过大,数据写入失败

  • 提升集群性能

    数据节点负载不均衡(避免单几点瓶颈)/优化分片,segment
    规范操作方式(利用别名/避免dynamic mapping引发过多字段,对索引的合理性进行管控)

集群Green并不意味着足够好

  • 绿色只是其中一项指标,显示分片是否都正常分配。
  • 监控指标多且分散—指标的含义不够明确直观
  • 问题分析定位的门槛较高—需具备专业知识

Elastic提供SupportdDiagnosticsTool
https://github.com/elastic/support-diagnostics

集群中索引的诊断

  • 索引的总数是否过大,分片个数是否合理,副本数尽量不要为0,主分片大小检测
  • 字段总数检测,是否存在字段过多的情况(dynamic mapping)
  • 单个节点的分片数是否过多,索引是否分配不均衡
  • 数据节点之间的负载偏差是否过大
  • 冷热数据分配是否正确(例如cold节点上的索引设置成只读)
  • 索引segment大小诊断分析

多维度构建诊断检测工具

  • 集群健康状态,是否有节点丢失
  • 索引合理性
  • 资源使用合理性

    cpu/内存/磁盘/负载使用情况分析

  • 业务操作合理性

    集群状态变更频率,是否在业务高峰期有频繁操作
    慢查询监控与分析

image.png