zabbix使用自定义脚本监控内存

我这里的脚本是监控centos7系统的内存。centos7系统的内存如何查看我之前的博客都是有的。这里直接写了监控步骤

1、首先是编写脚本。

#!/bin/bash
mem_total(){
    TOTAL=`free |grep -i mem |awk '{print $2}'`
    echo ${TOTAL}
}
mem_use(){
    USE=`free  |grep -i mem | awk '{print $3}'`
    echo ${USE}
}
mem_free(){
    FREE=`free  |grep -i mem |awk '{print $4}'`
    echo ${FREE}
}
mem_available(){
    USAGE=`free  |grep -i mem | awk '{print  $7}'`
    echo ${USAGE}
}

main(){
    case $1 in
        mem_total)
           mem_total;
           ;;
        mem_use)
            mem_use;
            ;;
        mem_free)
            mem_free;
            ;;
        mem_available)
            mem_available;
            ;;
    esac
}
main $1

2、在配置文件中进行配置

3、在server端使用zabbix_get进行测试

4、在zabbix界面开始添加监控项

首先添加第一项:

 

然后添加第二项

 然后添加第三项

最后添加第四项

5、添加完成后,返回到items的界面,查看一下是否真的可用

看来成功了。

6、最后我们添加graph

首先是新建graph,接下来开始填写数据

 

这样就行了。

7、现在我们查看一下监控结果如何。

看来监控的还不错。

8、最后总结一个问题:

单位问题:items里面的监控项都是带单位的,如果带B或bps单位的话,zabbix内部会进行自动转换,即除以1024。否则超过1000的值除以1000,然后带上K,这样子你会发现zabbix展示的值往往过大。所以对于监控磁盘IO,网络或者内存,最好让zabbix内部数值转换除以1024是最好了。

原文地址:https://www.cnblogs.com/FengGeBlog/p/10369519.html