当前位置:论坛首页 > Linux面板 > 求助

【待反馈】接近凌晨cpu占用超高导致centos8死机

发表在 Linux面板2021-9-14 10:29 [复制链接] 6 2813

问题出现时间:11日升级宝塔后出现,一般在半夜,不过昨天下午也死机过;
服务器配置:centos8.4.2105,py3.79,添加了每天自动更新任务(该任务添加超过1年了),4核8G5兆腾讯服务器,普通硬盘50+700G,cpu是至强8255c。php版本5.6,mysql版本5.7,nginx版本1.19.8.

问题描述:腾讯服务器报警信息是cpu和内存占用爆满,在宝塔监控下看资源占用可以明显看到昨晚10点25到今早上重启时cpu资源占用100%,系统卡死,无法进入ssh,只能强制重启服务器,但重启后无法确定是哪个进程出问题了。
在php日志下发现了大量日志,基本上都是显示php进程不断的启动,其中多条(基本上从12日到现在每小时都有)显示php fpm启动失败;
宝塔安全日志中显示:昨天下午2点06分清空日志后,在下午4点过、5点过、8点过、12点过、2、4、6、9点过都有这个日志:php守护程序    检测到PHP-56处理异常,已自动修复;
nginx免费防火墙模块显示昨天上午11点过拦截到两次get渗透,其中一个ip是我的,对应网址是同一个zip附件,该文件是正常文件,应该是误报;
nginx日志是空的,没有错误日志;
mysql在今天凌晨0:48显示一条错误日志:Got an error reading communication packets,应该此时服务器已经卡死,导致连接数据库失败;
开机运行了1小时左右,php进程非常多,一个进程占用3%左右cpu,初步怀疑是php进程数太多造成cpu占用爆满。
FPM配置文件(PHP和fpm配置并未修改过):
  1. [global]
  2. pid = /www/server/php/56/var/run/php-fpm.pid
  3. error_log = /www/server/php/56/var/log/php-fpm.log
  4. log_level = notice

  5. [www]
  6. listen = /tmp/php-cgi-56.sock
  7. listen.backlog = 8192
  8. listen.allowed_clients = 127.0.0.1
  9. listen.owner = www
  10. listen.group = www
  11. listen.mode = 0666
  12. user = www
  13. group = www
  14. pm = dynamic
  15. pm.status_path = /phpfpm_56_status
  16. pm.max_children = 60
  17. pm.start_servers = 10
  18. pm.min_spare_servers = 10
  19. pm.max_spare_servers = 30
  20. request_terminate_timeout = 100
  21. request_slowlog_timeout = 30
  22. slowlog = var/log/slow.log
复制代码
最新进展:初步锁定php问题,开机1小时,php进程达到26个,phpfpm进程达到13个,仔细检查了php配置,貌似也没问题,而且这个配置也有至少半年没动过了,想问问接下来怎么解决啊,只能重装php吗

使用道具 举报 只看该作者 回复
发表于 2021-9-14 11:42:21 | 显示全部楼层
您好,凌晨时有执行过PHP这类的计划任务嘛?建议您根据网站日志以及PHP的慢日志排查分析
使用道具 举报 回复 支持 反对
发表于 2021-9-14 19:22:52 | 显示全部楼层
谢花郎 发表于 2021-9-14 11:42
您好,凌晨时有执行过PHP这类的计划任务嘛?建议您根据网站日志以及PHP的慢日志排查分析 ...

没有啊,已经重装了php5.6,恢复正常,不过一直无法通过网站上传视频,刚刚又各种排查,结果发现nginx防火墙拦截了20次get,关闭防火墙马上就好了,都不知道该咋查了,防火墙开启也有很长一段时间了,网页上传组件的代码也没问题,不知道为啥会被判成攻击,以前上传都没有这样的情况
使用道具 举报 回复 支持 反对
发表于 2021-9-14 20:00:18 | 显示全部楼层
hxedu 发表于 2021-9-14 19:22
没有啊,已经重装了php5.6,恢复正常,不过一直无法通过网站上传视频,刚刚又各种排查,结果发现nginx防 ...

您好,php的问题具体还是需要分析网站日志和php慢日志来看,建议再次出现问题后看一下这些日志

另外,nginx免费防火墙是第三方开发者维护的,如果有问题的话可以联系一下开发者处理。不过既然会拦截应该是有违规参数然后被识别到了就拦截了,可以点误报
使用道具 举报 回复 支持 反对
发表于 2021-9-14 22:53:01 | 显示全部楼层
堡塔安全赤井秀一 发表于 2021-9-14 20:00
您好,php的问题具体还是需要分析网站日志和php慢日志来看,建议再次出现问题后看一下这些日志

另外,ng ...

php慢日志是空的。另外重装后发现一个问题,网站需要一个php插件(监控视频上传的),但是装上插件后,因为php -i|grep "Loaded Configuration File"调用配置失败,返回Loaded Configuration File => (none),导致网站无法执行视频切片任务,重装多次都无法解决,不知道有办法没
使用道具 举报 回复 支持 反对
发表于 2021-9-14 23:21:57 | 显示全部楼层
恢复了重装php以前的快照(今天凌晨的),卸载掉nginx防火墙,一切正常了,看来是前两天手动升级防火墙的锅,试过加入白名单,但防火墙貌似就卡住了
使用道具 举报 回复 支持 反对
发表于 2021-9-14 23:26:31 | 显示全部楼层
hxedu 发表于 2021-9-14 22:53
php慢日志是空的。另外重装后发现一个问题,网站需要一个php插件(监控视频上传的),但是装上插件后,因 ...

可能路径没设置对,之前是不是手动指定过其他路径的

看你后面说nginx防火墙可能配置问题,如果防火墙拦截会有日志,你看看有无
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析

工作时间:09:00至18:30

快速回复 返回顶部 返回列表