CVM load average 跑高问题(很有趣)

2021-10-27 10:58:24 浏览数 (1)

问题场景:机器有些问题,业务访问正常,但cpu使用率这么低,负载这么高,我的乖乖几个亿的负载,跑到银河系了

不懂就百度:

  1. load average 过高可能和睡眠进程有关系 ,引导客户执行脚本截图

https://blog.csdn.net/qq_32352565/article/details/92185912

执行脚本

#!/bin/bash

LANG=C

PATH=/sbin:/usr/sbin:/bin:/usr/bin

interval=10

length=86400

for i in $(seq 1 $(expr ${length} / ${interval}));do

date

LANG=C ps -eTo stat,pid,tid,ppid,comm --no-header | sed -e 's/^ *//' | perl -nE 'chomp;say if (m!^S*[RD] s*!)'

date

cat /proc/loadavg

echo -e "n"

sleep ${interval}

done

执行结果来看没有D 睡眠进程

再次百度并请教专家核实:发现是老旧内核的一个BUG (开心)

# running 进程数量

#awk '/.nr_running/ {c = $3} END{print c}' /proc/sched_debug

# uninterruptible 进程数量

#awk '/.nr_uninterruptible/ {c = $3} END {print c}' /proc/sched_debug

解决办法

内核升级方法:

1. 对机器做好快照

2. uname -r查看当前内核版本,客户报障机器当前为3.10.0-327.el7.x86_64

uname -r

3.10.0-327.el7.x86_64

3. 升级内核

yum update kernel -y

4. 升级完需要reboot重启机器生效新的内核

5. 重启后执行uname -r查看新版本内核是否已经在机器上生效:

当前centos7最新内核版本为:

3.10.0-1160.31.1.el7

0 人点赞