邓开表同学实战MongoDB系列文章,非常不错,赞!大力推荐!
本文是第11篇,主要讲述Munin监控MongoDB实战操作,非常值得一看。
MongoDB系列文章:
MongoDB安全实战之Kerberos认证
MongoDB Compass--MongoDB DBA必备的管理工具
MongoDB安全实战之审计
MongoDB安全实战之SSL协议加密
MongoDB安全实战之网络安全加固
MongoDB索引的介绍
MongoDB存储引擎
MongoDB集合的增量更新
MongoDB系列9:MongoDB数据迁移到MySQL
MongoDB系列10:Change Streams构建实时同步数据流
Munin是一个网络资源监控工具,可以帮助分析资源趋势。默认提供了大量的分析图形。以下讲述如何设置MongoDB的Munin监控插件。
1、设置前需要安装Apache2、Munin。
这里只讲一下,Munin的安装:
1) 安装epel源并安装Munin
$ wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6.8.noarch.rpm
$ rpm -Uvh epel-release-6.8.noarch.rpm
$ yum install munin
$ yum install munin-node
2) 配置Munin
安装完Munin之后,修改默认/etc/munin/munin.conf路径下的配置文件。
vi /etc/munin/munin.conf
这里的htmldir目录就是指定了生成的munin监控html监控结果。需要配置一个web服务器,就能访问到监控的MongoDB情况。
由于,这里我监控本机,没有监控其他及其,所以使用默认配置。如果想监控其他机器可以按照以上格式添加;
3) 修改Apache2配置
vi ${APACHE_HOME}/conf/httpd.conf
修改以下配置:
ServerRoot “/var/www/html/munin”
DocumentRoot “/var/www/html/munin”
4) 启动munin-node
service munin-node start
2、设置MongoDB Munin插件
1) 安装pymongo
$ yum install pymongo
2) 克隆MongoDB Munin插件
git clone https://github.com/comerford/mongo-munin
scp /root/mongo-munin/mongo_* /usr/share/munin/plugins
ln -sf /usr/share/munin/plugins/mongo_btree /etc/munin/plugins/mongo_btree
ln -sf /usr/share/munin/plugins/mongo_conn /etc/munin/plugins/mongo_conn
ln -sf /usr/share/munin/plugins/mongo_lock /etc/munin/plugins/mongo_lock
ln -sf /usr/share/munin/plugins/mongo_mem /etc/munin/plugins/mongo_mem
ln -sf /usr/share/munin/plugins/mongo_ops /etc/munin/plugins/mongo_ops
ln -sf /usr/share/munin/plugins/mongo_docs /etc/munin/plugins/mongo_docs
chmod x /usr/share/munin/plugins/mongo_*
3) 检查插件是否运行
munin-node-configure | grep “mongo_”
4) 测试插件的输出
munin-run mongo_ops
5) 配置MongoDB的监控
编辑/etc/munin/plugin-conf.d/munin-node文件,添加以下格式配置:
[mongo_*]
env.MONGO_DB_URI mongodb://user:password@host:port/dbname
由于,这里并没有设置用户和密码,所以不需要user:password项。 6) 配置监控更新信息
$ sudo -u munin /usr/share/munin/munin-update
默认情况下,munin会5分钟更新一次生成的统计结果。
现在,打开浏览器查看一下监控:
上面,生成了各种监控指标,这里主要查看index.html,和MongoDB的就行了。