怎么使用Zabbix的自动发现来监控mongo数据库

75次阅读
没有评论

共计 1846 个字符,预计需要花费 5 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要为大家展示了“怎么使用 Zabbix 的自动发现来监控 mongo 数据库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让丸趣 TV 小编带领大家一起研究并学习一下“怎么使用 Zabbix 的自动发现来监控 mongo 数据库”这篇文章吧。

监控 mongo 写个模板其实挺快的,如果公司每个 mongo 使用的端口都一致的话,就可直接建立一套模板,然后这个模板链接到各个服务器上即可。但如果公司使用 mongo 的端口如果不一致的话,那建议使用 zabbix 的自动发现的功能,自动发现 mongo 监听的端口,并对它进行相关数据的收集。

先看一下效果图

此监控图是 zabbix 的筛选功能可能把相关的图整合到一个页面里面去。

具体的自动发现实现如下:

探索规则配置如上,机器上的 zabbix agent 配置如下:

UserParameter=mongo.discover,python /usr/local/zabbix/discover_mongo.py

其中 /usr/local/zabbix/discover_mongo.py 为自动发现的脚本,脚本内容如下:

#coding:utf-8 import simplejson as json import commands (status, output) = commands.getstatusoutput(sudo netstat -tlnp|grep  mongod |awk  {print $4} |awk -F :   {print $(NF)} |sort -u|grep -v  ^28 ) outputs = output.split(\n) ports = [] for port in outputs: ports += [{ {#MONGOPORT} : port}] print json.dumps({data :ports},sort_keys=True,indent=4)

使用系统命令 netstat 把监听的端口筛选出来,然后以 json 的格式进行输出。定义到此就可以自动发现 zabbix 监听的端口。

注意:netstat 一般 zabbix 用户没有权限,需要 visudo 进行对应的设置,此脚本可能得针对自己的环境进行相对的调整。

探索完端口后,zabbix server 就需要以端口为其中一个参数向 zabbix agent 取数据,其中项目原型配置如下:

如果返回的 {#MONGOPORT} 有多个的话,那监控项目就乘以几。

其中 mongo.status 的定义如下(此定义还是 zabbix agent 下):

UserParameter=mongo.status[*],sh /usr/local/zabbix/check_mongo.sh -p $1 -k $2  -K $3

使用一个脚本传入参数来获取 mongo 的一些数据收集,后续可直接扩展此脚本(- p 代表端口),mongo 的 serverStatus 有多个参数,采集的就用到 opcounters 等,- k 和 - K 能具体获取其数值。其中脚本如下:

#!/bin/sh while getopts  p:k:K:  opt do case $opt in p ) mongo_port=$OPTARG;; k ) key1=$OPTARG;; K ) key2=$OPTARG;; ? ) echo  parameter is wrong!  exit 1;; esac done if [ !  ${mongo_port}  ] || [ !  ${key1}  ] || [ !  ${key2}  ];then echo  parameter is null  exit 1 fi echo  db.serverStatus().${key1} |mongo --port=${mongo_port}|sed  s/,/\r\n/g |grep  ${key2}  |awk -F :|,|}   {print $2}

部署完一个模板,把模板关联到 mongo 的机器,就能收集相关的操作信息。在模板上再添加一个图形原型,如下:

模板应用完如果没问题就可以在 zabbix 的筛选中把 mongo 集群的数据汇在一个网页上进行查看。

以上是“怎么使用 Zabbix 的自动发现来监控 mongo 数据库”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-07发表,共计1846字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)