第 3 章 升级 metering

您可以通过更新 Metering Operator 订阅将 metering 升级到 4.4。

注意

OpenShift Container Platform 4.4.13 及更新版本支持升级 Metering Operator。

3.1. 先决条件

  • 集群更新至 4.4。
  • Metering Operator 从 OperatorHub 安装。

    注意

    您必须手动将 Metering Operator 升级到 4.4。如果您在以前的安装中选择了"Automatic" 批准策略,则 metering 不会自动升级。

  • 配置了 MeteringConfig
  • 已安装 metering 堆栈
  • 通过检查所有 Pod 就绪,确保 metering 处于健康状态。
重要

如果在安装或升级 metering 后修改 metering 存储配置,可能会发生潜在的数据丢失的问题。

流程

  1. 在 web 控制台中,点 OperatorsInstalled Operators
  2. 选择 openshift-metering 项目:
  3. Metering Operator
  4. SubscriptionChannel
  5. Change Subscription Update Channel 窗口中,选择 4.4 并点 Save

    注意

    在继续执行下一步前,等待几秒钟以允许更新订阅。

  6. OperatorsInstalled Operators

    Metering Operator 显示为 4.4。例如:

    Metering
    4.4.0-202007012112.p0 provided by Red Hat, Inc

验证

您可以通过执行以下任一方式来验证 metering 的升级:

  • 检查新的 metering 版本中的 Metering Operator ClusterServiceVersion(CSV)。这可以通过 web 控制台或 CLI 完成。

    流程 (UI)

    1. 进入 metering 命名空间中的 OperatorsInstalled Operators
    2. Metering Operator
    3. Subscription 查看 Subscription Details
    4. 检查 Installed Version 是否是已升级的 metering 版本。Starting Version 显示升级前的版本。

    流程 (CLI)

    • 检查 Metering Operator CSV:

      $ oc get csv | grep metering

      在以下示例中,4.4 Metering Operator 升级成功,并替换了 4.3 metering 系统:

      NAME                                        DISPLAY                  VERSION                 REPLACES                               PHASE
      metering-operator.4.4.0-202007012112.p0     Metering                 4.4.0-202007012112.p0   metering-operator.4.3.0-202005252114   Succeeded
  • 检查是否已创建 openshift-metering 命名空间中所需的所有 Pod。这可以通过 web 控制台或 CLI 完成。

    注意

    很多 Pod 在就绪前需要依靠其他组件才能发挥作用。如果其他 Pod 需要很长时间才能启动,则一些 Pod 可能会重启。这个情况可能会在 Metering Operator 升级过程中发生。

    流程 (UI)

    • 在 metering 命名空间中导航至 WorkloadsPods,验证是否已创建 Pod。升级 metering 堆栈后可能需要几分钟时间。

    流程 (CLI)

    • 检查是否在 openshift-metering 命名空间中创建了所有必需的 Pod:

      $ oc -n openshift-metering get pods

      输出显示所有 Pod 在 Ready 列中被创建:

      NAME                                  READY   STATUS    RESTARTS   AGE
      hive-metastore-0                      2/2     Running   0          3m28s
      hive-server-0                         3/3     Running   0          3m28s
      metering-operator-68dd64cfb6-2k7d9    2/2     Running   0          5m17s
      presto-coordinator-0                  2/2     Running   0          3m9s
      reporting-operator-5588964bf8-x2tkn   2/2     Running   0          2m40s
  • 验证 ReportDataSources 是否导入新数据,该数据由最新 METRIC 栏中的有效时间戳指示。这可能需要几分钟。过滤掉未不会导入数据的带有“-raw”的 ReportDataSources

    $ oc get reportdatasources -n openshift-metering | grep -v raw

    NEWEST METRIC 栏中的时间戳代表ReportDataSources 开始导入新数据:

    NAME                                         EARLIEST METRIC        NEWEST METRIC          IMPORT START           IMPORT END             LAST IMPORT TIME       AGE
    node-allocatable-cpu-cores                   2020-05-18T21:10:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:56:44Z   23h
    node-allocatable-memory-bytes                2020-05-18T21:10:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:52:07Z   23h
    node-capacity-cpu-cores                      2020-05-18T21:10:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:56:52Z   23h
    node-capacity-memory-bytes                   2020-05-18T21:10:00Z   2020-05-19T19:57:00Z   2020-05-18T19:10:00Z   2020-05-19T19:57:00Z   2020-05-19T19:57:03Z   23h
    persistentvolumeclaim-capacity-bytes         2020-05-18T21:09:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:56:46Z   23h
    persistentvolumeclaim-phase                  2020-05-18T21:10:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:52:36Z   23h
    persistentvolumeclaim-request-bytes          2020-05-18T21:10:00Z   2020-05-19T19:57:00Z   2020-05-18T19:10:00Z   2020-05-19T19:57:00Z   2020-05-19T19:57:03Z   23h
    persistentvolumeclaim-usage-bytes            2020-05-18T21:09:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:52:02Z   23h
    pod-limit-cpu-cores                          2020-05-18T21:10:00Z   2020-05-19T19:57:00Z   2020-05-18T19:10:00Z   2020-05-19T19:57:00Z   2020-05-19T19:57:02Z   23h
    pod-limit-memory-bytes                       2020-05-18T21:10:00Z   2020-05-19T19:58:00Z   2020-05-18T19:11:00Z   2020-05-19T19:58:00Z   2020-05-19T19:59:06Z   23h
    pod-persistentvolumeclaim-request-info       2020-05-18T21:10:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:52:07Z   23h
    pod-request-cpu-cores                        2020-05-18T21:10:00Z   2020-05-19T19:58:00Z   2020-05-18T19:11:00Z   2020-05-19T19:58:00Z   2020-05-19T19:58:57Z   23h
    pod-request-memory-bytes                     2020-05-18T21:10:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:55:32Z   23h
    pod-usage-cpu-cores                          2020-05-18T21:09:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:54:55Z   23h
    pod-usage-memory-bytes                       2020-05-18T21:08:00Z   2020-05-19T19:52:00Z   2020-05-18T19:11:00Z   2020-05-19T19:52:00Z   2020-05-19T19:55:00Z   23h
    report-ns-pvc-usage                                                                                                                                             5h36m
    report-ns-pvc-usage-hourly

当所有 Pod 就绪,且验证了数据已可以被导入后,就可以开始使用 metering 来收集数据并对集群进行报告。查看之前 调度的报告 或创建 运行一次的 metering 报告来确认 metering 的升级。