单机版MongoDB的Zabbix监控

最近公司新上了几个mongodb的项目(单机版MongoDB),需要坐下监控。之前有一个监控模板,但是效果不好。于是重新去google了一把,有了如下记录。

单机版的参考相关文档可以到Linux公社资源站下载:

------------------------------------------分割线------------------------------------------

免费下载地址在

用户名与密码都是

具体下载目录在 /2017年资料/4月/11日/单机版MongoDB的Zabbix监控/

下载方法见

------------------------------------------分割线------------------------------------------

实验环境:
CentOS6.8 X86_64
Percona-server-mongodb-3.2.9

步骤:
1、将mongodb.sh这个脚本拷贝到/etc/zabbix/scripts下,修改下适合自己的环境
(我们线上mongodb没有设置密码,脚本里面也注释掉了相关代码),并chmod加执行权限
#!/bin/bash
##################################################
#AUTHOR: Neo <netkiller@msn.com>
#WEBSITE:
#Description£ozabbix mongodb monitor
#Note£oZabbix 3.2
#DateTime: 2016-11-23
##################################################

# 我这里线上环境的mongodb没有配置密码,只是通过iptables限制访问的IP
HOST=localhost
PORT=27017
#USER=monitor
#PASS=chen
 
index=$(echo$@ | tr " " ".")
 
#status=$(echo"db.serverStatus().${index}" |mongo -u ${USER} -p ${PASS} admin--port ${PORT}|sed -n '3p')
status=$(echo"db.serverStatus().${index}" |/usr/local/mongodb/bin/mongo admin--port ${PORT}|sed -n '3p')
 
#checkif the output contains "NumberLong"
if[[ "$status" =~ "NumberLong"  ]];then
    echo $status|sed -n 's/NumberLong(//p'|sed-n 's/)//p'
else
    echo $status
fi
 
2、将userparameter_mongodb.conf拷贝到/etc/zabbix/zabbix_agentd.d下,具体内容如下:
UserParameter=mongodb.status[*],/etc/zabbix/scripts/mongodb.sh$1 $2 $3 $4 $5
 
 
3、在zabbix的web后台导入监控模板,并将mongodb主机和模板做关联。

附件为上面提到的3个文件打包。

配好的监控如下图:

单机版MongoDB的Zabbix监控

单机版MongoDB的Zabbix监控

单机版MongoDB的Zabbix监控

复制集版本的MongoDB的监控模板在试验中,没问题后再贴出来。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/a7aa54523464e4b2f85d3f75108b70ae.html