本页面介绍了如何使用快速启动节点在 Google Kubernetes Engine (GKE) 集群中更快地部署和扩缩工作负载。当工作负载使用兼容的配置时,GKE 会在 Autopilot 模式下尽最大努力使用快速启动节点。
对于兼容的机器系列,快速启动 GKE 节点的启动时间会显著缩短。缩短启动时间可为您带来以下好处:
- 冷启动速度更快
- 更快的自动扩缩
- 缩短了 Pod 调度长尾延迟时间
- 提高了基础架构成本效益
借助快速启动节点,GKE 会预先初始化硬件资源,以缩短启动时间。预初始化的资源会尽力提供。激增请求可能只能部分得到处理。如果没有快速启动节点,资源会按需初始化,并且节点会在正常启动时间提供服务。
要求
快速启动节点无需进行其他配置。如果您的工作负载使用兼容的配置,GKE 会自动使用快速启动节点。您必须满足以下所有要求才能使用快速启动节点:
- 使用 Autopilot 集群。
- 使用快速发布渠道中的任何版本。
使用以下任一兼容的计算资源,最大兼容的启动磁盘大小为 500 GiB:
- NVIDIA L4 GPU(G2 系列机器)
使用
pd-balanced
启动磁盘类型。请勿使用与快速启动节点不兼容的任何功能。如需了解详情,请参阅限制。
限制
以下功能与快速启动的 GKE 节点不兼容。如果您使用以下任一功能,GKE 会预配启动时间正常的节点:
Autopilot GPU 工作负载
在 Autopilot 集群中请求兼容的 GPU 可使节点启动时间缩短多达 4 倍,Pod 调度时间缩短多达 2 倍,而 GKE 标准集群中的类似请求则无法实现此效果,因为 Autopilot GPU 工作负载可以使用快速启动节点。
以下是一些示例用例。不过,任何满足要求部分中条件的 Pod 都与快速启动节点兼容。
ComputeClass
在 ComputeClass 中请求兼容的加速器类型和数量,如以下示例所示:
apiVersion: cloud.google.com/v1
kind: ComputeClass
metadata:
name: ACCELERATOR_COMPUTE_CLASS_NAME
spec:
priorities:
- gpu:
type: ACCELERATOR_TYPE
count: ACCELERATOR_COUNT
nodePoolAutoCreation:
enabled: true
当您在 Pod 中选择此 ComputeClass 时(如以下示例所示),GKE 会使用快速启动节点:
apiVersion: v1
kind: Pod
metadata:
name: POD_NAME
spec:
nodeSelector:
# Select a ComputeClass that requests compatible GPUs
cloud.google.com/compute-class: ACCELERATOR_COMPUTE_CLASS_NAME
containers:
- name: my-container
image: gcr.io/google_containers/pause
resources:
limits:
nvidia.com/gpu: ACCELERATOR_COUNT
替换以下值:
ACCELERATOR_COMPUTE_CLASS_NAME
:请求加速器的 ComputeClass 的名称。ACCELERATOR_TYPE
:加速器的类型。ACCELERATOR_COUNT
:Pod 所需的加速器数量。此值必须小于或等于 ComputeClass 中spec.priorities.gpu.count
字段的值。POD_NAME
:您的 pod 的名称。
如需详细了解 ComputeClass,请参阅自定义计算类简介。
Pod 规范
在 Pod 规范中选择兼容的加速器类型和数量,如以下示例所示:
apiVersion: v1
kind: Pod
metadata:
name: POD_NAME
spec:
nodeSelector:
cloud.google.com/gke-accelerator: ACCELERATOR_NAME
containers:
- name: my-container
image: gcr.io/google_containers/pause
resources:
limits:
nvidia.com/gpu: ACCELERATOR_COUNT
替换以下值:
POD_NAME
:您的 pod 的名称。ACCELERATOR_NAME
:Pod 所需的加速器的名称。ACCELERATOR_COUNT
:Pod 所需的加速器数量。
价格
GKE Autopilot 中提供快速启动节点,无需额外付费。如需详细了解 GKE Autopilot 价格,请参阅 Google Kubernetes Engine 价格中的“Autopilot 模式”部分。