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

【待反馈】如何利用计划任务实现自动判断负载超过90%后...

发表在 Linux面板2024-7-21 16:46 [复制链接] 1 355

为了能快速了解并处理您的问题,请提供以下基础信息:试过创建一个脚本后定时检测后执行,但是故意将阈值调到2%测试 依然提示正常范围

#!/bin/bash  

# 获取1分钟的平均负载  
load=$(uptime | awk -F'load average: ' '{print $2}' | cut -d'.' -f1)  

# 如果负载超过90(注意:这里90在实际环境中非常罕见,通常应该是1.0或类似的数字)  
if [ "$load" -gt 90 ]; then  
    echo "系统负载过高,禁用80和443端口"  
    iptables -I INPUT -p tcp --dport 80 -j DROP  
    iptables -I INPUT -p tcp --dport 443 -j DROP  
else  
    echo "系统负载正常,启用80和443端口"  
    # 假设之前没有其他规则阻止80和443端口,这里只是移除我们添加的DROP规则  
    iptables -D INPUT -p tcp --dport 80 -j DROP  
    iptables -D INPUT -p tcp --dport 443 -j DROP  
fi  

# 保存iptables规则(如果系统重启后需要保持这些规则)  
service iptables save  # 注意:命令可能因发行版而异,如systemctl reload firewalld

使用道具 举报 只看该作者 回复
发表于 2024-7-22 09:39:43 | 显示全部楼层
您好,您这是判断负载满超过90%就会关闭端口的一个情况,但是有时候的负载不仅仅是nginx导致的,也有可能是php或者是mysql
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

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

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

紧急运维服务

响应时间:3分钟

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

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

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

立即付费处理

工作时间:09:00至24:00

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