上一篇 下一篇 分享链接 返回 返回顶部

1Panel面板CPU过高排查指南

发布人: 发布时间:1小时前 阅读量:0

问题现象

1Panel面板服务器出现CPU占用持续飙升,导致面板响应迟缓甚至无法登录,同时影响网站及业务正常运行。运维人员需快速定位占用CPU的进程并予以优化。

初步排查:使用系统监控工具

通过SSH登录服务器,执行以下命令查看当前CPU占用排行:

  • tophtop(推荐安装)
  • P 键按CPU使用率排序

记录占用CPU最高的进程PID及其命令名称。若进程名中包含 1panelphp-fpmmysqlnginx 等,则重点关注。

定位1Panel相关进程

使用过滤命令缩小范围:

ps aux | grep -E '1panel|php|mysql|nginx' | sort -k3 -rn | head -20

1Panel自身服务主要包括:panel-server(主服务)、panel-monitor(监控服务)及依赖的Web服务(Nginx/Apache)、PHP、数据库等。

常见高占用进程及排查方向

1. PHP-FPM 进程

若大量 php-fpm 进程占用CPU,通常是并发请求过多或PHP脚本执行效率低。

  • 执行 systemctl status php-fpm 查看子进程数
  • 检查 php-fpm慢日志(默认路径:/var/log/php-fpm/slow.log),定位耗时的PHP脚本
  • 查看1Panel面板任务日志(/var/log/1panel/),确认是否存在定时任务异常占用

2. MySQL/MariaDB 进程

数据库查询频繁或慢查询会导致CPU高。

  • 进入MySQL执行 SHOW FULL PROCESSLIST; 查看当前连接
  • 开启慢查询日志:SET GLOBAL slow_query_log = ON; 并分析/var/lib/mysql/slow.log
  • 优化索引或升级数据库配置

3. Nginx 或 OpenResty

高并发请求或恶意攻击可导致CPU飙升。

  • 使用 netstat -an | grep :80 | wc -l 粗略查看连接数
  • 检查Nginx错误日志(/var/log/nginx/error.log)是否出现大量资源不足警告
  • 启用 limit_reqWAF 防御攻击

4. 1Panel 自身服务

panel-serverpanel-monitor 进程CPU高,可能因日志轮转异常、数据采集频繁或面板版本Bug。

  • 执行 journalctl -u panel-server -f 查看实时日志
  • 检查 /opt/1panel/logs/ 下日志文件大小,如过大则备份后清空
  • 尝试重启1Panel服务systemctl restart 1panel

优化建议汇总

  1. 调整PHP-FPM池配置:降低 pm.max_childrenpm.max_requests 值,开启OPcache。
  2. 数据库优化:定期分析表、优化索引、设置合理连接数(max_connections)。
  3. 启用缓存:为1Panel面板安装Redis或Memcached,减少数据库压力。
  4. 升级面板版本:前往1Panel官网查看最新版本,修复已知CPU占用Bug。
  5. 设置监控告警:利用1Panel内置监控或第三方工具(如Prometheus),当CPU超过阈值时自动通知。

总结

排查1Panel面板CPU过高需从进程、服务日志、配置三个维度入手,优先排除PHP和数据库异常。定期维护面板依赖环境并保持版本更新,可有效降低CPU占用风险。

目录结构
全文
企业微信 企业微信
微信公众号 微信公众号
服务热线: 400-790-1688
电子邮箱: 3310008520@qq.com