首页/云/可观测性速查/看板 provisioning 与 sidecar 模式
Grafana 与看板53 条

看板 provisioning 与 sidecar 模式

把看板 JSON 放进统一目录自动导入:providers 声明路径与刷新周期;Kubernetes 里可让 sidecar 监听带标签的 ConfigMap 自动同步。

可观测性速查云更新于 2026-10-13

看板 provisioning 是什么

Grafana 支持用配置文件声明看板来源:在 providers 段里指定一个目录,容器启动后自动把目录里的看板 JSON 导入。这样看板就和代码一样可以进版本库、走评审、按环境发布。在 Kubernetes 里常用 sidecar 模式:把看板 JSON 放进带特定标签的 ConfigMap,sidecar 监听到变化后同步进上述目录,改看板变成改配置。

基本信息

配置文件位置/etc/grafana/provisioning/dashboards/ 下的 YAML
数据来源类型file(本地目录),也可接 HTTP 拉取
默认只读allowUiUpdates 默认 false,界面无法保存修改
Kubernetes 方式sidecar 监听带标签的 ConfigMap 并同步到目录

典型使用场景

  • 环境一致性:用同一份看板 JSON 部署多个环境的 Grafana
  • 发布管控:看板改动走代码评审与流水线,而不是界面手改
  • 批量上线:一次导入整套业务看板,减少重复操作
  • 容器化部署:结合 sidecar 从 ConfigMap 同步看板
  • 灾备重建:实例迁移时用配置直接恢复看板结构

providers 配置

providers 配置
# 文件:/etc/grafana/provisioning/dashboards/default.yml
apiVersion: 1
providers:
  - name: default
    orgId: 1
    folder: '业务看板'                  # 导入后所在的文件夹
    type: file
    disableDeletion: false               # 目录里删除文件时同步删除看板
    updateIntervalSeconds: 30            # 目录扫描周期
    allowUiUpdates: false                # 界面只读,避免与文件冲突
    options:
      path: /var/lib/grafana/dashboards
      foldersFromFilesStructure: true    # 按子目录结构创建文件夹

关键选项

选项作用注意事项
folder导入后存放的文件夹文件夹名要与权限规划一致
disableDeletion是否禁止删除看板设 true 防误删但会留下孤儿看板
updateIntervalSeconds目录扫描周期改文件后可等一个周期再刷新
allowUiUpdates是否允许界面修改false 时界面保存会被拒绝
foldersFromFilesStructure按目录自动建文件夹多团队共用时便于分层
provisioned 看板在界面上是只读的:修改入口是源文件,改完等扫描周期生效;临时改动可先复制一份另存,避免直接改被回滚。
看板 JSON 里带有数据源标识与变量定义:迁移环境时先确认数据源 UID 一致,否则导入后所有面板都提示数据源不存在。

易错点

  • disableDeletion 设为 true 时目录里删除文件不会同步删除看板,长期积累出一批不再更新的孤儿看板
  • 界面里改 provisioned 看板会被拒绝保存,白改一场;应先改源文件或临时关闭 provisioning
  • 看板目录与版本库脱节,界面上手工导入的看板在重建环境时全部丢失
  • 迁移环境时数据源 UID 不一致导致全部面板报错,导入前先统一数据源标识

数据来源与参考

  • Grafana 官方文档 · Provisioning dashboards
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