【Prometheus-Mongodb Exporter安装配置指南,开机自启】

目录

内容概述

本教程详细演示了如何在Linux系统中部署MongoDB Exporter以监控MongoDB数据库,并将其集成到Prometheus监控体系。教程涵盖以下核心步骤:

  1. 创建具备监控权限的MongoDB专用用户
  2. 安装配置MongoDB Exporter二进制包
  3. 创建Systemd服务实现守护进程管理
  4. 配置Prometheus抓取Exporter指标
  5. 基础服务管理命令演示

一、创建MongoDB监控专用用户

bash 复制代码
mongo -u admin -p 123456 --authenticationDatabase admin
  1. 切换至admin数据库
javascript 复制代码
use admin
  1. 创建监控用户(包含集群监控和本地库读权限)
javascript 复制代码
db.createUser({
  user: "mongodb_expo",
  pwd: "SecurePassword",
  roles: [
    { role: "clusterMonitor", db: "admin" },
    { role: "read", db: "local" }
  ]
});
  1. 验证用户创建
javascript 复制代码
db.getUser("mongodb_expo")
  1. 退出MongoDB
bash 复制代码
ctrl+z

二、安装MongoDB Exporter

bash 复制代码
# 创建安装目录
mkdir -p /usr/local/mongodb_exporter

# 解压安装包(需提前下载对应版本)
tar -zxvf mongodb_exporter-0.20.5.linux-amd64.tar.gz -C /usr/local/mongodb_exporter --strip-components=1

三、启动Exporter服务

bash 复制代码
# 基础启动命令
/usr/local/mongodb_exporter/mongodb_exporter \
  --mongodb.uri='mongodb://mongodb_expo:SecurePassword@192.168.15.131:27017/admin' \
  --web.listen-address=:9216 \
  --compatible-mode

# 查看帮助参数
/usr/local/mongodb_exporter/mongodb_exporter --help

四、配置Systemd服务

bash 复制代码
vim /usr/lib/systemd/system/mongodb_exporter.service
ini 复制代码
[Unit]
Description=MongoDB Exporter
After=network.target

[Service]
User=root
Group=root
Type=simple
ExecStart=/usr/local/mongodb_exporter/mongodb_exporter \
  --mongodb.uri=mongodb://mongodb_expo:SecurePassword@192.168.15.131:27017/admin \
  --web.listen-address=:9216 \
  --compatible-mode
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

五、服务管理命令

bash 复制代码
# 重载systemd配置
systemctl daemon-reload

# 设置开机自启
systemctl enable mongodb_exporter

# 服务控制
systemctl stop mongodb_exporter
systemctl restart mongodb_exporter
systemctl status mongodb_exporter

六、Prometheus集成配置

bash 复制代码
vim /usr/local/prometheus/prometheus.yml
yaml 复制代码
scrape_configs:
  - job_name: 'mongodb'
    static_configs:  
    - targets: ['192.168.15.131:9216']
bash 复制代码
# 应用配置变更(注意:原命令中的postgres_exporter应为笔误)
systemctl restart mongodb_exporter

七、Grafana看板

相关推荐
2603_9651481144 分钟前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
ltl1 小时前
RocksDB 经典故障排查:L0、compaction 与 write stall
数据库
xfhuangfu2 小时前
Oracle中建立到CDB和PDB的连接
数据库·oracle·rpc
小小龙学IT2 小时前
DuckDB 深度实战:用 C++ 在进程内跑一个「分析型数据库」
数据库·c++
NineData2 小时前
DTCC 2026 预告|NineData CEO& 创始人叶正盛:面向 AI Agent 的数据库 DevOps 与数据复制实践
数据库·人工智能·数据库开发·devops·ninedata·数据库技术·dtcc
J_bean3 小时前
MySQL 事务是否必须手动开启?
数据库·mysql·数据库事务·自动提交·手动提交
J_bean3 小时前
MySQL InnoDB 如何检测死锁、判定死锁、处理死锁
数据库·mysql·死锁·死锁检测·处理死锁·死锁判定
浪子明X4 小时前
从 MongoDB 文档到关系模型:构建可重跑、可对账的数据迁移流水线
数据库·mongodb·oracle
杜子不疼.4 小时前
国产数据库撑起固井软件自主化:金仓 × 中海油服「海恒 Cemsol」落地解析
数据库
隔窗听雨眠4 小时前
GBase 8s并发控制深度解析:封锁机制、隔离级别与死锁处理全攻略
服务器·数据库·oracle