美文网首页
2022年度生产问题回顾

2022年度生产问题回顾

作者: JustinZhang_ | 来源:发表于2023-01-12 10:57 被阅读0次

Zookeeper fsync超时

问题简述

  • ZK leader节点与follower节点之间fsync同步动作耗时过久,导致心跳超时,集群重新选举,与客户端连接断开,进而影响客户端业务逻辑

问题根源

  • 根源可能在磁盘、网络、内存等的突发情况,不容易排查

问题规避

  • 调整ZK参数,避免fsync耗时过久
  • 主要为以下参数
# ZK自己的基准时间单位,以ms为单位
tickTime=3000
# 主从初始化允许的超时时间
initLimit=10
# 主从同步允许的超时时间
syncLimit=5
# 以KB为单位
preAllocSize=32768

InfluxDB iowait飚高

问题简述

  • 对InfluxDB的查询以及表的删除动作均会导致服务器CPU iowait指标飚高,大量读请求影响了写请求

问题根源

  • InfluxDB不加where条件的查询,哪怕按时间排序加limit限制,性能也可能很差,因为会遍历所有数据分片
  • InfluxDB删除表的动作,相当于遍历所有数据分片

问题解决

  • InfluxDB最好不要删除数据,如有需要也是通过过期策略清理历史数据,当某张表数据空时,InfluxDB会自行删除此表
  • 查询语句性能做好评估
explain select * from "";
explain analyze select * from;

ElasticSearch 磁盘占用不均

问题简述

  • ElasticSearch集群五个节点,其中一个节点的磁盘占用率相较其它节点要高

问题根源

  • ElasticSearch分配分片,不看节点的磁盘使用率,而是看节点的分片数
  • 某些节点的分片数大,但单个分片的磁盘占用小,所以导致不均

问题解决

  • 将分片数与节点数调整为一致
  • 根据实际情况清理一些索引
  • 调整ES集群参数,水位线,此种方式也存在一些问题,强制不允许往某个节点写入数据会导致客户端报错
PUT _cluster/settings
{
   "persistent":{
      "cluster.routing.allocation.disk.watermark.high":"75%",
      "cluster.routing.allocation.disk.watermark.low":"70%"
    }
}

相关文章

网友评论

      本文标题:2022年度生产问题回顾

      本文链接:https://www.haomeiwen.com/subject/onzicdtx.html