• 监控Linux的磁盘、内存、CPU


    1,安装 mailx

    [root@node-1 opt]# yum install mailx

    2,编辑配置文件

    [root@node-1 opt]# vim /etc/mail.rc #添加如下内容

    set from=xxxx@163.com

    set smtp=smtp.163.com

    set smtp-auth-user=xx@163.com

    set smtp-auth-password=xxx

    set smtp-auth=login

    ---说明 建议用163邮箱 因为qq邮箱 smtp会有各种问题

    from:对方收到邮件时显示的发件人

    smtp:指定第三方发邮件的smtp服务器地址

    set smtp-auth-user:第三方发邮件的用户名

    set smtp-auth-password:用户名对应的密码,有些邮箱填的是授权码

    smtp-auth:SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式

    3,编写 检测和运行脚本 monitor.sh

    #!/bin/bash 
    #获取cpu使用率 
    cpuUsage=`top -n 1 | awk -F '[ %]+' 'NR==3 {print $2}'` 
    #获取磁盘使用率 
    data_name="/dev/vda1" 
    diskUsage=`df -h | grep $data_name | awk -F '[ %]+' '{print $5}'` 
    logFile=/tmp/monitor.log 
    #获取内存情况 
    mem_total=`free -m | awk -F '[ :]+' 'NR==2{print $2}'` 
    mem_used=`free -m | awk -F '[ :]+' 'NR==3{print $3}'` 
    #统计内存使用率 
    mem_used_persent=`awk 'BEGIN{printf "%.0f
    ",('$mem_used'/'$mem_total')*100}'` 
    #获取报警时间 
    now_time=`date '+%F %T'` 
    function send_mail(){ 
            mail -s "监控报警" xxxx@qq.com < /tmp/monitor.log 
    } 
    function check(){ 
            if [[ "$cpuUsage" > 80 ]] || [[ "$diskUsage" > 80 ]] || [[ "$mem_used_persent" > 80 ]];then 
                    echo "报警时间:${now_time}" > $logFile 
                    echo "CPU使用率:${cpuUsage}% --> 磁盘使用率:${diskUsage}% --> 内存使用率:${mem_used_persent}%" >> $logFile 
                    send_mail 
            fi 
    } 
    function main(){ 
            check 
    } 
    main 
    
    

    4,运行脚本

    [root@node-1 opt]# sh monitor.sh

    检查是否收到邮件

    5、最后,可以设置一个cron计划任务,让该脚本每隔半小时运行一次

    [root@node-1 opt]# crontab -e

    在cron里添加下面一行即可

    */30 * * * * /opt/monitor.sh
    
  • 相关阅读:
    IOS 自动布局-UIStackPanel和UIGridPanel(三)
    IOS 自动布局-UIStackPanel和UIGridPanel(二)
    IOS 自动布局-UIStackPanel和UIGridPanel(一)
    我的新博客
    Topcoder SRM655 DIV1 500 Nine
    BestCoder Round #38 1002 Greatest Greatest Common Divisor 筛法
    BestCoder Round #38 1001 Four Inages Strategy 暴力
    Google Code Jam 2015 Round 1A Haircut 二分
    Google Code Jam 2015 Round 1A Mushroom Monster 水
    Topcoder SRM656 DIV1 250 RandomPancakeStack 概率DP
  • 原文地址:https://www.cnblogs.com/liuliu3/p/11001727.html
Copyright © 2020-2023  润新知