查看基于资源的承诺

Compute Engine 允许您查看所有已购买的基于资源的承诺的列表,或检索特定承诺的详细属性。

您可以使用 Google Cloud 控制台、gcloud CLI 或 REST 查看这些承诺。

准备工作

  • 如果您尚未设置身份验证,请进行设置。身份验证用于验证您的身份,以便访问 Google Cloud 服务和 API。如需从本地开发环境运行代码或示例,您可以通过选择以下选项之一向 Compute Engine 进行身份验证:

    选择标签页以了解您打算如何使用本页面上的示例:

    控制台

    当您使用 Google Cloud 控制台访问 Google Cloud 服务和 API 时,无需设置身份验证。

    gcloud

    1. 安装 Google Cloud CLI。 安装完成后,运行以下命令来初始化 Google Cloud CLI:

      gcloud init

      如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。

  • 设置默认区域和可用区。
  • REST

    如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭证。

      安装 Google Cloud CLI。

      如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。

    如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。

所需的角色

如需获得查看基于资源的承诺所需的权限,请让管理员向您授予项目的 Compute Viewer (roles/compute.viewer) 或 Compute Admin (roles/compute.admin) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

此预定义角色包含查看基于资源的承诺所需的 compute.commitments.get 和 compute.commitments.list 权限。

您也可以使用自定义角色或其他预定义角色来获取此权限。

查看承诺列表

您可以使用Google Cloud 控制台、gcloud CLI 或 REST 查看项目中的所有承诺的列表。

控制台

  1. 在 Google Cloud 控制台中,前往承诺使用折扣页面。 转到“承诺使用折扣”

  2. 如需查看特定类别的承诺列表,请选择以下标签页之一:

    • 硬件承诺:选择此标签页可查看硬件资源(例如 vCPU、内存、GPU、本地 SSD 磁盘和单租户节点)的承诺。
    • 软件许可承诺:选择此标签页可查看操作系统许可的承诺。
    • 块存储承诺:选择此标签页可查看 Exapool 容量的承诺。

gcloud

如需列出特定区域中的所有承诺,请使用 gcloud compute commitments list 命令:

gcloud compute commitments list \
    --regions=REGION \
    --project=PROJECT_ID

替换以下内容:

  • REGION:您要查看其承诺的区域。
  • PROJECT_ID:项目 ID。

示例

例如,如需使用 project-list-example 项目列出 us-central1 区域内的承诺,请运行以下命令:

gcloud compute commitments list \
    --regions=us-central1 \
    --project=project-list-example

REST

如需列出特定区域中的承诺,请向 regionCommitments.list 方法发出 GET 请求:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments

如需列出项目中所有区域的承诺,请向 regionCommitments.aggregatedList 方法发出 GET 请求:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/commitments

替换以下内容:

  • PROJECT_ID:要查看其承诺的项目的项目 ID。
  • REGION:您要查看其承诺的区域。

查看特定承诺的详细信息

您可以查看承诺的详细属性,例如:

  • 状态
  • 承诺方案
  • 承诺开始时间和结束时间
  • 自动续订设置
  • 承诺的资源类型和数量

您可以使用 Google Cloud 控制台、gcloud CLI 或 REST 查看承诺。

控制台

  1. 在 Google Cloud 控制台中,前往承诺使用折扣页面。 转到“承诺使用折扣”

  2. 选择要查看的承诺类别对应的标签页:

    • 如需查看硬件资源的承诺,请点击硬件承诺标签页。硬件承诺涵盖 vCPU、内存、GPU、本地 SSD 磁盘和单租户节点。
    • 如需查看付费软件许可的承诺,请选择软件许可承诺标签页。许可承诺涵盖操作系统 (OS) 许可,例如 SUSE Linux Enterprise Server (SLES)、SLES for SAP 或 Red Hat Enterprise Linux (RHEL)。
    • 如需查看网络附加存储池的承诺,请选择块存储承诺标签页。块存储承诺涵盖 Exapool 容量。
  3. 如需查看承诺的详情页面,请点击承诺的名称。

gcloud

如需描述特定承诺,请使用 gcloud compute commitments describe 命令:

gcloud compute commitments describe COMMITMENT_NAME \
    --region=REGION \
    --project=PROJECT_ID

