第 3 章 启用 3scale API 管理监控


您可以使用 Prometheus 和 Grafana operator 启用 Red Hat 3scale API Management 监控。Prometheus 是一个开源监控和警报工具,用于实时从应用程序和基础架构收集和分析指标。Grafana 是一个开源分析和视觉化平台,用于在可自定义仪表板中显示和监控来自不同源的实时数据。

重要
  • 在 OpenShift 4.16 及之后的版本中弃用了 Grafana 4 后,说明被分成两个部分:

    • 对于 OpenShift 4.15 及更早版本。
    • 对于 OpenShift 4.16 及更新的版本。
  • Grafana 5 在 OpenShift 4.14 或更高版本中提供,并由 3scale 2.15 操作器支持。建议尽可能使用 Grafana 5。
  • 红帽对 Prometheus 和 Grafana 的支持仅限于红帽产品文档中提供的配置建议。
  • 3scale 操作器创建监控资源,但不会阻止修改这些资源。
  • 您必须在同一命名空间中安装 3scale operator 和 Prometheus Operator,或使用集群范围的 Operator。

还涵盖了从 Grafana 4 迁移到 Grafana 5 的步骤。

先决条件

  • 已安装 3scale operator
  • Prometheus Operator 从 OperatorHub 安装。您可以使用 Prometheus operator 来创建和管理 Prometheus 实例。它提供 3scale 监控所需的 Prometheus 自定义资源定义(CRD)。

    根据您的 OpenShift Container Platform (OCP)版本,以下 Prometheus operator 版本与 3scale 兼容:

    • 带有 OCP 4.15 或更早版本的最新 Prometheus community operator。
    • 带有 OCP 4.16 或更高版本的最新 Prometheus community operator。
  • Grafana Operator 从 OperatorHub 安装。您可以使用 Grafana operator 来创建和管理 Grafana 实例。它提供 3scale 监控所需的 GrafanaDashboard CRD。

    根据您的 OCP 版本,以下 Grafana Operator 版本与 3scale 兼容:

    • Grafana 社区 operator 4 带有 OCP 4.15 或更早版本。
    • Grafana 社区 operator 5 带有 OCP 4.16 或更高版本。
重要

如果您的集群在互联网上公开,请确保保护 Prometheus 和 Grafana 服务。

本节论述了如何启用对 3scale 实例的监控,以便您可以查看 Grafana 仪表板。

3.1. 将 Grafana 4 和 Prometheus 配置为 OCP 4.15

为 OpenShift Container Platform (OCP)版本配置 Grafana 和 Prometheus,最多为 4.15 版本。本指南介绍了如何设置这些工具来监控 3scale 环境,确保您获得实时见解和数据视觉化。

流程

  1. OperatorHub 安装 Grafana 4 社区 Operator。

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

      重要

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

    • 导航到 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 社区操作器。

    • 使用您的 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 operator 的项目。
      2. Subscribe.
      3. 单击 Approve
  3. 通过将 3scale 部署 YAML 的 spec.monitoring.enabled 参数设置为 true 来启用监控。例如:

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

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

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

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

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

    $ oc create token prometheus-monitoring
    Copy to Clipboard

    当此令牌过期时,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
    Copy to Clipboard
  9. 部署 Prometheus。

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

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

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

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

    $ oc apply -f datasource-v4.yaml
    Copy to Clipboard
  13. 部署 Grafana

    $ oc apply -f grafana-v4.yaml
    Copy to Clipboard

其他资源

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat