shell--监控服务器资源占用情况

1.监控需求

监控服务器cpu使用率、内存使用率、磁盘占用率
监控异常报警,发送邮件提醒
1.磁盘占用率超过90%
2.CPU使用率超过80%
3.内存使用率超过90%
结合crond服务,计划每半小时执行脚本查看服务器情况

2.编写脚本

2.1配置邮件功能

yum -y install mailx
vi /etc/mail.rc

set from=邮箱账号(发送方)
set smtp=smtp.qq.com
set smtp-auth-suer=邮箱账号(发送方)
set smtp-auth-password=邮箱账号授权码
set smtp-auth=login
echo "使用率超额" | mail -s "硬盘报警" 邮箱账号(接收方)

2.2配置计划任务

crontab -e
分钟 时 日 月 星期 执行的命令(绝对路径) 【对象】

2.3提取性能监控指标

#磁盘占用率
disk=$(df -Th | grep "/$" | awk '{print $6}' | awk -F% '{print $1}')
#内存占用率
mem=$(expr $(free | grep "Mem:" | awk '{print $3}') \* 100  / $(free | grep "Mem:" | awk '{print $2}'))
#CPU使用率
cpu=$(expr 100 - $(mpstat | tail -1 | awk '{print $12}' | awk -F. '{print $1}'))

2.4监控报警

alert_file=/root/alert.txt
if [ $disk -ge 85 ]
then echo "磁盘占有率超过85%" >> $alert_file
fi
if [ $mem -ge 90 ]
then echo "内存占有率超过90%" >> $alert_file
fi
if [ $cpu -ge 90 ]
then echo "cpu占有率超过90%" >> $alert_file
fi
if [ -f $alert_file ]
then
cat $alert_file | mail -s "硬盘报警" 邮箱账号(接收方)
rm -rf $alert_file
fi
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值