网站频频告警故障排查实录

2023年 11月 30日 126.4k 0

 

故障描述

 

位于某Proxmox VE
超融合集群上的一个网站频频报警,表现的形式是一会儿服务不可用,一会儿又恢复(如下图所示),但同一集群上的其他Web
站点未发现异常。

 

可能的原因

 

1
)出口带宽占满。

2
)Proxmox VE
集群故障。

3
)负载均衡器故障。

4
)应用服务器故障。

5
)数据库故障。

 

故障定位

 

1
)通过查看IDC
出口带宽,使用率低于50%

2
)查看负载均衡器状态,转发正常。

3
)随机抽查其它域名的网站,访问正常。

 

以上三点排查,说明在整个集群层面不存在故障,问题应该是应用所在的虚拟机本身。由于出故障的主站,由四个虚拟机组成负载均衡集群,因此需要登录每一个虚拟机系统,进行排查和处理。

 

故障处理

 

登录到主站所在的所有虚拟机系统,查看系统日志,未发现异常,但PHP
慢日志里有很多信息值得怀疑,如下图所示。

 

不懂开发,先将这些信息截取部分,让人转发给异地的开发人员。几天过去了,还没有动静,但报警依旧,不能听之任之,继续排查。

 

登录到主站所在的虚拟机,执行指令“netstat -anp| grep -v unix
”查看网络状态,
从屏幕输出发现大量的“TIME_WAIT
”(如下图所示),记录下与之关联的IP
地址及端口,通过简单统计,得知IP
地址为“172.16.98.124
”,端口为“3306
”的系统,遗留的信息最多,由此判断,故障应该有数据库“172.16.98.124
”关系密切。

 

根据得出的信息,登录系统“172.16.98.121
”,执行命令“dmegs
”,从输出可知,磁盘分区“/dev/sdb1
”的文件系统有损坏(如下图所示),试着用命令“fsck -n /dev/sdb1
”检查一下。

 

因为系统上的MySQL
服务处于运行状态,分区”/dev/sdb1”
处于挂接状态,因此运行命令“fsck
”时必须加选项“-n
”,只检查不修复,避免丢失数据的风险。

 

在有问题的系统上,关闭MySQL
服务,卸载分区“/dev/sdb1
”,
正式执行”fsck -y /dev/sdb1”
进行文件系统修复。花费一些时间后,修复完成。挂接已经被修复的分区,然后启动MySQL
服务,网站服务也正常了。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论