定期的な使用量を作成する

このページでは、インフラストラクチャ オペレーター(IO)が定期的な使用量を作成して、Google Distributed Cloud(GDC)エアギャップ インスタンスの課金費用とサービス使用量情報を管理する手順について説明します。

RecurringUsage リソースを使用すると、特定の SKU の料金を一定のタイムラインで定義できます。たとえば、1 年間のサービスを注文し、そのサービスが 1 年の期間内で開始および終了する場合などです。Distributed Cloud には、使用量に基づいて課金される最小管理単位(SKU)と、使用量ベースではない SKU の両方が用意されています。月額の定期的な固定料金を管理するには、Billing APIRecurringUsage リソースを使用します。

請求に関する要件を確認する

RecurringUsage リソースを使用して定額サブスクリプションを設定する手順は省略可能です。請求要件を判断するには、次のユースケースを検討してください。

  • Google Cloud Billing を使用して固定費と請求書発行を追跡する場合は、Distributed Cloud 環境で定期的な使用料金を設定する必要はありません。

  • 月額固定の定期料金(サポート費用など)を追加する場合は、定期料金を SKU(サポート SKU など)に関連付ける必要があります。この場合は、ReccurringUsage リソースの設定に進む必要があります。

始める前に

続行する前に、次の点をご確認ください。

  • 組織管理者クラスタの組織の課金閲覧者ロール。セキュリティ管理者に連絡して、billing-system Namespace の組織の請求先閲覧者(organization-billing-viewer)ロールを付与してもらいます。この権限により、検証に関連するリソースを読み取ることができます。

  • kustomization.yaml ファイルと、RecurringUsages カスタム リソースを含むファイルを保存する recurringusages ディレクトリを含む iac リポジトリ。

RecurringUsage カスタム リソースを作成する

RecurringUsage リソースを作成する手順は次のとおりです。

  1. パス infrastructure/zonal/zones/ZONE_NAME/TARGET_CLUSTER/bil/recurringusages/RECURRING_USAGE_NAME.yaml を含む 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 文字で構成され、4 文字ごとにダッシュで区切られます。例: 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. 必要な kustomization ファイルとともに YAML ファイルを含む pull リクエストを作成します。

  5. RecurringUsage カスタム リソースが作成されていることを確認します。

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

    RecurringUsage カスタム リソースを作成できない場合は、IAC-R0001 の手順に沿って問題を詳しく調査してください。