位置: 编程技术 - 正文
推荐整理分享shell脚本监控系统负载、CPU和内存使用情况(shell脚本监控进程),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:shell监控http脚本,shell监控脚本例子大全,shell监控http脚本,shell监控http脚本,shell监控文件,shell监控http脚本,shell监控脚本例子大全,使用shell脚本监控主机,内容如对您有帮助,希望把文章链接给更多的朋友!
在没有nagios监控软件的情况下,只要服务器能上互联网,就可通过发邮件的方式来提醒管理员系统负载与CPU占用的使用情况。
一、安装linux下面的一个邮件客户端msmtp软件(类似于一个foxmail的工具)
1、下载安装:
2、创建msmtp配置文件和日志文件(host为邮件域名,邮件用户名fuquanjun,密码fuquanjun)
3、mutt安装配置:(一般linux下有默认安装mutt)
如果没有安装,则使用yum安装
4、邮件发送测试(-s邮件标题,-a表加附件)出现下面报错信息:
发送信件出错,子进程已退出 ()。无法发送此信件。解决方法:
单独使用msmtp发送测试:/usr/local/msmtp/bin/msmtp -S 发现是配置文件没找到查看当前的配置文件路径:/usr/local/msmtp/bin/msmtp -P故将/usr/local/etc/msmtprc 复制为/root/.msmtprc查看一下mutt文件安装目录情况故将/etc/Muttrc 复制为/root/.muttrc即可发送邮件。
二、监控服务器系统负载情况:
1、用uptime命令查看当前负载情况(1分钟,5分钟,分钟平均负载情况)在苹果公司的Mac电脑上也适用
"load average"意思分别是1分钟、5分钟、分钟内系统的平均负荷。(1) 主要观察"分钟系统负荷",将它作为电脑正常运行的指标。(2) 如果分钟内,(系统负荷除以CPU核心数目之后的)平均负荷大于1.0,表明问题持续存在,不是暂时现象。(3) 当系统负荷持续大于0.7,你必须开始调查了,问题出在哪里,防止情况恶化。(4) 当系统负荷持续大于1.0,你必须动手寻找解决办法,把这个值降下来。(5) 当系统负荷达到5.0,就表明你的系统有很严重的问题,长时间没有响应,或者接近死机了。假设你的电脑只有1个CPU。如果你的电脑装了2个CPU,意味着电脑的处理能力翻了一倍,能够同时处理的进程数量也翻了一倍。2个CPU表明系统负荷可以达到2.0,此时每个CPU都达到%的工作量。推广开来,n个CPU的电脑,可接受的系统负荷最大为n.0。
2、查看服务器cpu的总核数3、截取服务器1分钟、5分钟、分钟的负载情况
4、查看截取分钟的平均负载
5、编写系统负载监控的脚本文件:
6、编写系统负载结果文件邮件发送脚本:
7、编写系统负载监控的脚本文件:
三、监控服务器系统cpu占用情况:
1、使用top命令查看linux系统cpu使用情况:2、查看截取空闲cpu的百分比数值命令(只取整数部分):3、编写cpu监控的脚本文件:
4、查看CPU监控的结果文件:5、编写cpu结果文件邮件发送脚本:
四、监控系统cpu的情况,当使用超过%的时候发告警邮件:
五、使用free命令监控系统内存:
1、使用free命令查看linux系统内存使用情况:(以M为单位)
2、查看截取剩余内存free的数值命令:
(1) 物理内存free值: # free -m | grep Mem | awk '{print $4}'(2) 缓冲区的free值: # free -m | grep - | awk '{print $4}'(3) Swap分区free值: # free -m | grep Swap | awk '{print $4}'
3、编写内存监控的脚本文件:4、查看内存监控的结果文件:5、编写free结果文件邮件发送脚本:
六、监控系统交换分区swap的情况,当使用超过%的时候发告警邮件:
七、加入任务计划:系统负载与CPU占用率每十分钟检测一次,有告警则立即发邮件(十分钟发一次),负载与CPU检测结果邮件每天早上8点发一次。
Shell脚本自动备份MySQL到FTP并定期清理过期备份 以前公司用的一个网上找的MySQL自动备份到FTP的Shell脚本,一直用着不错。但是问题就是随着备份文件的越来越多,不得不定期清理FTP上的老备份文件,
实时查看系统流量的Shell脚本分享 #!/bin/bashwhile["1"]doeth=$1RXpre=$(cat/proc/net/dev|grep$eth|tr:""|awk'{print$2}')TXpre=$(cat/proc/net/dev|grep$eth|tr:""|awk'{print$}')sleep1RXnext=$(cat/proc/net/dev|grep$eth|tr:""|awk'{print$2}
Shell脚本编写Nagios插件监控程序资源占用 一般情况下,我们只需要监控程序进程在没在就可以了。但是这次遭遇了这样的事,公司开发的程序,程序进程还在,但是死锁了。导致大范围的影响
标签: shell脚本监控进程
本文链接地址:https://www.jiuchutong.com/biancheng/379853.html 转载请保留说明!上一篇:Nginx和PHP-FPM的启动、重启、停止脚本分享(nginx与php)
下一篇:Shell脚本自动备份MySQL到FTP并定期清理过期备份(编写shell脚本,实现备份文件:每天18:00归档)
友情链接: 武汉网站建设