TiKV Server OOM 对业务的影响
- TiKV 上的请求失败造成异常退出
- region leader重新选举
- raft group 开始选举新的 region leader
- 新的region leader 上报信息给PD Server
- region cache频繁更新
- 在访问TiDB Server的region cache时,出现TiKV rpc相关报错
- 后台自动进行Backoff 重试
- PD 将最新的Region Leader信息返回给TiDB Server的Region Cache
TiKV Server OOM的诊断方法
-
日志
- dmesg -T | grep tikv-server 结果中有事故发生附近时间点的OOM-killer的日志
- TiKV.log(事故发生后附近时间的"Welcome to TiKV",即TiKV发生了重启)
-
Grafana监控
- TiKV - Details - Cluster -Memory
- TiKV - Details - Cluster -Memory
造成TiKV Server OOM的原因
- block-cache 配置不当导致OOM
- Coprocessor 收到大量大查询,返回的数据量太大,gRPC的发送速度跟不上Coprocessor往外输出数据的速度,导致OOM
- 其他进程占用太多内存
查看block-cache参数配置
调整block-cache 参数配置
- 在线调整
set config tikv storage.block-cache.capacity='8155MB';
- 确认调整是否生效
gRPC的发送速度跟不上Coprocessor的处理速度
- SQL优化
- 网卡配置升级
其他原因
-
Raftstore 数据写入环节内存占用高
-
目标服务器混不了其他组件且内存占用高