Centos6.5系统io卡顿解决办法

一台运行了200多天的CentOS6.5主机出现执行命令缓慢及数据库连接超时的问题。通过top命令观察到负载升高至10-15,iostat显示iowait高达70%,超过平时的30%。进一步检查发现多个进程处于D状态等待IO,特别是jbd2进程。根据线索,可能是ext4文件系统bug导致,通过重新挂载文件系统并设置barrier=0,commit=60等参数解决了问题,主机运行恢复正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有一台centos6.5主机运行了200多天后,执行命令相应特别慢,该主机上安装了一个数据库,应用程序连接本机数据都超时,用top查看主机进程,发现负载比较高,到达10~15,平时一般4以下,查看也没有消耗cpu特别多的进程。

然后用iostat -x 1 30 查看io负载,发现iowait最高达70%多,而平时一般在30%以内

查看哪些进程iowait比较高,D状态表示等待io

xxx%ps -eo pid,state | grep D
  PID S
 1123 D
 1569 D
 2843 D
13937 D
xxx%ps -ef|grep 1123
root      1123     2  0 May11 ?        00:20:40 [jbd2/dm-0-8]

发现jbd2这个进程一直被检索出来,百度查到

“ ext4文件系统出现过bug,bug原理大致是,文件的写和请求会导致其中一个int型的值不断增大,最后增大到超出了自身的范围 —— 变成负值 。就会触发该bug ,而想要达到该值并不容易,需要几个月后才会出现。”

具体参考帖子:https://www.codercto.com/a/47672.html

执行命令对目录重新挂载,将barrier设置为0解决问题

mount -t ext4 -o remount,rw,barrier=0,commit=60,noatime,nodiratime /dev/vda1  /

修改后查看/proc/mounts文件可以看到效果

上述命令执行后主机运行速度恢复正常。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值