用 Grafana 为 Prometheus 创建仪表盘:新手指南

Grafana + Prometheus 可视化入门:部署 Grafana、配置数据源、创建时序图与仪表图、用变量做动态筛选、导入社区仪表盘模板,一篇上手。

最佳实践
用 Grafana 为 Prometheus 创建仪表盘:新手指南技术指南封面

Prometheus 自带的基础 UI 适合临时查数,但要做长期盯着的仪表盘,Grafana 是事实标准。本文走完从部署到出图的完整链路。

第一步:部署 Grafana

docker run -d --name grafana -p 3000:3000 grafana/grafana:latest

访问 http://localhost:3000,默认账号 admin/admin(首次登录强制改密)。

第二步:添加 Prometheus 数据源

Connections → Data sources → Add data source → Prometheus:

  • URLhttp://prometheus:9090(容器间用服务名,宿主机部署用实际地址);
  • 其余默认即可,Save & Test 显示绿色即连通。

第三步:创建第一个面板

Dashboards → New → Add visualization,选刚才的数据源:

时序图(Time series)——CPU 使用率示例:

100 - avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100
  • Legend 设 {{instance}},图例显示实例名;
  • Unit 选 Percent (0-100),Y 轴自动带 % 号;
  • 面板标题写清楚"是什么 + 哪个范围"(如"CPU 使用率 - 生产集群")。

仪表图(Gauge)——适合单值概览(当前内存占用、磁盘水位):

(1 - node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) * 100

设阈值着色:<70 绿、70-90 黄、>90 红,一眼扫出异常。

第四步:用变量做动态筛选

仪表盘顶部加变量,让一套面板服务多台机器/多个服务:

Settings → Variables → New:

  • Name:instance
  • Type:Query
  • Query:label_values(node_cpu_seconds_total, instance)

面板查询里用 $instance 引用:

rate(node_cpu_seconds_total{mode="idle", instance=~"$instance"}[5m])

顶部下拉切换实例,所有面板联动更新。

第五步:站在社区肩膀上

Grafana 官网的 Dashboards 市场 有数千个现成模板。Node Exporter 最流行的是 Node Exporter Full(ID: 1860):Dashboards → Import → 输入 1860 → 选数据源,一秒获得专业级主机监控面板,再按需要删改。

让仪表盘好用的几条经验

  • 按受众分层:首页放 SLO 级概览(可用率、错误率),细节放下钻页——别把 200 个图堆一页;
  • 统一时间窗口与刷新率:全局 5m 窗口 + 30s 刷新是通用选择;
  • 标注发布事件:用 Annotation 把每次发版标在时间轴上,"指标异变 vs 发版"的相关性一眼可见;
  • 少即是多:一个面板的有效信息上限约 6-8 张图,超了就拆分。

观测云对照

观测云内置可视化能力,免维护 Grafana 服务:拖拽式图表编辑器、变量绑定、阈值着色、Annotation 标注一应俱全;主机/容器/数据库等场景提供预置仪表盘模板,DataKit 装完即有图可看;仪表盘与告警、日志、Trace 同平台联动——从图上异常点直接跳到相关日志,不用在 Grafana 和日志系统之间来回切换。已有 Grafana 的用户也可以把观测云作为数据源继续使用既有面板。

常见问题(FAQ)

Q:Grafana 面板的查询会影响 Prometheus 性能吗?
A:会。高刷新率 + 大时间范围 + 高基数聚合是常见性能杀手。生产仪表盘刷新率别低于 30s,大范围查询用 recording rules 预计算。

Q:Grafana 和 Kibana 什么关系?
A:Grafana 主打指标(时序数据)可视化,Kibana 是 ES 日志的可视化前端。观测云把两类数据的看板做在了同一处。

Q:怎么把仪表盘配置纳入版本管理?
A:Grafana 支持 JSON 导出/导入,也有 provisioning 机制从配置文件自动加载——把 dashboards 目录挂进容器即可实现 GitOps 化。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台