nagios check_mongodb插件监控mongodb

  • A+

当在生产环境下使用某种服务时,相应的监控措施也应当完善起来,来检测服务是否正常和获取相关信息是很有必要的。

下面来说说使用nagios-plugin-mongodb来监控mongodb数据库。https://github.com/mzupan/nagios-plugin-mongodb

1. 下载check_mongodb nagios插件

2. 安装Mongo Python驱动

需要先安装EPEL源。参见《CentOS / RHCE 可供使用的yum》。

或者自己下载源码包编译。

或通过python easy_install来安装。

3. check_mongodb.py 说明

Nagios MongoDB监控插件的所有动作:

通过参数-A来传递下列任一动作。这些动作有:'connect', 'connections', 'replication_lag', 'replication_lag_percent', 'replset_state', 'memory', 'memory_mapped', 'lock', 'flushing', 'last_flush_time', 'index_miss_ratio', 'databases', 'collections', 'database_size', 'database_indexes', 'collection_indexes', 'queues', 'oplog', 'journal_commits_in_wl', 'write_data_files', 'journaled', 'opcounters', 'current_lock', 'replica_primary', 'page_faults', 'asserts', 'queries_per_second', 'page_faults', 'chunks_balance', 'connect_primary', 'collection_state', 'row_count'

4. 定义nagios command

5. 创建监控项

5.1 Check Connection 需要监控集群中每台mongodb实例。

5.2 Check Percentage of Open Connections 检查空闲连接率

5.3 Check Replication Lag 检测复制延迟

5.4 Check Replication Lag Percentage 检查复制滞后百分比。如果检查达到100%的话就需要完全重新同步。

5.5 Check Memory Usage 检查内存使用情况

5.6 Check Mapped Memory Usage 检查mongodb映射内存使用情况

5.7 Check Lock Time Percentage 检查锁定时间百分比。如果有锁定时间通常意味着数据库已经超载。

5.8 Check Average Flush Time 检查平均刷新时间。如果平均刷新时间高就意味着数据库存在大量写。

5.9 Check Last Flush Time 检查最后刷新时间。如果最后刷新时间高就意味着服务器可能存在IO压力,需要更换更快的磁盘。

5.10 Check status of mongodb replicaset 检查的MongoDB replicaset状态

5.11 Check status of index miss ratio 检查索引命中失败率。如果该值高,需要考虑添加索引了。

5.12 Check number of databases and number of collections

5.13 Check size of a database 检查数据库的大小。跟踪数据增长率。

5.14 Check index size of a database 检查数据库的索引大小

5.15 Check index size of a collection 检查一个集合的索引大小

5.16 Check the primary server of replicaset 检查replicaset的主服务器

5.17 Check the number of queries per second 检查每秒查询数量。这将检查服务器上每秒查询数量,类型有:query|insert|update|delete|getmore|command

5.18 Check Primary Connection

5.19 Check Collection State 检测集合状态

转载请注明来自运维生存时间: http://www.ttlsa.com/html/4188.html

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:3   其中:访客  3   博主  0

    • 张总 9

      北哥你个贱人跑四川就没人影了,这个监控的mongodb服务器上面要做哪些配置都没说,还有直接运行有数据,监控平台看都是null怎么回事

      • thinkdb 9

        监控结果是 (null),怎么解决啊?我直接运行./check_mongodb.py -H localhost -p 27017 -W 2 -C 4,显示正常(OK – Connection took 0 seconds)。