搬瓦工部署 Grafana Mimir 指标存储平台教程

Grafana Mimir 是 Grafana Labs 开发的高性能、高可用的 Prometheus 长期存储解决方案。它解决了 Prometheus 在大规模和长期存储场景下的瓶颈问题,支持多租户、全局视图查询和无限制的指标保留时间。Mimir 兼容 Prometheus 的远程写入协议和 PromQL 查询语言,可以无缝集成到现有的 Prometheus + Grafana 监控体系中。本文将介绍如何在搬瓦工 VPS 上部署 Grafana Mimir。部署前请确保已安装 Docker 和 Docker Compose

一、为什么需要 Mimir

  • 长期存储:Prometheus 本地存储通常只保留 15-30 天数据,Mimir 可保留数年。
  • 全局查询:聚合多个 Prometheus 实例的指标数据,提供统一视图。
  • 多租户:支持多个团队或项目共享同一个 Mimir 集群。
  • 水平扩展:各组件可独立扩展,应对不断增长的指标量。
  • 高可用:数据自动复制,单节点故障不影响服务。

二、系统要求

  • 操作系统:Ubuntu 20.04+ 或 Debian 11+。
  • 内存:至少 2GB,推荐 4GB。
  • 磁盘:至少 20GB 可用空间(取决于指标数据量)。
  • Docker:已安装 Docker 和 Docker Compose。

选购搬瓦工 VPS 请参考 全部方案,购买时使用优惠码 NODESEEK2026 可享 6.77% 折扣,购买入口:bwh81.net

三、创建项目目录

mkdir -p /opt/mimir/{config,data} && cd /opt/mimir

四、编写 Mimir 配置文件

使用单体模式(monolithic mode),适合中小规模场景:

cat > /opt/mimir/config/mimir.yaml <<'EOF'
target: all

multitenancy_enabled: false

server:
  http_listen_port: 9009
  grpc_listen_port: 9095

ingester:
  ring:
    replication_factor: 1
    instance_addr: 127.0.0.1
    kvstore:
      store: memberlist

blocks_storage:
  backend: filesystem
  filesystem:
    dir: /data/mimir/blocks
  tsdb:
    dir: /data/mimir/tsdb
  bucket_store:
    sync_dir: /data/mimir/bucket-sync

compactor:
  data_dir: /data/mimir/compactor
  sharding_ring:
    kvstore:
      store: memberlist

store_gateway:
  sharding_ring:
    replication_factor: 1
    kvstore:
      store: memberlist

ruler_storage:
  backend: filesystem
  filesystem:
    dir: /data/mimir/rules

limits:
  max_global_series_per_user: 1500000
  ingestion_rate: 50000
  ingestion_burst_size: 100000
EOF

五、编写 Docker Compose 配置

cat > /opt/mimir/docker-compose.yml <<'EOF'
version: '3.8'

services:
  mimir:
    image: grafana/mimir:latest
    restart: always
    command: ["-config.file=/etc/mimir/mimir.yaml"]
    ports:
      - "9009:9009"
    volumes:
      - ./config/mimir.yaml:/etc/mimir/mimir.yaml:ro
      - mimir_data:/data/mimir

volumes:
  mimir_data:
EOF

六、启动服务

cd /opt/mimir
docker compose up -d

验证服务状态:

curl http://localhost:9009/ready

七、配置 Prometheus 远程写入

在 Prometheus 的配置文件中添加远程写入目标:

# prometheus.yml
remote_write:
  - url: http://mimir-host:9009/api/v1/push
    headers:
      X-Scope-OrgID: anonymous

重新加载 Prometheus 配置后,指标数据将同时写入 Mimir。

八、在 Grafana 中使用 Mimir

在 Grafana 中添加 Prometheus 类型的数据源,URL 填写 Mimir 的地址:

URL: http://mimir-host:9009/prometheus
HTTP Headers:
  X-Scope-OrgID: anonymous

之后可以使用标准 PromQL 查询 Mimir 中存储的指标数据,在 Grafana 仪表板中展示长期趋势。

九、数据保留策略

通过 Compactor 配置数据保留时间:

compactor:
  data_dir: /data/mimir/compactor
  sharding_ring:
    kvstore:
      store: memberlist

limits:
  compactor_blocks_retention_period: 365d

十、常见问题

写入被限流

调整 limits 配置中的 ingestion_rateingestion_burst_size 参数。

磁盘空间增长过快

检查数据保留策略,确保 Compactor 正常运行以合并和清理旧数据块。

总结

Grafana Mimir 是 Prometheus 生态中最佳的长期存储方案,适合需要保留数月或数年指标数据的场景。配合 Grafana 仪表板,你可以轻松查看历史趋势和长期性能数据。如需分布式追踪能力,可参考 Grafana Tempo。选购搬瓦工 VPS 使用优惠码 NODESEEK2026 可享 6.77% 折扣。

关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工的方案、优惠和教程。我们不销售主机,不提供技术服务。

新手必读
搬瓦工优惠码

NODESEEK2026(优惠 6.77%)

购买时填入即可抵扣。