利用zabbix自动发现监控mongo数据库
但如果公司使用mongo的端口如果不一致的话,那建议使用zabbix的自动发现的功能,自动发现mongo监听的端口,并对它进行相关数据的收集。
先看一下效果图,
教你如何利用zabbix自动发现监控mongo数据库
此监控图是zabbix的筛选功能可能把相关的图整合到一个页面里面去。
具体的自动发现实现如下:
教你如何利用zabbix自动发现监控mongo数据库
探索规则配置如上,机器上的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进行对应的设置,此脚本可能得针对自己的环境进行相对的调整。visudo添加配置如下:
zabbix ALL= NOPASSWD: /bin/netstat
Defaults:zabbix !requiretty
探索完端口后,zabbix server就需要以端口为其中一个参数向zabbix agent取数据,其中项目原型配置如下:
教你如何利用zabbix自动发现监控mongo数据库
如果返回的{#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
docase $opt inp ) mongo_port=$OPTARG;;k ) key1=$OPTARG;;K ) key2=$OPTARG;;? )echo 'parameter is wrong!'exit 1;;esac
doneif [ ! "${mongo_port}" ] || [ ! "${key1}" ] || [ ! "${key2}" ];thenecho "parameter is null" exit 1
fiecho "db.serverStatus().${key1}"|mongo --port=${mongo_port}|sed 's/,/\r\n/g'|grep "${key2}" |awk -F':|,|}' '{print $2}'
部署完一个模板,把模板关联到mongo的机器,就能收集相关的操作信息。在模板上再添加一个图形原型,如下:
模板应用完如果没问题就可以在zabbix的筛选中把mongo集群的数据汇在一个网页上进行查看。
参考链接 :
利用zabbix自动发现监控mongo数据库 https://www.jianshu.com/p/3e4d9535678c
利用zabbix自动发现监控mongo数据库相关推荐
- zabbix自动发现监控redis数据库
2019独角兽企业重金招聘Python工程师标准>>> zabbix客户端: 添加redis自动发现脚本如下: mkdir -p /etc/zabbix/monitor_script ...
- zabbix自动发现监控磁盘(iops和读写量)
2019独角兽企业重金招聘Python工程师标准>>> 对于磁盘有个iops的概念比较奇怪,想监控起来看下,利用zabbix的自动发现把每个磁盘的iops监控起来,思路:自动发现所有 ...
- Linux Zabbix——zabbix可视化、监控模板配置、自定义监控参数、自动发现监控下设备、数据库监控、企业proxy分布式监控搭建配置...
Zabbix可视化.监控模板配置.自定义监控参数.自动发现监控下设备.数据库监控.proxy分布式监控搭建配置- 文章篇幅较长,可以选择目录查看感兴趣的模块. 1.Zabbix可视化 1. 简介 企业 ...
- 5 zabbix 添加host_运维监控实战篇,zabbix自动发现和自动注册图文详解
一.介绍 自动发现 Zabbix自动发现就是为了解决批量监控而设计的功能之一,什么是自动发现呢,简单来说就是Zabbix Server端可以基于设定的规则,自动批量的去发现局域网若干服务器,并自动把服 ...
- zabbix自动发现oracle表空间并监控其使用率
监控需求 Oracle表空间使用率实时监控,当表空间使用率达到95%时触发告警机制.Oracle表空间分为系统默认表空间和用户创建的表空间,而表空间又有自动扩展和非自动扩展两种类型,用户(DBA)在创 ...
- zabbix 自动发现规则 触发器_运维监控实战篇,zabbix自动发现和自动注册图文详解...
一.介绍 自动发现 Zabbix自动发现就是为了解决批量监控而设计的功能之一,什么是自动发现呢,简单来说就是Zabbix Server端可以基于设定的规则,自动批量的去发现局域网若干服务器,并自动把服 ...
- zabbix自动发现与监控内存和CPU使用率最高的进程
监控需求 某项目的应用服务器CPU和内存使用率的监控,通过zabbix系统监控记录应用服务器上进程的CPU和内存的使用情况,并以图表的形式实时展现,以便于我们分析服务器的性能瓶颈. 监控方式 利用za ...
- ZABBIX利用自带模板监控mysql数据库
***** ZABBIX利用自带模板监控mysql数据库**** 监控效果图 增删改查 慢查询 每秒总执行次数 1. 进入主题:先搭建好zabbix服务器,并把mysql作为agent端(建议先在线下 ...
- zabbix自动发现redis端口并监控redis性能
不得不说,我在监控redis 这里卡了有一天半的时间,zabbix_get也可以获取到数据,就是没有自动生成监控项和监控图像,后来干脆把别人的模板抛弃,自己重新建立模板和监控项,就都出来了.真是无语的 ...
最新文章
- CMS sell in customizing
- TCP VS UDP
- L1-045 宇宙无敌大招呼-PAT团体程序设计天梯赛GPLT
- 软考网络工程师--知识产权与标准化
- python三大圣经-读书分享全网学习资源大合集,推荐Python学习手册等三本书「01」...
- pytorch_图片分类_猫狗猴
- Nsight Compute(NCU) Scheduler Statistics 数据解读
- ubuntu 键盘输入法为空_[已解决]HELP!!!fcitx 输入法不出来,键盘也不见了
- 2022山东省安全员C证考试试题及答案
- 2万 字的 Spring Cloud 总结,从此任何问题也难不住你
- python中tuple的意思_pythontuple什么意思
- JPG图片在线翻译的操作方法
- Linux centOS 7下安装配置Tomcat
- Scrapy爬取动态页面下载图片(以抓取360图片为例)
- 微信公众平台开发入门视频教程已发布
- [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/ServletTest_war]]
- python之自动发送微信消息
- 如何在 Windows 中备份与恢复树莓派 SD 卡
- A股市场强弱量化的一个思路
- jq分割数组、截取字符串、数组遍历push新数组
热门文章
- 【新书】python+tensorflow机器学习实战,详解19种机器学习经典算法
- 计算机丢失faultrep.dll,faultrep.dll
- this指向_前端必须知道的this指向问题
- kali数据库渗透_Kali Linux渗透测试实战 1.4 小试牛刀
- python数据分析实例_Python数据分析及可视化实例之爬虫源码(05)
- float取整数部分_python的除法问题 取整取余/向上向下取整/四舍五入
- R交互图_shiny包
- springboot 文件上传 各种姿势 解锁,策略模式简单运用
- RSA 2019|远禾科技携YScanner荣获国际权威杂志认可
- 小程序购物车下架商品实时显示,只为更好用户体验!