nagios监控mongodb
nagios本身不提供监控mongodb的服务,需要安装插件
已经有大神写好的插件nagios_plugin-mongodb
地址https://github.com/mzupan/nagios-plugin-mongodb
记录下如何使用
首先在监控机上切换到脚本所在目录
cd /usr/local/nagios/libexec
git clone git://github.com/mzupan/nagios-plugin-mongodb.git
cd nagios-plugin-mongodb
pip isntall requirements
这样就安装好了脚本,主要是其中的check_mongodb.py
该脚本用python写的,需要安装python中的pymongo库,上一部的requirements里面就有pymongo所以已经安装好了
接下来就是重头戏配置文件
编辑command.cfg文件
vim /usr/local/nagios/etc/objects/command.cfg
在最后加入以下内容具体的指令什么意思可以切换到脚本文件下执行./check_mongodb.py --help来查看
# 'check_mongodb' command definition
define command {
command_name check_mongodb
command_line $USER1$/nagios-plugin-mongodb/check_mongodb.py -H $HOSTADDRESS$ -A $ARG1$ -P $ARG2$ -W $ARG3$ -C $ARG4$ -u $ARG5$ -P $ARG6$ -D
} define command {
command_name check_mongodb_database
command_line $USER1$/nagios-plugin-mongodb/check_mongodb.py -H $HOSTADDRESS$ -A $ARG1$ -P $ARG2$ -W $ARG3$ -C $ARG4$ -d $ARG5$ -u $ARG6$ -P $ARG7$ -D
} define command {
command_name check_mongodb_collection
command_line $USER1$/nagios-plugin-mongodb/check_mongodb.py -H $HOSTADDRESS$ -A $ARG1$ -P $ARG2$ -W $ARG3$ -C $ARG4$ -d $ARG5$ -c $ARG6$ -u $ARG7$ -P $ARG8$ -D
} define command {
command_name check_mongodb_replicaset
command_line $USER1$/nagios-plugin-mongodb/check_mongodb.py -H $HOSTADDRESS$ -A $ARG1$ -P $ARG2$ -W $ARG3$ -C $ARG4$ -r $ARG5$ -u $ARG6$ -P $ARG7$ -D
} define command {
command_name check_mongodb_query
command_line $USER1$/nagios-plugin-mongodb/check_mongodb.py -H $HOSTADDRESS$ -A $ARG1$ -P $ARG2$ -W $ARG3$ -C $ARG4$ -q $ARG5$ -u $ARG6$ -P $ARG7$ -D
}
-H 是主机地址-A是操作-P是端口-u用户名-p密码
把上面的HOSTADDRESS换乘ARG1,其他的也要依次换掉
接着编辑你的被监控机的配置文件
加入
Define a service to check Mongodb on the remvoe machine
define service{
use generic-service
host_name vm_test
service_description check_mongodb_connect_99
check_command check_mongodb!10.0.0.99!connect!!!!username!password
}
define service{
use generic-service ; Name of service template to use
host_name vm_test
service_description check_mongodb_connections_99
check_command check_mongodb!10.0.0.99!connections!!!!username!password
}
define service{
use generic-service ; Name of service template to use
host_name vm_test
service_description check_mongodb_memory_99
check_command check_mongodb!10.0.0.99!memory!!!!username!password
}
define service{
use generic-service ; Name of service template to use
host_name vm_test
service_description check_mongodb_rep_state_99
check_command check_mongodb!10.0.0.99!replset_state!!!!username!password
}
define service{
use generic-service ; Name of service template to use
host_name vm_test
service_description check_mongodb_database_exam_99
check_command check_mongodb_database!10.0.0.99!database_size!!!!test!username!password
基本就配置好了
最重要的一步,检查配置文件是否正确
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
正确的话重启下nagios和nrpe,记得监控机防火墙开启27017端口
以上是直接通过执行脚本来操作mongodb
还可以利用nrpe来进行监控
把监控机的配置文件改一下
Define a service to check Mongodb on the remvoe machine
define service{
use generic-service
host_name vm_test
service_description check_mongodb_connect
check_command check_nrpe!check_mongodb_connect
}
在被监控机上修改nrep.cfg文件
command[check_mongodb_connect]=/usr/local/nagios/libexec/nagios-plugin-mongodb/check_mongodb.py -H 10.0.0.99 -A connect -P -W -C -u username -p password
重启nrpe和nagios即可
nagios监控mongodb的更多相关文章
- Nagios监控mongodb分片集群服务实战
1,监控插件下载 Mongodb插件下载地址为:git clone git://github.com/mzupan/nagios-plugin-mongodb.git,刚開始本人这里没有安装gitpu ...
- nagios监控redis
nagios是非常强大的监控工具,但是它本身没有监控redis的功能 但是网上有很多大神写了监控redis的插件,比较热门的使用perl写的check_redis.pl 但是由于我们监控mongodb ...
- Nagios监控平台搭建
Nagios是一款开源的免费网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员, ...
- nagios二次开发(四)---nagios监控原理和nagios架构简介
nagios监控原理 下面根据上面摘自网络的原理图对nagios的监控原理进行一下简单的说明: 1.nagios通过nsca进行被动监控.那么什么是被动监控呢?被动监测:就是指由被监测的服务器主动上传 ...
- 烂泥:nagios监控单网卡双IP
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 公司的业务有几台服务器存放在IDC机房中,说是双线路.但是我看到网卡的配置是单网卡双IP的形式.如下: 而公司这边的线路是联通的IP,如下: nagio ...
- Nagios监控ganglia的指标
这是nagios与ganglia整合的一部分内容 . 通常我们会把ganglia的监控发送给一个主机,我们可以在这个主机上执行nc localhost 8649 可以获取到所有发往这个主机的信息,以x ...
- [工具开发] keepalived使用nagios监控脚本
最近在做开发和办公环境的高可用,采用的是keepalived:keepalived基于Linux内核支持的LVS,既能实现高可用,又能实现负载均衡,非常实用. keepalived监控服务状态时可以用 ...
- 一步步实现Nagios监控linux主机及飞信报警
一步步实现Nagios监控linux主机及飞信报警 上篇文章介绍了在linux主机上架设nagios监控服务,并对windows主机进行服务状态变化的监控,这次我们继续上次内容. 首先实现n ...
- centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课
centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobacku ...
随机推荐
- vue + webpack + gulp 简单环境 搭建
一.物料准备 废话不多说,直接上 package.json { "name": "vwp", "version": "1.0.0& ...
- mybatis插入值的时候返回对象的主键值
mapping文件: <insert id="insert" parameterType="com.vimtech.bms.business.riskproject ...
- tcpdump学习(1):安装
目前学习mysql,其中,提到使用tcpdump来进行query的抓包日志,那么,首先就要安装tcpdump. 在ubuntu中,tcpdump是缺省安装的,如果没有,则按照以下步骤做: 1)安装li ...
- docker run 的背后的故事(zz)
当利用docker run来创建并启动容器的时候,docker后台标准的操作包括: 1.检查本地是否存在指定的镜像,不存在就从公有仓库下载. 当我依瓢画葫芦的运行: sudo docker run - ...
- 经常用到的Eclipse快捷键(更新中....)
alt+shift+s:弹出Source选项,用于生成get,set等方法. Ctrl+E:快速显示当前Editer的下拉列表 alt+shift+r:重命名 Ctrl+Shift+→/Ctrl+Sh ...
- springBoot 发布war包
1.packaging 改为war <packaging>war</packaging> 2.剔除内置tomcat <dependency> <groupId ...
- redis发布订阅、HyperLogLog与GEO功能的介绍
一.发布订阅 1.模型 发布者发布消息,订阅者接收消息 2.API 2.1.publish 2.2.订阅 2.3.取消订阅 unsubsribe 2.4.其他api 二.HyperLogLog 极小空 ...
- java javac 的区别
cmd中,执行java命令与javac命令的区别: javac:是编译命令,将java源文件编译成.class字节码文件. 例如:javac hello.java 将生成hello.class文件 j ...
- AC日记——[JSOI2007]建筑抢修 bzoj 1029
1029 思路: 贪心,而且,stl水过: 然而神特么输出que.size()就错! 代码: #include <queue> #include <cstdio> #inclu ...
- C# DataGridView分页显示
//导入命名空间部分省略 DBClass.DBExecute dbexecute = new DBExecute(); string connectionString = @"Data So ...