创建周期性使用情况

本页介绍了基础设施运维人员 (IO) 如何创建周期性用量,以管理 Google Distributed Cloud (GDC) 隔离实例的结算费用和服务使用情况信息。

借助 RecurringUsage 资源,您可以定义特定 SKU 在固定且已定义的时间范围内的费用。例如,您订购的服务为期一年,开始和结束时间都在同一年度内。Distributed Cloud 提供基于使用量收费的库存量单位 (SKU),以及不基于使用量收费的 SKU。如需管理每月定期固定费用,请使用 Billing API 中的 RecurringUsage 资源。

确定结算要求

使用 RecurringUsage 资源设置固定费用订阅是一个可选步骤。如需确定结算要求,请考虑以下使用情形:

  • 如果您使用 Google Cloud 结算来跟踪固定费用和账单,则无需在 Distributed Cloud 环境中设置周期性使用费。

  • 如果您想添加每月固定定期费用(例如支持费用),则必须将该定期费用与 SKU(例如支持 SKU)相关联。在这种情况下,您必须继续设置 ReccurringUsage 资源。

准备工作

在继续之前,请确保您已准备好以下内容:

  • 组织管理员集群中的“组织结算查看者”角色。请与您的 Security Admin 联系,让其为您授予 billing-system 命名空间的 Organization Billing Viewer (organization-billing-viewer) 角色。此权限可让您读取相关资源以进行验证。

  • 一个 iac 代码库,其中包含一个 kustomization.yaml 文件和一个 recurringusages 目录,用于存储包含 RecurringUsages 自定义资源的文件。

创建 RecurringUsage 自定义资源

如需创建 RecurringUsage 资源,请完成以下步骤:

  1. 创建一个 YAML 文件,其路径为 infrastructure/zonal/zones/ZONE_NAME/TARGET_CLUSTER/bil/recurringusages/RECURRING_USAGE_NAME.yaml

    执行以下变量替换操作:

    • TARGET_CLUSTER:您有权访问的集群的名称,此处为组织管理员集群。
    • RECURRING_USAGE_NAME:您为 YAML 文件指定的名称。
  2. RecurringUsage 资源中添加以下内容:

    apiVersion: billing.private.gdc.goog/v1alpha1
    kind: RecurringUsage
    metadata:
      name: RECURRING_USAGE_NAME
      namespace: billing-system
    skuDescriptionRef:
      name: SKU_DESCRIPTION_NAME
      namespace: billing-system
    usageQuantity:
      units: UNITS
      nanos: NANOS
    startTime: START_TIME
    endTime: END_TIME
    

    执行以下变量替换操作:

    变量 说明
    RECURRING_USAGE_NAME 要为资源指定的名称。您必须为创建的每个资源指定唯一的名称。如需使名称具有唯一性,请在您为 SKU_DESCRIPTION_NAME 指定的名称后附加时间戳。例如:
    RECURRING_USAGE_NAME=${SKU_DESCRIPTION_NAME}-$(date +"%Y-%m-%d-%H%M%S")
    SKU_DESCRIPTION_NAME 所引用 SKU 说明的名称,即小写形式的 SKU_ID。SKU 说明名称由 12 个小写字母数字字符组成,以短划线分隔,每四个字符一组。例如:0000-ffff-aaaa
    UNITS 使用量的整数单位。例如,如果费用是针对 1.50 个单位的,请将此字段设置为 1,并将 NANOS 字段设置为 500000000
    NANOS 一个完整单位的纳诺。例如,如果费用为 1.50 个单位,请将 UNITS 字段设置为 1,并将此字段设置为 500000000
    START_TIME 开始针对指定 SKU 收费的时间戳。时间戳必须采用 RFC 3339 格式。例如,如果您订购的服务从 01/01/2024 开始,请添加时间戳值 2024-01-01T00:00:00Z

    此字段为可选字段;如果未设置,则在您提交 GitLab 中的合并请求后,系统会立即收取费用。您无法在 GitLab 中提交合并请求之前设置此字段。如果请求的开始时间是过去的时间,请将突发事件上报给 GDC 支持团队。
    END_TIME 结束指定 SKU 的收费的时间戳。时间戳必须采用 RFC 3339 格式。例如,如果您订购的服务从 01/01/2024 开始,到 01/01/2025 结束,请添加时间戳值 2025-01-01T00:00:00Z

    此字段是可选字段,如果未设置,则会继续产生费用。您无法在 GitLab 中提交合并请求之前设置此字段。如果请求的结束时间是过去的时间,请将突发事件上报给 GDC 支持团队。
  3. 将重复使用情况保存并存储在 recurringusages 文件夹中。

  4. 创建包含 YAML 文件以及必需的 kustomization 文件的拉取请求。

  5. 验证 RecurringUsage 自定义资源是否已创建:

    kubectl get recurringusages.billing.private.gdc.goog RECURRING_USAGE_NAME -n billing-system -o yaml
    

    如果您无法创建 RecurringUsage 自定义资源,请按照“IAC-R0001”中的说明进一步调查问题。