mongodb有db.serverStatus()命令,可以查看mongodb的运行状态,那么zabbix就可以调用这个命令实现mongodb的监控。

一、db.serverStatus()命令的使用

注:只有超级管理员账号才有权限使用此命令

1、查看mongodb服务状态

echo "db.serverStatus()" | mongo --port 37485 -u username -p 'password' --authenticationDatabase 'admin'

2、查看mongodb使用内存情况

echo "db.serverStatus().mem" | mongo --port 37485 -u username -p 'password' --authenticationDatabase 'admin'


3、查看mongodb连接数

echo "db.serverStatus().connections" | mongo --port 37485 -u username -p 'password' --authenticationDatabase 'admin'

二、创建监控配置文件

1、编写mongodb监控配置文件

vim /etc/zabbix/zabbix_agentd.d/mongodb.conf

UserParameter=MongoDB.status[*],/bin/echo "db.serverStatus().$1" |/data/mongodb/bin/mongo --port 37485 -u username -p 'password' --authenticationDatabase 'admin' | grep "$2" | awk -F ' : ' '{print $$2}' | awk -F ',' '{print $$1}'
UserParameter=MongoDB.ok,/bin/echo "db.serverStatus().ok" | /data/mongodb/bin/mongo --port 37485 -u username -p 'password' --authenticationDatabase 'admin' | sed -n '5p'
UserParameter=MongoDB.connections[*],/bin/echo "db.serverStatus().connections.$1" | /data/mongodb/bin/mongo 

注:使用超级管理员账号

2、重启zabbix-agent

systemctl restart zabbix-agent

3、在zabbix server端测试

/data/zabbix/bin/zabbix_get -s xxx.xxx.xxx.xxx -p 10050 -k "MongoDB.status[mem,virtual]"
/data/zabbix/bin/zabbix_get -s xxx.xxx.xxx.xxx -p 10050 -k "MongoDB.connections[available]"
/data/zabbix/bin/zabbix_get -s xxx.xxx.xxx.xxx -p 10050 -k "MongoDB.ok"

三、创建监控模板

1、添加监控模板



2、创建应用集

注:根据自己要监控的项创建应用集




3、创建监控项

注:请根据自己要监控的子项创建,将要监控的子项一一创建好




4、创建触发器



5、创建监控图形




四、主机添加监控模板

五、监控效果图



总结

以上所述是小编给大家介绍的Zabbix3.4监控mongodb数据库状态的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

以上就是【Zabbix3.4监控mongodb数据库状态的方法】的全部内容了,欢迎留言评论进行交流!

赞(0) 踩(0)

与本文相关的软件

发表我的评论

最新评论

  1. 暂无评论