资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

nagios中mfs如何监控脚本-创新互联

小编给大家分享一下nagios中mfs如何监控脚本,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、网页空间、营销软件、网站建设、尖山网站维护、网站推广。

最近一直在测试mfs,最后在线上测试完毕后,开始整理监控mfs,

mfs监控指标

  1. 监听端口

  2. 监听进程

  3. 监听vip

  4. 监听读写

现在附监控进程是否存活shell脚本,仅供参考

root@loocha4:/usr/local/nagios/libexec/New# cat check_mfs.sh 
#!/bin/bash
# ===========================================================================================================
#
# MFS status check plugins for nagios
#
# Written by    : caimengzhi
# Release       : 1.0
# Create Date   : 2017-01-12
# Description   : Nagios plugins (script) to check MFS status 
#
# ===========================================================================================================
# Nagios return codes
STATE_OK=0
STATE_WARNING=1
STATE_CRITICAL=2
STATE_UNKNOWN=3
status=0

#Get Master server Process
Master(){
    MFS_PID=$(ps -ef | grep -v grep | grep mfsmaster | wc -l)
    if [ ${MFS_PID} -eq  0 ];then
        echo "ERROR : mfs master does not start"
        exit $STATE_CRITICAL
    else 
        echo "OK : mfs master server running OK!"
        exit $STATE_OK
    fi
}

#Get chunker server Process
Chunker(){
    MFS_PID=$(ps -ef | grep -v grep | grep mfschunkserver | wc -l)
    
    if [ ${MFS_PID} -eq 0 ];then
        echo "ERROR : mfs chunkserver does not start"
        exit $STATE_CRITICAL
    else
        echo "OK : mfs master chunkserver running OK!"
        exit $STATE_OK
    fi
}

Disk_used(){
    Disk_used=`df -h | grep ${mountpoint} |awk '{print $4}'`
    
    if [ ${Disk_used%/%} -ge ${warningdiskused} -a ${Disk_used%/%} -lt ${criticaldiskused}  ];then
        echo "Waring :mfs disk used Rate is "${Disk_used}""
        exit $STATE_WARNING
    elif [ ${Disk_used%/%} -ge ${criticaldiskused} ];then
        echo "CRITICAL :mfs disk used Rate is "${Disk_used}""
        exit $STATE_CRITICAL
    elif [ "${Disk_used%/%}" = "" ];then
        echo "CRITICAL :mfs client not mount on"
        exit $STATE_CRITICAL
    else 
        echo "OK : MFS client mount on and disk used rate is "${Disk_used}" , Everything is OK!"
        exit $STATE_OK
    fi
}

#Get metalogger server Process
Metalogger(){
    MFS_PID=$(ps -ef | grep -v grep | grep mfsmetalogger | wc -l)
    
    if [ ${MFS_PID} -eq 0 ];then
        echo "ERROR : mfs mfsmetalogger does not start"
        exit $STATE_CRITICAL
    else
        echo "OK : mfs master mfsmetalogger running OK!"
        exit $STATE_OK
    fi
}

# Functions plugin usage
print_usage()
{
    echo ""
    echo " -M MFS master server  status "
    echo " -C MFS chunker server status "
    echo " -U MFS client disk used Rate "
    echo " -L MFS metalogger server status "
    echo " -h  Show this page "
    echo ""
    echo " Usage1 : sh check_mfs.sh -M mfsmasterpath"
    echo "     ex : sh check_mfs.sh -M /usr/sbin/mfs"
    echo " Usage2 : sh check_mfs.sh -C mfschunkpath"
    echo "     ex : sh check_mfs.sh -C /usr/sbin/mfs"
    echo " Usage3 : sh check_mfs.sh -U mountpoint warningrate criticalrate"
    echo "     ex : sh check_mfs.sh -U /mnt/mfs 60 80"
    echo " Usage4 : sh check_mfs.sh -L mfsmetaloggerpath"
    echo "     ex : sh check_mfs.sh -L /usr/sbin/mfs"
    echo "     ex : sh check_mfs.sh -h"
    echo ""
    exit 0
}

if [ $# -ne 1 ]; then
        echo "Pls input sh  $0 -h and check."
        print_usage
        exit 1;
fi

# Parse parameter
while [ $# -gt 0 ]
do
    case "$1" in 
      -H | -h | --help)
         print_usage
         exit $STATE_OK
         ;;
      -M | -m | --master)
         Master
         ;;
      -C | -c | --chunker)
         Chunker
         ;;
      -U | -u | --usedwarning)
         mountpoint=${2:-"/mnt/mfs"}
         warningdiskused=${3:-"75"}
         criticaldiskused=${4:-"85"}
         Disk_used
         ;;
      -L | -l | --metalogger)
         Metalogger
         ;;
      *)   
         echo "Unknown argement: $1"
         print_usage
         exit $STATE_UNKNOWN
         ;;
    esac
shift
done
exit 0

以下是测试效果

root@loocha4:/usr/local/nagios/libexec/New# ps aux|grep mfs
root      1148  0.0  0.0   8112   936 pts/0    S+   13:29   0:00 grep --color=auto mfs
mfs       6021  1.2  0.3 455572 204124 ?       S

以上是“nagios中mfs如何监控脚本”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:nagios中mfs如何监控脚本-创新互联
分享URL:http://cdkjz.cn/article/ddigpj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220