替换以下内容:

  • COMMITMENT_NAME:承诺的名称。
  • REGION:承诺所在的区域。
  • PROJECT_ID:项目 ID。

示例

以下示例介绍了 myproject 项目和 us-central1 区域中的承诺。

示例 1:描述硬件承诺

如需描述现有硬件承诺 (example-hardware-commitment),请运行以下命令:

gcloud compute commitments describe example-hardware-commitment \
    --region=us-central1 \
    --project=myproject

该命令会返回承诺的属性,类似于以下内容:

autoRenew: true
category: MACHINE
creationTimestamp: '2025-05-15T09:30:00.000-07:00'
endTimestamp: '2026-05-15T09:30:00.000-07:00'
kind: compute#commitment
name: example-hardware-commitment
plan: TWELVE_MONTH
region: https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1
resources:
- amount: '4'
  type: VCPU
- amount: '16384'
  type: MEMORY
status: ACTIVE
type: GENERAL_PURPOSE

示例 2:描述块存储承诺

如需描述现有块存储承诺 (example-block-storage-commitment),请运行 gcloud beta compute commitments describe 命令:

gcloud beta compute commitments describe example-block-storage-commitment \
    --region=us-central1 \
    --project=myproject

该命令会返回承诺的属性,从而建立承诺与 Exapool 的关系,类似于以下内容:

autoRenew: true
category: PERSISTENT_DISK
creationTimestamp: '2025-08-20T14:45:00.000-07:00'
endTimestamp: '2026-08-20T14:45:00.000-07:00'
kind: compute#commitment
name: example-block-storage-commitment
persistentDiskResources:
- amount: '102400'
  dimensionType: CAPACITY_OPTIMIZED
  productType: HYPERDISK_EXAPOOL_BALANCED
plan: TWELVE_MONTH
region: https://www.googleapis.com/compute/beta/projects/myproject/regions/us-central1
status: ACTIVE

REST

向 regionCommitments.get 方法发出 GET 请求:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments/COMMITMENT_NAME

替换以下内容:

  • PROJECT_ID:您的项目的项目 ID。
  • REGION:购买承诺的区域。
  • COMMITMENT_NAME:承诺的名称。

示例

以下示例检索 myproject 项目和 us-central1 区域中的承诺的详细信息。

示例 1:描述硬件承诺

如需检索硬件承诺 (example-hardware-commitment) 的属性,请发出以下 GET 请求:

GET https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/commitments/example-hardware-commitment

响应包含硬件承诺的属性,类似于以下输出:

{
  "autoRenew": true,
  "category": "MACHINE",
  "creationTimestamp": "2025-05-15T09:30:00.000-07:00",
  "endTimestamp": "2026-05-15T09:30:00.000-07:00",
  "kind": "compute#commitment",
  "name": "example-hardware-commitment",
  "plan": "TWELVE_MONTH",
  "region": "https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1",
  "resources": [
    {
      "amount": "4",
      "type": "VCPU"
    },
    {
      "amount": "16384",
      "type": "MEMORY"
    }
  ],
  "status": "ACTIVE",
  "type": "GENERAL_PURPOSE"
}

示例 2:描述块存储承诺

如需检索块存储承诺 (example-block-storage-commitment) 的属性,请向 beta regionCommitments.get 方法发出以下 GET 请求:

GET https://compute.googleapis.com/compute/beta/projects/myproject/regions/us-central1/commitments/example-block-storage-commitment

响应包含表示块存储承诺容量的属性,类似于以下 JSON 输出:

{
  "autoRenew": true,
  "category": "PERSISTENT_DISK",
  "creationTimestamp": "2025-08-20T14:45:00.000-07:00",
  "endTimestamp": "2026-08-20T14:45:00.000-07:00",
  "kind": "compute#commitment",
  "name": "example-block-storage-commitment",
  "persistentDiskResources": [
    {
      "amount": "102400",
      "dimensionType": "CAPACITY_OPTIMIZED",
      "productType": "HYPERDISK_EXAPOOL_BALANCED"
    }
  ],
  "plan": "TWELVE_MONTH",
  "region": "https://www.googleapis.com/compute/beta/projects/myproject/regions/us-central1",
  "status": "ACTIVE"
}