Menu Close

5.2. 存储位置

重要

Metering 是一个已弃用的功能。弃用的功能仍然包含在 OpenShift Container Platform 中,并将继续被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。

有关 OpenShift Container Platform 中已弃用或删除的主要功能的最新列表,请参阅 OpenShift Container Platform 发行注记中已弃用和删除的功能部分。

StorageLocation 自定义资源配置 Reporting Operator 存储数据的位置。其中包括从 Prometheus 收集的数据,以及通过生成 Report 自定义资源所产生的结果。

如果您要在多个位置(如多个 S3 存储桶或 S3 和 HDFS)存储数据,或者需要访问并非由 metering 在 Hive 和 Presto 中创建的数据库,您只需配置 StorageLocation 自定义资源。对于大多数用户来说,这不是必须的。有关配置 metering 的文档足以配置所有必要存储组件。

5.2.1. 存储位置示例

以下示例显示了内置的本地存储选项,并配置为使用 Hive。默认情况下,数据存储在 Hive 配置为使用存储的位置,如 HDFS、S3 或 ReadWriteMany 持久性卷声明(PVC)。

本地存储示例

apiVersion: metering.openshift.io/v1
kind: StorageLocation
metadata:
  name: hive
  labels:
    operator-metering: "true"
spec:
  hive: 1
    databaseName: metering 2
    unmanagedDatabase: false 3

1
如果存在 hive 部分,则 StorageLocation 资源将配置为通过使用 Hive 服务器创建表来存储数据至 Presto 中。只有 databaseNameunmanagedDatabase 是必填字段。
2
Hive 中数据库的名称。
3
如果为 true,则 StorageLocation 资源不会被主动管理,Hive 中预期已存在 databaseName。如果为 false,则 Reporting Operator 将在 Hive 中创建数据库。

以下示例将 AWS S3 存储桶用于存储。在构造要使用的路径时,前缀会附加至存储桶名称中。

远程存储示例

apiVersion: metering.openshift.io/v1
kind: StorageLocation
metadata:
  name: example-s3-storage
  labels:
    operator-metering: "true"
spec:
  hive:
    databaseName: example_s3_storage
    unmanagedDatabase: false
    location: "s3a://bucket-name/path/within/bucket" 1

1
可选:用于数据库的 Presto 和 Hive 的文件系统 URL。可为 hdfs://s3a:// 文件系统 URL。

hive 部分还可指定其他一些可选字段: