1.5. 设计您的 Grafana 仪表板


您可以通过创建一个 grafana-dev 实例来设计 Grafana 仪表板。

1.5.1. 设置 Grafana 开发人员实例

首先,克隆 stolostron/multicluster-observability-operator/ 存储库,以便您可以运行 tools 文件夹中的脚本。确保使用最当前的 grafana-dev 实例。

完成以下步骤以设置 Grafana 开发人员实例:

  1. 运行 setup-grafana-dev.sh 来设置 Grafana 实例。运行脚本时,会创建以下资源: secret/grafana-dev-configdeployment.apps/grafana-devservice/grafana-devingress.extensions/grafana-devpersistentvolumeclaim/grafana-dev

    ./setup-grafana-dev.sh --deploy
    secret/grafana-dev-config created
    deployment.apps/grafana-dev created
    service/grafana-dev created
    serviceaccount/grafana-dev created
    clusterrolebinding.rbac.authorization.k8s.io/open-cluster-management:grafana-crb-dev created
    route.route.openshift.io/grafana-dev created
    persistentvolumeclaim/grafana-dev created
    oauthclient.oauth.openshift.io/grafana-proxy-client-dev created
    deployment.apps/grafana-dev patched
    service/grafana-dev patched
    route.route.openshift.io/grafana-dev patched
    oauthclient.oauth.openshift.io/grafana-proxy-client-dev patched
    clusterrolebinding.rbac.authorization.k8s.io/open-cluster-management:grafana-crb-dev patched
    Copy to Clipboard Toggle word wrap
  2. 使用 switch-to-grafana-admin.sh 脚本将用户角色切换到 Grafana 管理员。

    1. 选择 Grafana URL, https://grafana-dev-open-cluster-management-observability.{OPENSHIFT_INGRESS_DOMAIN} 并登录。
    2. 然后,运行以下命令来添加切换的用户作为 Grafana 管理员。例如,在使用 kubeadmin 登录后,运行以下命令:

      ./switch-to-grafana-admin.sh kube:admin
      User <kube:admin> switched to be grafana admin
      Copy to Clipboard Toggle word wrap

Grafana 开发人员实例已设置。

1.5.2. 设计您的 Grafana 仪表板

设置 Grafana 实例后,您可以设计仪表板。完成以下步骤以刷新 Grafana 控制台并设计您的仪表板:

  1. 在 Grafana 控制台中,通过在导航面板中选择 Create 图标来创建仪表板。选择 Dashboard,然后单击 Add new panel
  2. New Dashboard/Edit Panel 视图中导航到 Query 选项卡。
  3. 从数据源选择器中选择 Observatorium 并输入 PromQL 查询来配置查询。
  4. 在 Grafana 仪表板标头中点击仪表板标头中的 Save 图标。
  5. 添加一个描述性名称并点 Save

1.5.2.1. 使用 ConfigMap 设计 Grafana 仪表板

使用 ConfigMap 设计 Grafana 仪表板。您可以使用 generate-dashboard-configmap-yaml.sh 脚本在本地生成仪表板 ConfigMap,并在本地保存 ConfigMap:

./generate-dashboard-configmap-yaml.sh "Your Dashboard Name"
Save dashboard <your-dashboard-name> to ./your-dashboard-name.yaml
Copy to Clipboard Toggle word wrap

如果您没有运行上述脚本的权限,请完成以下步骤:

  1. 选择一个仪表板并点 Dashboard settings 图标。
  2. 在导航框中,点 JSON Model 图标。
  3. 复制仪表板 JSON 数据,并将它粘贴到 data 部分。
  4. 修改 name 并替换 $your-dashboard-name。在 data.$your-dashboard-name.json.$$your_dashboard_jsonuid 项中输入一个 UUID(universally unique identifier)。您可以使用 uuidegen 等程序来创建 UUID。ConfigMap 可能类似以下文件:

    kind: ConfigMap
    apiVersion: v1
    metadata:
      name: $your-dashboard-name
      namespace: open-cluster-management-observability
      labels:
        grafana-custom-dashboard: "true"
    data:
      $your-dashboard-name.json: |-
        $your_dashboard_json
    Copy to Clipboard Toggle word wrap

    备注:

    • 如果在 grafana-dev 实例中创建了仪表板,您可以使用仪表板的名称,并在脚本中将其作为参数传递。例如,在 grafana-dev 实例中创建一个名为 Demo Dashboard 的仪表板。通过 CLI,您可以运行以下脚本:

      ./generate-dashboard-configmap-yaml.sh "Demo Dashboard"
      Copy to Clipboard Toggle word wrap

      运行脚本后,您可能会收到以下信息:

      Save dashboard <demo-dashboard> to ./demo-dashboard.yaml
      Copy to Clipboard Toggle word wrap
    • 如果您的仪表板不在 General 文件夹中,您可以在此 ConfigMap 的 annotations 部分中指定文件夹名称:

      annotations:
        observability.open-cluster-management.io/dashboard-folder: Custom
      Copy to Clipboard Toggle word wrap

      完成 ConfigMap 的更新后,您可以安装它,将仪表板导入到 Grafana 实例。

通过 CLI 或 OpenShift Container Platform 控制台应用 YAML 文件来验证是否已创建 YAML 文件。创建 open-cluster-management-observability 命名空间中的 ConfigMap。通过 CLI 运行以下命令:

oc apply -f demo-dashboard.yaml
Copy to Clipboard Toggle word wrap

在 OpenShift Container Platform 控制台中,使用 demo-dashboard.yaml 文件创建 ConfigMap。控制面板位于 Custom 文件夹中。

1.5.3. 卸载 Grafana 开发者实例

卸载实例时,相关资源也会被删除。运行以下命令:

./setup-grafana-dev.sh --clean
secret "grafana-dev-config" deleted
deployment.apps "grafana-dev" deleted
serviceaccount "grafana-dev" deleted
route.route.openshift.io "grafana-dev" deleted
persistentvolumeclaim "grafana-dev" deleted
oauthclient.oauth.openshift.io "grafana-proxy-client-dev" deleted
clusterrolebinding.rbac.authorization.k8s.io "open-cluster-management:grafana-crb-dev" deleted
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat