3.2. 为 OCP 4.16 配置 Grafana 和 Prometheus


为 OpenShift Container Platform (OCP) 4.16 配置 Grafana 和 Prometheus。本指南涵盖了为 OCP 4.16 设置监控和数据视觉化的步骤。

流程

  1. OperatorHub 安装 Grafana 5 社区 Operator。

    • 使用您的 OpenShift 管理员凭证登录到 OpenShift Container Platform (OCP)。
    • 从您要安装 Grafana community operator 的 Project 列表中选择项目。
    • 导航到 Operators > OperatorHub
    • 搜索 "grafana" 并点 Grafana Operator
    • 在 Grafana Community Operator 页面中点 Install。此时会显示 Create Operator Subscription 页面。完成以下步骤以创建 Grafana operator 订阅:

      1. A specific namespace on the cluster,选择您要安装 Grafana community Operator 的项目。
      2. Subscribe.
      3. 单击 Approve
  2. OperatorHub 安装最新的 Prometheus community Operator。

    • 使用您的 OpenShift 管理员凭证登录到 OpenShift Container Platform (OCP)。
    • 从您要安装 Prometheus community operator 的 Project 列表中选择项目。

      重要

      在安装 3scale Operator 的同一项目中安装 Prometheus community Operator。

    • 导航到 Operators > OperatorHub
    • 搜索 "prometheus" 并单击 Prometheus Operator
    • 在 Prometheus Community Operator 页面中点 Install。此时会显示 Create Operator Subscription 页面。完成以下步骤以创建 Prometheus operator 订阅:

      1. A specific namespace on the cluster,再选择您要安装 Prometheus community Operator 的项目。
      2. Subscribe.
      3. 单击 Approve
  3. 通过将 3scale 部署 YAML 的 spec.monitoring.enabled 参数设置为 true 来启用监控。例如:

    apiVersion: apps.3scale.net/v1alpha1
    kind: APIManager
    metadata: ...
    spec:
      monitoring:
        enabled: true
      ...
    1. 登录您的 OpenShift 集群。您必须以具有 edit 集群角色的用户身份在 3scale 的 OpenShift 项目中(如 cluster-admin) 登录。

      $ oc login
    2. 切换到 3scale 项目。

      $ oc project <project_name>
  4. 为 Prometheus 创建新服务帐户:

    $ oc create serviceaccount prometheus-monitoring
  5. 创建一个 ClusterRoleBinding,为 Prometheus ServiceAccount 提供提取指标所需的基于角色的访问控制(RBAC)权限。在创建 ClusterRoleBinding 前更新 ServiceAccount 命名空间:

    $ oc adm policy add-cluster-role-to-user cluster-monitoring-view -z prometheus-monitoring -n "<3scale_namespace>"
  6. prometheus-monitoring ServiceAccount 创建令牌:

    $ oc create token prometheus-monitoring

    当此令牌过期时,Prometheus 会丢失对所需资源的访问。添加- duration X[s|m|h] 以指定令牌有效的时间。

  7. 使用生成的令牌更新文件 3scale-scrape-configs.yaml bearer_token 字段。
  8. 创建 additional-scrape-config secret:

    $ oc create secret generic additional-scrape-configs --from-file=3scale-scrape-configs.yaml=./3scale-scrape-configs.yaml
  9. 部署 Prometheus。

    • 在 Prometheus.yaml 文件中,使用外部 URL 填写 spec.externalUrl 字段。URL 模板应该是:

      spec:
        ...
        externalUrl: https://prometheus.<namespace-name>.apps.<cluster-domain>
  10. 部署 Prometheus 服务器:

    $ oc apply -f prometheus.yaml
  11. 创建 Prometheus 路由:

    $ oc expose service prometheus-operated --hostname prometheus.<namespace-name>.apps.<cluster-name>
  12. 部署 Grafana 数据源:

    $ oc apply -f datasource-v5.yaml
  13. 部署 Grafana:

    $ oc apply -f grafana-v5.yaml
  14. 公开 grafana 路由:

    $ oc expose service example-grafana-service
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部