本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

mongodb_exporter Docker 镜像下载 - 轩辕镜像

mongodb_exporter 镜像详细信息和使用指南

mongodb_exporter 镜像标签列表和版本信息

mongodb_exporter 镜像拉取命令和加速下载

mongodb_exporter 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

mongodb_exporter
percona/mongodb_exporter

mongodb_exporter 镜像详细信息

mongodb_exporter 镜像标签列表

mongodb_exporter 镜像使用说明

mongodb_exporter 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

MongoDB的Prometheus导出器,支持分片、复制和存储引擎相关监控指标
12 收藏0 次下载activepercona镜像

mongodb_exporter 镜像详细说明

mongodb_exporter 使用指南

mongodb_exporter 配置说明

mongodb_exporter 官方文档

MongoDB Exporter

镜像概述和主要用途

MongoDB Exporter是一个Prometheus导出器,用于收集MongoDB数据库的监控指标,包括分片、复制和存储引擎等方面的性能数据。该实现能够处理MongoDB监控命令公开的所有指标,通过循环遍历诊断命令中公开的所有字段并尝试从中获取数据。

核心功能和特性

  • 全面的指标收集:支持MongoDB多种诊断命令提供的所有指标
  • 灵活的指标来源:能够从多种MongoDB诊断命令获取数据
  • 兼容性模式:支持旧版指标格式,简化迁移过程
  • 自动发现:可自动发现指定数据库中的集合
  • 自定义监控对象:允许指定要监控的集合和索引
  • 集群感知:提供集群角色标签,便于区分不同节点类型

指标来源

目前实现了以下指标来源:

  • $collStats
  • $indexStats
  • getDiagnosticData
  • replSetGetStatus
  • serverStatus

与旧版的兼容性

旧版Percona MongoDB Exporter
旧版0.1x.y版本(原master分支)已迁移至release-0.1x分支。
如果考虑从旧版导出器迁移,可以使用--compatible-mode标志以旧指标名称公开指标。
这将简化向新版本的迁移过程。

使用场景和适用范围

  • MongoDB数据库性能监控
  • 与Prometheus和Grafana集成构建监控系统
  • 支持独立MongoDB实例、副本集和分片集群
  • 需要详细了解数据库、集合和索引性能的场景

使用方法和配置说明

构建方法

构建过程使用dockerized版本的goreleaser,无需安装Go环境:

bash
make release

生成的二进制文件将位于build目录下:

├── build
│ ├── config.yaml
│ ├── mongodb_exporter_7c73946_checksums.txt
│ ├── mongodb_exporter-7c73946.darwin-amd64.tar.gz
│ ├── mongodb_exporter-7c73946.linux-amd64.tar.gz
│ ├── mongodb_exporter_darwin_amd64
│ │ └── mongodb_exporter <--- MacOS二进制文件
│ └── mongodb_exporter_linux_amd64
│     └── mongodb_exporter <--- Linux二进制文件

Docker部署

Docker镜像可从Docker Hub获取:percona/mongodb_exporter

Docker Run示例

bash
docker run -d -p 9216:9216 percona/mongodb_exporter \
  --mongodb.uri=mongodb://user:pass@mongodb-host:27017/admin?ssl=true \
  --compatible-mode

Docker Compose示例

yaml
version: '3'
services:
  mongodb_exporter:
    image: percona/mongodb_exporter
    ports:
      - "9216:9216"
    command:
      - --mongodb.uri=mongodb://user:pass@mongodb:27017/admin?ssl=true
      - --compatible-mode
      - --mongodb.collstats-colls=testdb.testcol
    depends_on:
      - mongodb
  mongodb:
    image: mongo
    ports:
      - "27017:27017"
    environment:
      - MONGO_INITDB_ROOT_USERNAME=user
      - MONGO_INITDB_ROOT_PASSWORD=pass

权限配置

连接用户需要有足够的权限来查询所需的统计信息:

javascript
{
  "role": "clusterMonitor",
  "db": "admin"
},
{
  "role": "read",
  "db": "local"
}

有关MongoDB角色的更多信息,请参阅***文档。

配置参数详解

环境变量

环境变量描述示例
MONGODB_URIMongoDB连接URImongodb://user:pass@127.0.0.1:27017/admin?ssl=true

命令行参数

参数描述示例
-h, --help显示上下文相关帮助
--compatible-mode同时以新旧格式公开新指标
--discovering-mode启用从collstats-colls和indexstats-colls中设置的数据库自动发现集合
--mongodb.collstats-colls逗号分隔的要获取统计信息的数据库.集合列表--mongodb.collstats-colls=testdb.testcol1,testdb.testcol2
--mongodb.direct-connect是否建立直接连接。如果指定了多个主机或使用SRV URI,则直接连接无效--mongodb.direct-connect=false
--mongodb.indexstats-colls逗号分隔的要获取索引统计信息的数据库.集合列表--mongodb.indexstats-colls=db1.col1,db1.col2
--mongodb.uriMongoDB连接URI (可通过MONGODB_URI环境变量设置)--mongodb.uri=mongodb://user:pass@127.0.0.1:27017/admin?ssl=true
--mongodb.global-conn-pool使用全局连接池而不是为每个HTTP请求创建新连接
--web.listen-addressWeb界面和遥测的监听地址--web.listen-address=":9216"
--web.telemetry-path指标公开路径--web.telemetry-path="/metrics"
--log.level仅记录给定严重性或更高级别的消息。有效值: [debug, info, warn, error]--log.level="error"
--disable.diagnosticdata禁用从getDiagnosticData收集指标
--disable.replicasetstatus禁用从replSetGetStatus收集指标
--disable.dbstats禁用从dbStats收集指标
--version显示版本并退出

使用示例

基本运行

bash
mongodb_exporter --mongodb.uri=mongodb://127.0.0.1:***

启用集合统计指标收集

bash
mongodb_exporter --mongodb.uri=mongodb://127.0.0.1:*** --mongodb.collstats-colls=db1.c1,db2.c2

启用兼容性模式

启用兼容性模式后,导出器将同时以新的命名和标签模式以及版本1兼容的方式公开所有新指标:

bash
mongodb_exporter --mongodb.uri=mongodb://127.0.0.1:*** --compatible-mode

例如,新格式指标:

# HELP mongodb_ss_wt_log_log_bytes_written serverStatus.wiredTiger.log.
# TYPE mongodb_ss_wt_log_log_bytes_written untyped
mongodb_ss_wt_log_log_bytes_written 2.6208e+06

将同时以旧格式公开:

HELP mongodb_mongod_wiredtiger_log_bytes_total mongodb_mongod_wiredtiger_log_bytes_total
# TYPE mongodb_mongod_wiredtiger_log_bytes_total untyped
mongodb_mongod_wiredtiger_log_bytes_total{type="unwritten"} 2.6208e+06

集群角色标签

导出器在所有指标中设置了一些拓扑标签:

  • cl_role: 集群角色,根据下表确定:
服务器类型标签
mongosmongos
常规实例(主节点或从节点)shardsvr
仲裁节点shardsvr
独立节点(空字符串)
  • cl_id: 集群ID
  • rs_nm: 副本集名称
  • rs_state: 副本集状态,是getDiagnosticData() -> replSetGetStatus.myState返回的整数。有关副本集状态值的详细信息,请查看***文档。

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"