陈辉煌 发表于 2018-10-25 12:03:15

Zabbix监控mongodb配置

  本文主要介绍zabbix监控mongodb的配置。
  zabbix监控mongodb需要自定义脚本去监控,脚本可以传入多个参数。
  原理:通过mongodb客户端连接命令,过滤出db.serverStatus()输出的信息。
  一、创建监控数据采集脚本
  1.脚本内容:
#cat check_mongodb.sh  
#!/bin/bash
  
#
  
# mongodb status
  
# db.serverStatus().ok
  
# memory status
  
# Physical memory: db.serverStatus().mem.resident
  
# Virtual memory: db.serverStatus().mem.virtual
  
# opcounters status
  
# insert: db.serverStatus().opcounters.insert
  
# query: db.serverStatus().opcounters.query
  
# update: db.serverStatus().opcounters.update
  
# delete: db.serverStatus().opcounters.delete
  
# connections status
  
# current connections: db.serverStatus().connections.current
  
MONGODBPATH="/usr/local/mongodb3.2.1/bin/mongo"
  
HOST="127.0.0.1"
  
PORT="$1"
  
MONGODB_PA="$MONGODBPATH ${HOST}:${PORT}"
  

  
if [ $# == 3 ];then
  
result=$(/bin/echo "db.serverStatus().$2.$3" | $MONGODBPATH ${HOST}:${PORT} --quiet)
  
echo $result
  
elif [ $# == 2 ];then
  
result=$(/bin/echo "db.serverStatus().$2" | $MONGODBPATH ${HOST}:${PORT} --quiet)
  
echo $result
  
else
  
echo "Usage:$0 PORT mem resident"
  
fi
  2.脚本使用
  存放位置:/usr/local/zabbix/etc/scripts
  功能:
  (1).脚本能接受三个参数传入,监控mongodb内存使用情况、客户端连接数、dml操作语句情况等
  (2).脚本能接受二个参数传入,监控mongodb是否在线
  二、修改agent配置文件
  1.修改zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/  2.在zabbix_agentd.conf.d下定义监控mongodb的key
#cat mongodb_stats.conf  
UserParameter=mongodb_stats
[*],/usr/local/zabbix/etc/scripts/check_mongodb.sh $1 $2 $3
  3.重启agent服务
  三、在web界面创建监控项
  mongodb实例端口定义成主机宏,具体宏操作参考:http://hnr520.blog.51cto.com/4484939/1852655
  1.创建监控mongodb是否在线items

  键值:mongodb_stats[{$MONGODB_PORT_TEST},ok]
  2.创建监控mongodb内存使用情况itmes

  键值:mongodb_stats[{$MONGODB_PORT_TEST},mem,resident]
  注意:采集到数据单位为MB,单位使用B,因此需要定义1024*1024倍数,否则当内存使用超过GB时没法显示出GB
  3.创建监控mongodb客户端连接数items

  键值:mongodb_stats[{$MONGODB_PORT_TEST},connections,current]
  4.创建监控dml语句相关信息items

  键值:mongodb_stats[{$MONGODB_PORT_TEST},opcounters,insert]
  注意:通过db.serverStatus().opcounters监控到数据是服务启动以来总的数量,因此存储值类型需要修改成差量
  其他几个query、delete、update类型创建
  四、查看数据
  选择监测中---->最新数据---->选择相应过滤条件

  五、创建mongodb opcounters信息图形
  选择配置---->主机---->选择mongodb主机---->图形




页: [1]
查看完整版本: Zabbix监控mongodb配置