记一次因inode满载导致的web访问卡顿事件

操作系统:CentOS 7.2

web环境:2台apache+4台tomcat,apache负载均衡+反向代理。apache前端有array硬件负载均衡设备,与tomcat通过内网通讯

起因:

1、基于政务外网的某网站,连续两日出现网站偶尔访问卡顿,卡顿不是必出,随机出现。卡顿内容表现为网站访问加载时长从10s~100s。最开始直接通过内网设备访问流畅,遂怀疑网络故障。后又发现几个朋友都是好的,接着怀疑政务网络故障,最后经多方核实发现不是。问题无法定位

2、从zabbix监控发现,apache1设备的CPU使用率暴涨,怀疑有关联性,但始终没有定位

3、突然想起前天开始收到报警短信,提示apache1的disk inode可利用率已不足5%、2%直到100%。当时没有仔细查看,以为disk inode是磁盘,当时在设备上使用df -h发现空间正常,以为是误报。于是赶紧google搜索,发现inode查看指令为df -i,顿时查看傻眼——可使用率以为 0%

4、紧急查看前运维留下资料,发现确有inode解决这条,赶紧按照执行,至此,问题解决

汇总:由于inode的磁盘区间占满,导致即使还有空间也无法写入数据(理解为,即使书本后面还有空间可以写故事,但是最初排版的目录已写满,所以后面的故事也会因无法新增目录而无法写了)

关于inode的内容,这里有详解,不再过多转载解释。http://www.ruanyifeng.com/blog/2011/12/inode.html

故障复盘

1、对于zabbix的报警,过于轻视,没有认真查看,否则问题可以提早解决。这点和inode的认知没有任何关系

2、内网访问良好,是因为内网设备绕过apache反向代理,直接访问了tomcat服务,此处说明测试方法不足

3、访问时好时坏也只是看人品,访问的apache1设备,就会卡顿,访问到apache2设备,就会流畅。这也就是为什么有的人会好,有的人有问题

总结:出现问题不可怕,可怕的是不敢面对问题。躺过的坑,记住就好!

猜你喜欢

转载自www.cnblogs.com/rui0513/p/11204357.html