Grafana 13.0.3 发布:镜像底座更新与仪表板 Provisioning 小修

2026-06-30 31 预计阅读时间: 1 分钟
来源: oschina.net AI 摘要 Original link

Disclaimer: This article is an AI-assisted summary. Read it together with the original source when precision matters. The summary may omit context, version differences, or edge cases and is not official documentation.

预计阅读时间:7 分钟

Grafana 13.0.3 已正式发布。这次不是一次大版本功能爆炸,而是更贴近日常运维的维护型更新:Docker 镜像底座升级到 Alpine 3.24.1,同时 Provisioning 在“新文件夹中创建仪表板”的场景上继续打磨。对已经把 Grafana 放进监控链路的团队来说,这类版本值得关注,因为它影响的是镜像供应链、自动化部署和仪表板交付稳定性。

这次更新真正影响哪里

Grafana 本身是监控与可观察性平台,常见用法是把 Prometheus 的指标、Loki 的日志、Elasticsearch、InfluxDB、Postgres 等数据源接进来,再通过 Dashboard 做统一展示。

13.0.3 的更新点看起来不大,但落在两个很具体的工程面上:

  • Docker:基于 Alpine 的镜像升级到 3.24.1
  • Provisioning:围绕在新文件夹中创建仪表板的行为做了增强或修正。

前者主要关系到容器镜像的基础系统包、漏洞扫描结果和运行环境一致性;后者则关系到“用代码管理 Grafana 配置”的团队体验。很多团队不会手动点 UI 创建 Dashboard,而是把数据源、文件夹、仪表板 JSON 放进 Git,再由 CI/CD 或 Helm/Kubernetes 自动下发。

Docker 镜像升级:小版本也要按生产流程走

Alpine 镜像升级通常意味着基础包版本发生变化。多数情况下这是好事,尤其对安全扫描和基础镜像维护有帮助。但不要把它当作“无风险替换”。Grafana 插件、外部渲染器、Sidecar 注入、挂载目录权限,都可能暴露出环境差异。

可以这样实践:先在本地或测试环境拉起一个最小 Grafana 13.0.3,确认容器启动、数据目录挂载和健康检查正常。

mkdir -p grafana-data

# 如果你在 Linux 上运行,可能需要调整目录权限:
# sudo chown -R 472:472 grafana-data

docker run --rm \
  --name grafana-13-0-3 \
  -p 3000:3000 \
  -v "$PWD/grafana-data:/var/lib/grafana" \
  grafana/grafana:13.0.3

启动后访问:

http://localhost:3000

默认账号通常是:

admin / admin

首次登录后会要求修改密码。生产环境不要依赖默认账号密码,至少通过环境变量显式设置:

docker run --rm \
  --name grafana-13-0-3 \
  -p 3000:3000 \
  -e GF_SECURITY_ADMIN_USER=admin \
  -e GF_SECURITY_ADMIN_PASSWORD='change-me-in-real-env' \
  grafana/grafana:13.0.3

这里要替换的是 GF_SECURITY_ADMIN_PASSWORD。如果用于 CI 或临时验证,可以继续使用本地端口;如果部署到共享环境,应接入已有的反向代理、TLS 和认证策略。

Provisioning:让 Dashboard 进入 Git 流程

Provisioning 的价值在于把 Grafana 配置从“点出来的状态”变成“可以审查、回滚、复制的文件”。这次发布提到新文件夹中创建仪表板相关的更新,说明 Grafana 仍在修补自动化创建 Dashboard 时的边界场景。

可以这样实践:用文件 Provisioning 创建一个数据源和一个 Dashboard Provider。下面示例假设 Prometheus 运行在 http://prometheus:9090,Grafana 会从 /var/lib/grafana/dashboards 读取仪表板 JSON。

创建目录:

mkdir -p provisioning/datasources provisioning/dashboards dashboards

创建 Prometheus 数据源:

# provisioning/datasources/prometheus.yaml
apiVersion: 1

datasources:
  - name: Prometheus
    type: prometheus
    access: proxy
    url: http://prometheus:9090
    isDefault: true
    editable: true

创建 Dashboard Provider:

# provisioning/dashboards/dashboards.yaml
apiVersion: 1

providers:
  - name: default-dashboards
    orgId: 1
    folder: Platform
    type: file
    disableDeletion: false
    editable: true
    updateIntervalSeconds: 30
    options:
      path: /var/lib/grafana/dashboards

创建一个最小 Dashboard:

{
  "uid": "platform-overview",
  "title": "Platform Overview",
  "schemaVersion": 39,
  "version": 1,
  "refresh": "30s",
  "panels": [
    {
      "type": "timeseries",
      "title": "Prometheus target up",
      "gridPos": { "x": 0, "y": 0, "w": 12, "h": 8 },
      "targets": [
        {
          "datasource": { "type": "prometheus", "uid": "Prometheus" },
          "expr": "up"
        }
      ]
    }
  ]
}

把上面的 JSON 保存为:

dashboards/platform-overview.json

然后启动 Grafana:

docker run --rm \
  --name grafana-provisioning \
  -p 3000:3000 \
  -v "$PWD/provisioning:/etc/grafana/provisioning" \
  -v "$PWD/dashboards:/var/lib/grafana/dashboards" \
  grafana/grafana:13.0.3

需要注意:这个示例里的 Prometheus 地址适合 Docker Compose 或同网络容器环境。如果你只是单独启动 Grafana,本机 Prometheus 地址可能需要改成 http://host.docker.internal:9090,Linux 环境还可能需要额外配置 host gateway。

升级前的检查清单

对于已经在生产使用 Grafana 的团队,13.0.3 可以按小版本维护升级处理,但仍建议走完整验证链路。

建议检查这些点:

  • 镜像扫描:确认 grafana/grafana:13.0.3 在你的安全基线中没有新增阻断项。
  • 插件兼容:如果使用第三方插件,先在测试环境加载并打开关键 Dashboard。
  • Provisioning 回归:重点验证自动创建文件夹、数据源、Dashboard 的流程。
  • 持久化目录:确认 /var/lib/grafana 的挂载权限没有因为镜像底座变化暴露问题。
  • 告警与通知:升级后手动触发或回放关键告警路径,避免只验证页面展示。

这类版本的采用策略很简单:不要因为它“小”就直接滚生产,也不要因为它不是大版本就长期不升。把 Grafana 镜像、Provisioning 文件和 Dashboard JSON 都纳入版本管理,再用测试环境跑一遍启动和导入流程,13.0.3 这种维护版本就能稳定地进入你的观测平台流水线。


相关推荐