如何使用 Side car 部署 Grafana 仪表板并将仪表板与特定仪表板文件夹分组

Dil*_*ndo 3 grafana kubernetes

您能否告诉我,我应该如何部署带有 sidecar 的 grafana 仪表板并将其放置/分组到特定的仪表板文件夹中?

示例(Mongo DB 仪表板位于 Mongo 文件夹中,Postgres 位于 Postgres 文件夹中)。请注意,我不是在谈论文件位置( /tmp/dashboards )。

我正在使用grafana稳定的HELM图表和最新版本的grafana(版本6.4.2)

我正在使用 k8s configmap 部署 JSON 仪表板,并使用 sidecar 仪表板标签来标记配置映射。部署后,它始终会转到默认的“常规”仪表板文件夹。

HRLM 值

  sidecar:
    dashboards:
      enabled: true
      label: grafana_dashboard
Run Code Online (Sandbox Code Playgroud)

谢谢

tou*_*med 7

您可以将仪表板提供程序添加到值文件中,并为每个文件夹指定自定义配置。

您可以检查 Grafana 图表的默认值以查找示例

应该dashboardProviders在下面grafana,与 相同的缩进sidecar

例子 :

grafana:
  dashboardProviders:
    dashboardproviders.yaml:
      apiVersion: 1
      providers:
      - name: folder1
        orgId: 1
        type: file
        folder: folder1
        allowUiUpdates: true
        disableDeletion: false
        updateIntervalSeconds: 10
        editable: true
        options:
          path: /tmp/dashboards/folder1
      - name: folder2
        orgId: 1
        type: file
        folder: folder2
        allowUiUpdates: true
        disableDeletion: false
        updateIntervalSeconds: 10
        editable: true
        options:
          path: /tmp/dashboards/folder2
      - name: folder3
        orgId: 1
        type: file
        folder: folder3
        allowUiUpdates: true
        disableDeletion: false
        updateIntervalSeconds: 10
        editable: true
        options:
          path: /tmp/dashboards/folder3
Run Code Online (Sandbox Code Playgroud)

然后,您可以向每个仪表板配置映射添加注释,以告诉 Helm Chart 将这些仪表板放置在何处:

apiVersion: v1
kind: ConfigMap
metadata:
  name: name-of-dashboard
  labels:
    grafana_dashboard: "1" #
  annotations:
    k8s-sidecar-target-directory: /tmp/dashboards/folder1
Run Code Online (Sandbox Code Playgroud)

此注释将告诉 helm 将目标仪表板放置在 /tmp/dashboards/folder1 下,以便它们可以由folder1 提供程序管理。