本文档介绍如何取消或删除未来预留请求。
在未来预留请求达到其锁定时间之前,您可以执行以下操作之一,以阻止 Compute Engine 预配请求的资源:
取消未来预留请求。这对于在创建新请求时保留已取消的请求以供参考非常有用。但是,如果已取消未来预留请求,则您将无法在项目中或与已取消的请求共享的项目中创建属性与该请求匹配的新请求,直到您删除该请求为止。如需了解详情,请参阅创建时的限制。
删除未来预留请求。当您不再需要该请求时,此操作非常有用。删除未来预留请求会永久删除该请求,并会移除对创建新请求的任何限制。
已完成的未来预留达到预留期结束期限后,您可以将其删除,以便移除对创建新请求的任何限制。不过,删除已完成的未来预留不会删除其自动创建的预留。如需在预留期结束后删除自动创建的预留,请参阅删除预留。
准备工作
-
如果您尚未设置身份验证,请进行设置。身份验证用于验证您的身份,以便访问 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
-
安装 Google Cloud CLI。 安装完成后,运行以下命令来初始化 Google Cloud CLI:
gcloud init
如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
- Set a default region and zone.
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭证。
安装 Google Cloud CLI。 安装完成后,运行以下命令来初始化 Google Cloud CLI:
gcloud init
如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
所需的角色
如需获得取消或删除未来预留请求所需的权限,请让您的管理员为您授予项目的 Compute Future Reservation Admin (
roles/compute.futureReservationAdmin
) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。此预定义角色可提供取消或删除未来预留请求所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
取消或删除未来预留请求需要以下权限:
-
取消未来预留:针对项目的
compute.futureReservations.cancel
权限 -
删除未来预留:针对项目的
compute.futureReservations.delete
权限
取消未来预留请求
只有在以下情况下,您才能取消未来预留请求:
请求处于待批准状态或已被拒绝。
请求已获批准,但其状态尚未更改为
PROCURING
。
如需取消未来预留请求,请选择以下选项之一:
gcloud
要取消未来预留请求,请使用
gcloud beta compute future-reservations cancel
命令。gcloud beta compute future-reservations cancel FUTURE_RESERVATION_NAME \ --zone=ZONE
替换以下内容:
FUTURE_RESERVATION_NAME
:现有未来预留请求的名称。ZONE
:未来预留请求所在的可用区。
REST
要取消未来预留请求,请发出针对
beta.futureReservations.cancel
方法的POST
请求。POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME/cancel
替换以下内容:
PROJECT_ID
:未来预留请求所在项目的 ID。ZONE
:未来预留请求所在的可用区。FUTURE_RESERVATION_NAME
:未来预留请求的名称。
删除未来预留请求
只有在以下情况下,您才能删除未来预留请求:
请求尚未达到锁定时间 (
PROCURING
),并且未处于待审批状态。请求已完成,且其预留期已结束。
如需删除待批准的未来预留请求,您必须先取消该请求,然后再将其删除。
删除已完成的未来预留不会删除其自动创建的预留。如需在预留期结束后删除自动创建的预留,请参阅删除预留。
如需同时删除多个未来预留请求,请使用Google Cloud 控制台。否则,如需删除单个未来预留请求,请选择以下任一选项:
控制台
在 Google Cloud 控制台中,前往预留页面。
点击未来预留标签页。
选择您要删除的每个未来预留请求。
点击
删除预留。请点击删除来确认操作。
删除未来预留请求可能最多需要一分钟就能完成。
gcloud
如需删除未来预留请求,请使用
gcloud beta compute future-reservations delete
命令。gcloud beta compute future-reservations delete FUTURE_RESERVATION_NAME \ --zone=ZONE
替换以下内容:
FUTURE_RESERVATION_NAME
:现有未来预留请求的名称。ZONE
:未来预留请求所在的可用区。
REST
如需删除未来预留请求,请发出针对
beta.futureReservations.delete
方法的DELETE
请求。DELETE https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME
替换以下内容:
PROJECT_ID
:未来预留请求所在项目的 ID。ZONE
:未来预留请求所在的可用区。FUTURE_RESERVATION_NAME
:现有未来预留请求的名称。
后续步骤
- 了解如何查看未来预留请求。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-09-05。
-