本文档介绍了如何查看未来预留请求。
查看未来预留请求有助于大致了解项目中的所有未来预留请求,并查看未来预留请求的配置详情。如果您想查看共享未来预留请求,只能使用所有者项目查看。
如需查看为未来预留预配的自动创建的预留,请参阅查看预留。
准备工作
-
设置身份验证(如果尚未设置)。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以按如下方式向 Compute Engine 进行身份验证。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
项目的
compute.futureReservations.list
权限(查看未来预留的列表) -
项目的
compute.futureReservations.get
权限(查看未来预留的详细信息) 如需查看项目中所有未来预留请求的名称、预留时长、状态、总计数和可用区,请查看未来预留请求列表。
如需查看单个未来预留请求的所有配置详情和属性,请查看未来预留请求的详细信息。
PROJECT_ID
:一个或多个未来预留请求所在项目的 ID。ZONE
:一个或多个未来预留请求所在的可用区。PROJECT_ID
:一个或多个未来预留请求所在项目的 ID。FILTER_EXPRESSION
:使用网址编码的过滤条件表达式。例如,如需仅查看在可用区
us-central1-a
中创建、预留了n2-standard-4
机器类型且总计数大于 10 的预留,请指定以下过滤条件表达式:zone=us-central1-a%20AND%20specificSkuProperties.instanceProperties.machineType=n2-standard-4%20AND%20specificSkuProperties.totalCount%3E10
请注意,网址编码的过滤条件表达式表示以下解码后的过滤条件表达式:
zone=us-central1-a AND specificSkuProperties.instanceProperties.machineType=n2-standard-4 AND specificSkuProperties.totalCount>10
在 Google Cloud 控制台中,转到预留页面。
点击未来预留标签页。
在名称列中,点击要查看其详细信息的未来预留请求的名称。
系统会打开未来预留页面,其中包含未来预留请求的详细信息。
FUTURE_RESERVATION_NAME
:现有未来预留请求的名称。ZONE
:未来预留请求所在的可用区。PROJECT_ID
:未来预留请求所在项目的 ID。ZONE
:未来预留请求所在的可用区。FUTURE_RESERVATION_NAME
:现有未来预留请求的名称。在 Google Cloud 控制台中,转到预留页面。
点击未来预留标签页。
对于每项未来预留请求,您可以确定以下内容:
在总计数列中,显示请求的总计数。
在匹配的数量列中,显示虚拟机属性与请求匹配的正在运行的虚拟机和预留的数量。
通过从总计数列的值中减去匹配的数量列的值,您可以确定 Compute Engine 将在未来预留请求的开始时间预配的虚拟机数量。如果您在匹配的数量列中看到警告,则可能是由于以下某种原因:
匹配的数量的值为零。在这种情况下,您的项目中没有匹配的正在运行的虚拟机或预留。
匹配的数量的值等于总计数。在这种情况下,Compute Engine 不会为未来的预留请求预配任何预留虚拟机。
如果您修改未来预留请求,或者创建具有与请求匹配的虚拟机属性的新虚拟机或预留,Compute Engine 会在 30 分钟内更新匹配数量列中的值。如需验证匹配的数量列上次更新的时间,请查看请求的详细信息,然后检查上次匹配用法评估时间行中的值。
可选:如需更改未来预留请求中的预留虚拟机数量,请修改未来预留请求。
在输出中,从
totalCount
字段中减去existingMatchingUsageInfo
字段的值。如果existingMatchingUsageInfo.count
的值等于totalCount
,则 Compute Engine 不会为未来的预留请求预配任何预留虚拟机。如果您修改未来预留请求,或者创建具有与请求匹配的虚拟机属性的新虚拟机或预留,Compute Engine 会在 30 分钟内更新
existingMatchingUsageInfo
字段。如需验证该字段的上次更新时间,请检查existingMatchingUsageInfo.timestamp
字段的值。可选:如需更改未来预留请求中的预留虚拟机数量,请修改未来预留请求。
在输出中,从
totalCount
字段中减去existingMatchingUsageInfo
字段的值。如果existingMatchingUsageInfo.count
的值等于totalCount
,则 Compute Engine 不会为未来的预留请求预配任何预留虚拟机。如果您修改未来预留请求,或者创建具有与请求匹配的虚拟机属性的新虚拟机或预留,Compute Engine 会在 30 分钟内更新
existingMatchingUsageInfo
字段。如需验证该字段的上次更新时间,请检查existingMatchingUsageInfo.timestamp
字段的值。可选:如需更改未来预留请求中的预留虚拟机数量,请修改未来预留请求。
了解如何修改未来预留请求。
了解如何取消或删除未来预留请求。
到预留期的开始时间后,您就可以了解如何使用自动创建预留。
预留期结束时间之后,了解如何执行以下操作:
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
所需的角色
如需获得查看未来预留请求所需的权限,请让您的管理员为您授予项目的 Compute Future Reservation Viewer (
roles/compute.futureReservationViewer
) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。此预定义角色包含查看未来预留请求所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
必须拥有以下权限才能查看未来预留请求:
查看未来预留请求
根据您要在未来预留请求中查看的详细信息,使用以下方法之一:
查看未来预留请求列表
查看未来预留请求列表时,您可以使用过滤表达式来缩小结果范围。如需使用更高级的过滤表达式,请使用 gcloud CLI 或 REST。
如需查看项目中的未来预留请求列表,请选择以下选项之一:
控制台
gcloud
如需查看未来预留请求列表,请使用
gcloud beta compute future-reservations list
命令。gcloud beta compute future-reservations list
输出类似于以下内容:
NAME: fr-04 TOTAL_COUNT: 100 START_TIME: 2025-07-20T07:00:00Z END_TIME: 2025-08-05T07:00:00Z PROCUREMENT_STATUS: FULFILLED ZONE: us-east1-a NAME: fr-05 TOTAL_COUNT: 10 START_TIME: 2025-07-20T07:00:00Z END_TIME: 2025-12-01T00:00:00Z PROCUREMENT_STATUS: PENDING_APPROVAL ZONE: us-west1-c
(可选)如需根据过滤表达式过滤未来预留请求,请添加
--filter
标志。gcloud beta compute future-reservations list \ --filter="FILTER_EXPRESSION"
将
FILTER_EXPRESSION
替换为过滤表达式。例如,如需仅查看在可用区
us-central1-a
中创建的未来预留、指定n2-standard-4
机器类型且总计数大于 10,请指定以下过滤条件表达式:zone=us-central1-a AND specificSkuProperties.instanceProperties.machineType=n2-standard-4 AND specificSkuProperties.totalCount>10
REST
如需查看未来预留请求列表,请向
beta.futureResevations.list
方法发出GET
请求。GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
请替换以下内容:
输出类似于以下内容:
{ "id": "projects/my-project/zones/us-east1-a/futureReservations", "items": [ { "id": "743865190848184978", "creationTimestamp": "2025-03-23T18:16:45.274-07:00", "selfLink": "https://www.googleapis.com/compute/beta/projects/my-project/zones/us-east1-a/futureReservations/fr-base", "selfLinkWithId": "https://www.googleapis.com/compute/beta/projects/my-project/zones/us-east1-a/futureReservations/743865190848184978", "zone": "https://www.googleapis.com/compute/beta/projects/my-project/zones/us-east1-a", "name": "fr-base", "specificSkuProperties": { "instanceProperties": { "machineType": "n1-standard-1" }, "totalCount": "100" }, "planningStatus": "SUBMITTED", "timeWindow": { "endTime": "2025-05-02T01:00:00Z", "startTime": "2025-04-30T17:30:00Z" }, "status": { "procurementStatus": "FULFILLED", "lockTime": "2025-03-30T07:00:00Z", "existingMatchingUsageInfo": { "count": "3", "timestamp": "2025-03-30T01:00:00Z" } }, "kind": "compute#futureReservation" }, ... ], "selfLink": "https://www.googleapis.com/compute/beta/projects/my-project/zones/us-east1-a/futureReservations", "etag": "AnzKY34l-cvvV-JnniESJ0dtQvQ=/hvc4jaHpxFAZmOt1FVtKNgzZu-M=", "kind": "compute#futureReservationsListResponse" }
(可选)如需根据过滤表达式过滤未来预留请求,请添加
filter
查询参数。GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/aggregated/futureReservations?filter=FILTER_EXPRESSION
替换以下内容:
查看未来预留请求的详细信息
如需查看未来预留请求的详细信息,请选择以下选项之一:
控制台
gcloud
如需查看未来预留请求的详细信息,请使用
gcloud beta compute future-reservations describe
命令。gcloud beta compute future-reservations describe FUTURE_RESERVATION_NAME \ --zone=ZONE
请替换以下内容:
输出类似于以下内容:
autoCreatedReservationsDeleteTime: '2025-05-02T01:00:00Z' creationTimestamp: '2025-03-23T10:08:31.613-07:00' id: '5212276518668495076' kind: compute#futureReservation name: fr-01 planningStatus: SUBMITTED selfLink: https://www.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations/fr-01 selfLinkWithId: https://www.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations/5212276518668495076 shareSettings: shareType: LOCAL specificSkuProperties: instanceProperties: machineType: n1-standard-64 totalCount: '800' status: existingMatchingUsageInfo: count: '3' timestamp: '2025-03-30T01:00:00Z' lockTime: '2025-03-30T17:09:59.297799Z' procurementStatus: APPROVED timeWindow: endTime: '2025-05-02T01:00:00Z' startTime: '2025-04-30T17:30:00Z' zone: https://www.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a
REST
如需查看未来预留请求的详细信息,请向
beta.futureReservations.get
方法发出GET
请求。GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME
请替换以下内容:
输出类似于以下内容:
{ "autoCreatedReservationsDeleteTime": "2025-05-02T01:00:00Z", "creationTimestamp": "2025-03-23T10:08:31.613-07:00", "id": "5212276518668495076", "kind": "compute#futureReservation", "name": "fr-01", "planningStatus": "SUBMITTED", "selfLink": "https://www.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations/fr-01", "selfLinkWithId": "https://www.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations/5212276518668495076", "shareSettings": { "shareType": "LOCAL" }, "specificSkuProperties": { "instanceProperties": { "machineType": "n1-standard-64" }, "totalCount": "800" }, "status": { "lockTime": "2025-03-30T17:09:59.297799Z", "procurementStatus": "APPROVED", "existingMatchingUsageInfo": { "count": "3", "timestamp": "2025-03-30T01:00:00Z" } }, "timeWindow": { "endTime": "2025-05-02T01:00:00Z", "startTime": "2025-04-30T17:30:00Z" }, "zone": "https://www.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a" }
确定已预配的虚拟机数量
创建未来预留请求后,您可以查看项目(或与其共享未来预留请求的项目)中运行的虚拟机和未使用的预留数量是否与请求中指定的虚拟机属性匹配。通过将此数字从您在请求中指定的总数中减去,您可以确定 Compute Engine 在您的请求获得批准并达到其开始时间后将预配多少个虚拟机。
如需同时确定多个未来预留请求的预配虚拟机数量,请使用 Google Cloud 控制台。否则,如需确定单个请求预配的虚拟机数量,请选择以下任一选项:
控制台
gcloud
REST
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-12-03。
-