手动启动主机维护事件

本页介绍了如何在受支持的 TPU 虚拟机上手动启动主机维护事件。这对于可能受性能下降或宕机影响的工作负载非常有用,因为您需要维护窗口在特定时间开始。

手动启动维护事件后,主机维护事件会立即启动。您无法为维护事件指定开始日期或时间。如果您不使用此功能,则维护事件会在即将进行的维护通知中所示的时间进行。

如需了解如何在 GKE 中手动为 TPU 启动维护,请参阅管理 GPU 和 TPU 的 GKE 节点中断

限制

只有在 TPU v6e 虚拟机具有以下配置时,您才能手动启动主机维护事件:

  • 拓扑配置为 2x4(如果使用 Cloud TPU API 中的加速器类型字段,则为 v6e-8)或更高的 TPU v6e 虚拟机
  • 包含 2x4 或更大 TPU v6e 虚拟机的 GKE 多主机节点池

立即针对较大的 Slice 启动主机维护可能会导致 Slice 最多停用数小时。通常,主机维护事件会导致系统尽快将 slice 重新调度到另一组符合条件的主机,但对于较大的主机维护事件请求,系统可能没有足够的容量来立即重新调度 slice,导致等待时间更长。

此外,在 Cloud TPU 切片上发起维护操作将会启动对所有底层 TPU 虚拟机的维护。如果您使用 Instances API 直接对其中一个实例执行维护,Cloud TPU 切片中的所有实例都将进入维护状态。请改用 queued-resources Cloud TPU API 指定应对哪些节点执行维护。

手动启动主机维护事件

您可以使用维护通知来确定何时可以在 TPU 上手动启动维护事件。

查看通知信息

您可以使用 Cloud TPU API 或通过查询虚拟机上的元数据服务器来查找有关即将进行的维护事件的通知。如需了解详情,请参阅查看维护通知

当 TPU 上显示即将进行的主机维护通知时,您可以提前启动维护事件。如需提前启动维护事件,即将进行的主机维护通知必须将 canReschedule 设置为 true 且将 maintenanceStatus 设置为 PENDING

启动维护事件

如需启动主机维护事件,您可以将 Cloud TPU API 与 perform-maintenance 命令搭配使用:

gcloud alpha compute tpus tpu-vm perform-maintenance TPU_NAME \
    --zone=ZONE

操作完成后,windowEndTimewindowStartTime 字段会更改为您启动维护事件的时间,maintenanceStatus 字段会更改为 ONGOING。主机维护事件随即开始。

使用 gcloud alpha compute tpus tpu-vm describe 命令查看维护事件的状态:

gcloud alpha compute tpus tpu-vm describe TPU_NAME \
    --zone=ZONE

输出包含类似于以下内容的部分:

upcomingMaintenance:
    canReschedule: true
    latestWindowStartTime: "2025-12-01T19:00:00Z"
    maintenanceStatus: ONGOING
    type: SCHEDULED
    windowEndTime: "2025-12-01T22:00:00Z"
    windowStartTime: "2025-12-01T19:00:00Z"

当 TPU 虚拟机的状态为 READYgcloud alpha compute tpus tpu-vm describe 命令的输出不再包含 upcomingMaintenance 元数据字段时,维护即完成。

对于多 slice 环境,您可以使用以下命令在特定 slice 上手动启动主机维护事件:

gcloud alpha compute tpus queued-resources perform-maintenance QR_NAME \
    --zone=ZONE --node-names=NODE_NAMES

NODE_NAMES 是队列中要为其启动主机维护事件的 slice(节点)的英文逗号分隔列表。例如,如果队列中的资源包含名为 my-qr-0, my-qr-1my-qr-2 的节点,则 perform-maintenance 命令的有效输入为 --node-names=my-qr-0,my-qr-1

后续步骤