首页 > 系统相关 >linux服务器CPU占用100%,宝塔负载100%情况问题排查处理记录(CentOS 8.1系统)

linux服务器CPU占用100%,宝塔负载100%情况问题排查处理记录(CentOS 8.1系统)

时间:2023-04-13 15:13:38浏览次数:39  
标签:8.1 CentOS 查看 IP 100% netstat php 占用

问题描述:linux服务器cpu占比达到100%,站点无法正常访问,宝塔面板进入后卡顿,负载显示也是持续100%(下方测试系统为CentOS 8.1)

排查可能:1.使用netstat命令查看目前的链接IP数,看是否有异常IP大量链接:

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n(查看显示所有连接IP及连接数量)

  2.看到上方如果有大量连接的IP,如外国的IP地址,我们可以在宝塔后台系统防火墙内屏蔽该外国IP段,屏蔽后查看资源占用情况是否有下降

 

 

 除宝塔外,也可以使用linux命令增加防火墙策略:

使用firewall-cmd --list-all命令查看现有的防火墙策略,如下图,红框内为刚刚添加的策略:

 

 禁止某个IP访问:

firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="77.75.79.54" drop'

 

 

 上图显示已设置成功。然后执行firewall-cmd --reload命令重新加载防火墙

 

 再查看防火墙列表,刚刚添加的规则已经存在。

 3.使用top命令查看占用资源较多的进程,发现php-fpm和mysqld占比较大,进入宝塔对应php版本,调整对应的并发数和最大空闲进程数

 

 

2核4G的配置笔者调整为上述的配置,也可以安装下面的扩展

 

 

 

安装完毕后重启php,观察一段时间看资源占用情况是否有改善,mysqld的优化可点击对应的优化推荐进行设置优化,设置完毕后保存,重启mysql。

 

 

 

以上php和mysql设置完毕后,观察资源占比情况是否有改善。

 

4.查看所有网络连接,观察是否有异常。(可配合本篇第一条分析使用)

 

netstat -a 查看所有连接

 

netstat -n 以数字形式显示ip地址和端口号

 

netstat -na 以数字形式显示所有ip地址和端口号

 

netstat -a -o 显示所有端口号与进程的对应关系

 

 

 

  需要留意最后的状态情况进行分析。

6.设置完毕后可重启服务器,查看资源占用情况,如果资源占比还是接近100%,top命令查看有无异常的进程,通过kill 进程号命令终止异常进程,同时注意观察资源占比情况变化。

7.查看php慢日志和mysql慢日志,分析站点程序结构和错误,找出大量占用资源的原因进行优化。

标签:8.1,CentOS,查看,IP,100%,netstat,php,占用
From: https://www.cnblogs.com/herewang/p/17312319.html

相关文章

  • Centos上卸载MySQL8.0
    1、查看当前mysql安装状况rpm-qa|grepmysql#或yumlistinstall|grepmysql2、查看mysql的服务是否启动systemctlstatusmysqld2.1、如果启动则关闭mysql服务systemctlstopmysqld.service#service可加可不加#停止MySQL的服务[root@chenstudy~]\#......
  • centos下安装python3详细教程
    centos7自带有python,版本是python2.7接下来我们手动安装python3,并且配置后可以并存使用。1.首先,你要知道系统现在的python的位置在哪儿:[root@root~]#whereispythonpython:/usr/bin/python2.7/usr/bin/python/usr/lib/python2.7/usr/lib64/python2.7/etc/python/usr......
  • 如何用Golang处理每分钟100万个请求
    用Golang处理每分钟100万个请求转载请注明来源:https://janrs.com/9yaq面临的问题在我设计一个分析系统中,我们公司的目标是能够处理来自数百万个端点的大量POST请求。web网络处理程序将收到一个JSON文档,其中可能包含许多有效载荷的集合,需要写入AmazonS3,以便我们的地图还原系统随后......
  • CentOS安装Docker、Docker-Compose
    一、安装Docker二、安装Docker-Compose2.1sudocurl-L"https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-$(uname-s)-$(uname-m)"-o/usr/local/bin/docker-compose2.2安装完后执行:sudochmod+x/usr/local/bin/docker-compose......
  • CentOS系统使用docker-compose安装Doris数据库
    doris当前最新版本为1.2.31、docker与docker-compose安装    docker安装:CentOS安装Docker   docker-compose安装:docker-compose安装与使用2、doris相关下载   1)doris-be、doris-fe2) 3、修改vi/etc/security/limits.conf添加如下信息:*softnofile65......
  • Ubuntu和Centos设备出厂后添加给普通用户docker权限
    Ubuntu#查看用户组group#将当前普通用户加入docker用户组,执行命令:sudousermod-aGdocker{用户账号}#如果提示Usingdefaulttag:latestGotpermissiondeniedwhiletryingtoconnecttotheDockerdaemonsocketatunix:///var/run/docker.sock:Post"http://%2F......
  • centos安装MySQL8记录
    1.卸载mariadb因centos7默认安装了mariadb,会造成依赖冲突,按下列方式进行卸载:rpm-qa|grepmariadb#如果出现mariadb-libs-5.5.68-1.el7.x86_64#执行rpm-emariadb-libs--nodeps2.下载  注意权限:(chmod-R777/var/lib/mysql)(chmod-R777/var......
  • 在线安装gfortran的方法-CentOS8 or 阿里龙蜥
    在线安装gfortran的方法-CentOS8or阿里龙蜥背景在阿里云上面进行了speccpu2006的测试验证但是发现总是很多包安装不过去原因是阿里最小化安装的龙蜥系统.缺少很多编译工具.昨天晚上死活跑步过去发现是因为缺少部分编译工具gfortran报错信息specmake:g++:Command......
  • Centos使用经验
    安装最小的镜像文件http://mirrors.163.com/centos/6/isos/x86_64/CentOS-6.10-x86_64-minimal.iso 此映像的目的是安装一个非常基本的CentOS6.10系统,并使用具有功能性系统所需的最少软件包。请将此映像刻录到CD上,然后从计算机启动计算机。一组预选的软件包将安装在您的系统上......
  • centos上docker命令
    1.启动dockersystemctlstartdocker2.查看docker下容器列表dockerps-aCONTAINERID是容器id3.运行dokcer内的容器dockerstartxxx(容器id)4.进入容器内操作dockerexec-itxxx(容器id)5.docker文件传输(1)本地往docker内传输:dockercpmain.js(本地文件)f49214465f2e:/......