Grafana 监控可视化 #

什么是 Grafana? #

Grafana 是一个开源的数据可视化和监控平台,由 Grafana Labs 开发维护。它可以将来自多种数据源的数据转换为美观、交互式的图表和仪表板,帮助团队更好地理解系统状态、发现问题和做出决策。

核心定位 #

text
┌─────────────────────────────────────────────────────────────┐
│                         Grafana                               │
├─────────────────────────────────────────────────────────────┤
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐         │
│  │  数据可视化  │  │  多数据源    │  │  告警系统    │         │
│  └─────────────┘  └─────────────┘  └─────────────┘         │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐         │
│  │  仪表板      │  │  插件生态    │  │  团队协作    │         │
│  └─────────────┘  └─────────────┘  └─────────────┘         │
└─────────────────────────────────────────────────────────────┘

Grafana 的优势 #

优势 说明
多数据源支持 支持 Prometheus、InfluxDB、MySQL、Elasticsearch 等 30+ 数据源
丰富的可视化 提供图表、表格、仪表盘、地图等多种可视化组件
告警功能 支持多渠道告警通知,灵活的告警规则配置
开源免费 核心功能完全开源,社区活跃
插件生态 丰富的插件市场,可扩展性强
团队协作 支持多用户、权限管理、仪表板共享

文档结构 #

本指南按以下结构组织,循序渐进地帮助你掌握 Grafana:

1. 入门基础 #

主题 描述 文档链接
Grafana 简介 Grafana 的定义、特点、历史与应用场景 intro.md
安装与配置 各平台安装配置、环境设置 installation.md

2. 核心功能 #

主题 描述 文档链接
仪表板基础 仪表板创建、布局、组织管理 dashboard.md
面板类型 图表、表格、仪表盘等面板详解 panels.md
数据源配置 Prometheus、InfluxDB 等数据源接入 datasources.md

3. 进阶功能 #

主题 描述 文档链接
告警配置 告警规则、通知渠道、告警管理 alerts.md
高级主题 插件开发、Provisioning、性能优化 advanced.md

学习路径 #

入门阶段(Grafana 新手) #

  1. 了解 Grafana 的基本概念和优势
  2. 搭建 Grafana 环境
  3. 添加第一个数据源
  4. 创建第一个仪表板
  5. 理解面板和查询的基本概念

进阶阶段(Grafana 熟练) #

  1. 掌握各种面板类型的使用
  2. 学习 PromQL/InfluxQL 等查询语言
  3. 配置变量实现动态仪表板
  4. 设置告警规则和通知渠道
  5. 组织和管理多个仪表板

高级阶段(Grafana 专家) #

  1. 使用 Provisioning 实现配置即代码
  2. 开发自定义插件
  3. 集成 LDAP/OAuth 认证
  4. 性能优化和高可用部署
  5. 与 Kubernetes、云平台深度集成

大师阶段(Grafana 大师) #

  1. 构建企业级监控平台
  2. 设计统一的可观测性方案
  3. 开发和贡献开源插件
  4. 制定监控最佳实践
  5. 参与社区贡献

Grafana vs 其他监控工具 #

特性 Grafana Kibana Datadog Zabbix
开源免费
多数据源 ✅ 30+ ⚠️ ES 为主 ✅ 内置 ⚠️ 有限
可视化 极强 中等
告警功能 中等
学习曲线 平缓 中等 平缓 陡峭
插件生态 丰富 丰富

快速开始 #

Docker 方式启动 #

bash
docker run -d \
  --name=grafana \
  -p 3000:3000 \
  grafana/grafana:latest

访问 Grafana #

打开浏览器访问 http://localhost:3000,默认用户名和密码都是 admin

创建第一个仪表板 #

text
┌─────────────────────────────────────────────────────────────┐
│                    创建仪表板流程                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   1. 添加数据源                                              │
│      └─> Configuration → Data Sources → Add data source     │
│                                                             │
│   2. 创建仪表板                                              │
│      └─> Create → Dashboard → Add new panel                 │
│                                                             │
│   3. 配置查询                                                │
│      └─> 选择数据源 → 编写查询语句                           │
│                                                             │
│   4. 选择可视化类型                                          │
│      └─> 选择图表类型 → 配置显示选项                         │
│                                                             │
│   5. 保存仪表板                                              │
│      └─> 点击保存图标 → 输入名称 → 保存                      │
│                                                             │
└─────────────────────────────────────────────────────────────┘

核心概念预览 #

数据源(Data Source) #

yaml
apiVersion: 1
datasources:
  - name: Prometheus
    type: prometheus
    access: proxy
    url: http://prometheus:9090
    isDefault: true

仪表板(Dashboard) #

json
{
  "title": "My Dashboard",
  "panels": [
    {
      "title": "CPU Usage",
      "type": "graph",
      "targets": [
        {
          "expr": "rate(cpu_usage[5m])"
        }
      ]
    }
  ]
}

告警规则(Alert Rule) #

yaml
groups:
  - name: system_alerts
    rules:
      - alert: HighCPUUsage
        expr: cpu_usage > 80
        for: 5m
        labels:
          severity: warning
        annotations:
          summary: "CPU usage is above 80%"

常见应用场景 #

1. 基础设施监控 #

text
┌─────────────────────────────────────────────────────────────┐
│                    基础设施监控架构                           │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   ┌─────────────┐     ┌─────────────┐     ┌─────────────┐  │
│   │   Servers   │     │  Containers │     │   Network   │  │
│   └──────┬──────┘     └──────┬──────┘     └──────┬──────┘  │
│          │                   │                   │          │
│          └───────────────────┼───────────────────┘          │
│                              │                              │
│                              ▼                              │
│                    ┌─────────────────┐                      │
│                    │   Prometheus    │                      │
│                    │   (数据采集)     │                      │
│                    └────────┬────────┘                      │
│                             │                               │
│                             ▼                               │
│                    ┌─────────────────┐                      │
│                    │    Grafana      │                      │
│                    │   (可视化展示)   │                      │
│                    └─────────────────┘                      │
│                                                             │
└─────────────────────────────────────────────────────────────┘

2. 应用性能监控(APM) #

text
┌─────────────────────────────────────────────────────────────┐
│                    APM 监控架构                              │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   应用指标:                                                 │
│   ├── 请求响应时间                                          │
│   ├── 错误率                                                │
│   ├── 吞吐量                                                │
│   └── 资源使用                                              │
│                                                             │
│   数据流:                                                   │
│   Application → Agent → Collector → Grafana                 │
│                                                             │
└─────────────────────────────────────────────────────────────┘

3. 业务指标监控 #

text
┌─────────────────────────────────────────────────────────────┐
│                    业务监控示例                              │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   电商业务指标:                                             │
│   ├── 订单数量                                              │
│   ├── 销售金额                                              │
│   ├── 用户活跃度                                            │
│   ├── 转化率                                                │
│   └── 库存状态                                              │
│                                                             │
│   数据源:MySQL、PostgreSQL、Elasticsearch                   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

资源推荐 #

更新日志 #

  • 2026-03-29:创建初始版本,包含完整的 Grafana 学习大纲

继续探索本指南,逐步掌握 Grafana 监控可视化技术,从新手成长为监控可视化专家!

最后更新:2026-03-29