暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

prometheus监控mongodb真的太方便了

3705

最近一直在看prometheus中的数据,发现很多指标其实并不明白含义,所以打算系统性的看下,再加上最近mongodb挂过,所以就从部署mongodb监控开始。

1:寻找exporter

首先就是找到一个mongodb exporter,相当于一个agent,用于收集mongodb指标数据。

可以使用percona出厂的exporter,安装很简单,建议以service的方式运行,编辑/lib/systemd/system/mongodb_exporter.service文件:

[Unit]
Description=MongoDB Exporter
User=root
[Service]
Type=simple
Restart=always
ExecStart=mongodb_exporter  --mongodb.uri=mongodb://localhost:27017
[Install]
WantedBy=multi-user.target

然后运行:

systemctl start mongodb_exporter.service

改exporter暴露的endpoint端口是9216,是否安装成功,可以运行:

curl http://localhost:9216/metrics

2:在prometheus中配置mongodb endpoint

- job_name: 'mongodb'
    static_configs:
    - targets: ['ip:9216']

3:安装MongoDB dashboards

在grafana中导入MongoDB dashboard,我选择的是https://grafana.com/grafana/dashboards/12079。

4:可以看到哪些指标数据

可以查看副本集状态、服务器状态、Oplog指标、WiredTiger引擎等。

5:报警

目前配置的报警比较简单,基于mongodb进程是否存在决定报警。使用的指标mongodb_up,如下图:

参考:

  • https://github.com/percona/mongodb_exporter
  • https://devconnected.com/mongodb-monitoring-with-grafana-prometheus/
文章转载自虞大胆的叽叽喳喳,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论