本文档比较了 Google Cloud 中的核心计算选项,可帮助您根据应用架构、伸缩和其他要求选择最佳解决方案或工具。
如需在 Google Cloud上部署工作负载,您可以从一系列解决方案或工具中进行选择,这些解决方案或工具可平衡您对基础架构的控制与 Google 的自动化管理。您选择的计算选项会影响性能、费用和日常维护。如需在选择之前更好地了解这些选项,请参阅 Google 计算概览。
选择计算选项
最适合您工作负载的计算解决方案或工具可能取决于多种因素。例如,如果您想将 VMware 环境迁移到Google Cloud,请使用 VMware Engine。
为了帮助您在基础架构管理、容器和 Compute Engine 实例之间进行权衡,请使用以下流程图。如果您想比较各种计算选项的功能,请参阅本文档中的对比表。
上图中的问题如下所示:
您是否希望 Google 管理所有基础设施?
是:使用 Cloud Run。
否:请前往第 2 题。
您是否希望为工作负载(例如 Kubernetes 或 Slurm)进行集群编排?
是:请跳至第 4 题。
否:请前往第 3 题。
您想自行管理虚拟机或裸金属实例吗?
否:使用 Batch。
您是否要运行标准容器化应用(例如微服务或 API)?
是:使用 GKE。
否:请前往第 5 题。
您是否希望 Google 管理集群生命周期?
使用 Batch
对于异步数据分析、视频转换任务或科学模拟等工作负载,请选择 Batch。借助 Batch,Google 可以管理基础架构,以便您在 Google Cloud上安排、排队和执行批量计算作业。您无需自行部署或管理服务器,只需将可执行脚本或容器化工作负载提交到作业队列即可。
Batch 提供以下功能:
加速器支持:Batch 支持 NVIDIA GPU(最高可达 RTX PRO 6000),适用于需要高吞吐量的批处理和高性能计算 (HPC) 工作负载。Batch 不支持 Google TPU。
操作系统和内核控制:Google 会管理作业的操作系统和执行环境。
编排:作业队列会安排任务,并在发生错误时重试。为了扩缩容量,该服务会根据已加入队列的作业数量预配和启动虚拟机,并在这些作业完成后停止虚拟机。
如需了解详情,请参阅 Batch 使用入门。
使用 Cloud Run
如需在不进行服务器管理的情况下部署容器化 Web 应用或作业,请选择 Cloud Run。Cloud Run 是一个无服务器平台,可让您运行容器化应用,而无需管理服务器或集群。Google 会为您处理所有基础设施管理工作,包括操作系统、内核、网络设置和容量管理。
Cloud Run 提供以下功能:
加速器支持:Cloud Run 支持 NVIDIA RTX PRO 6000 Blackwell 和 L4 GPU。Cloud Run 不支持其他 GPU 模型或 Google TPU。
操作系统和内核控制:您将工作负载打包为容器,并将其作为 Web 服务、异步任务或批量作业运行。
编排:作为一个无服务器平台,Google 会启动、运行和扩缩您的容器实例,而无需人工干预。对于 Web 服务,Cloud Run 会根据传入请求或 CPU 消耗量添加或移除容器实例。
如需了解详情,请参阅 Cloud Run 是什么。
使用 Cluster Director
如果您想训练 AI 模型或运行 Slurm 调度的模拟作业,而无需进行网络或操作系统设置,请选择 Cluster Director。Cluster Director 是一项代管式服务,可自动执行 AI、机器学习和 HPC 集群的部署和生命周期管理。
Cluster Director 提供以下功能:
加速器支持:Cluster Director 支持 NVIDIA GPU(即 GB300 Ultra 超级芯片、GB200 超级芯片、B200、H200 和 H100)和 Google TPU(预览版;即 TPU7x、TPU v6e 和 TPU v5p),适用于 AI、机器学习和 HPC 工作负载。
操作系统和内核控制:Google 负责管理集群生命周期,并设置专为机器学习设计的自定义 Ubuntu 操作系统。该服务提供了一个即用型环境,其中包含专为 AI 工作负载构建的登录节点、计算节点集和部署模板。
编排:为了扩缩容量,Slurm 会根据排队的作业请求创建节点,并在节点保持空闲一段时间后将其删除,以防止产生不必要的费用。
如需了解详情,请参阅 Cluster Director 概览。
使用 Cluster Toolkit
如果您想使用自动化部署模板,并保持对操作系统和软件堆栈的管理控制,请选择 Cluster Toolkit。Cluster Toolkit 是一款开源工具,可用于在 Google Cloud上预配和配置 AI、机器学习和 HPC 集群。
Cluster Toolkit 提供以下功能:
加速器支持:Cluster Toolkit 支持 NVIDIA GPU 和 Google TPU,您可以使用名为蓝图的部署模板进行预配和配置。借助这些自动化配置文件,您可以根据基础设施即代码 (IaC) 原则部署标准化、可重复的集群基础设施。
操作系统和内核控制:Cluster Toolkit 会在您的 Google Cloud项目中部署计算实例或 GKE 资源。部署这些资源后,您将保留对操作系统、软件设置和集群生命周期的管理控制权。
编排:如需扩缩容量,您可以配置托管式实例组 (MIG) 或 GKE 工具,以根据模板设置添加或移除节点。
如需了解详情,请参阅 Cluster Toolkit 概览。
使用 Compute Engine
如果您的应用需要自定义架构配置、专用内核设置或对虚拟服务器的管理控制,请选择 Compute Engine。Compute Engine 是 Google Cloud的核心基础架构即服务 (IaaS) 平台,可让您在 Google 的物理硬件上创建和运行虚拟机和裸机实例。
Compute Engine 提供以下功能:
加速器支持:Compute Engine 支持 NVIDIA GPU 和 Google TPU,您可以将其挂接到计算实例。
操作系统和内核控制:您可以完全控制操作系统、内核设置和启动文件,还可以选择 CPU 处理器、内存配置、存储类型和客户机操作系统。
编排:由于编排是手动的,因此您需要自行设置和管理计算实例、网络规则、流量路由和备份系统,以确保可靠性。如需扩缩容量,您可以根据需要添加或移除计算实例、使用自定义工具或配置 MIG 来调整集群容量。
如需了解详情,请参阅 Compute Engine 概览。
使用 GKE
如果您需要一个基于容器的编排平台来运行分布式应用或通用微服务,请选择 Google Kubernetes Engine (GKE)。GKE 是业界标准的托管式 Kubernetes 平台,用于部署、扩缩和编排容器化应用。Google 负责管理 Kubernetes 控制平面,以确保安全性和系统可用性。
GKE 提供以下功能:
加速器支持:GKE 支持将 NVIDIA GPU 和 Google TPU 用于容器化工作负载。
操作系统和内核控制:Google 在 Autopilot 和标准模式下管理操作系统。在 Autopilot 模式下,Google 会管理集群节点和容量调整,无需手动干预。在标准模式下,您需要管理集群节点池。
编排:为了根据需求变化调整容量,GKE 会使用 Pod 横向自动扩缩器 (HPA) 和 Pod 纵向自动扩缩器 (VPA) 添加或移除容器,并使用集群自动扩缩器添加或移除节点。GKE 还通过 Kueue(一种 Kubernetes 原生作业队列控制器)编排批量作业。
如需了解详情,请参阅 GKE 概览。
使用 VMware Engine
如需将本地 VMware 工作负载迁移到 Google Cloud基础架构,同时尽可能减少运营变更,请选择 VMware Engine。VMware Engine 是一项代管式服务,可让您在 Google 硬件上运行 VMware 虚拟机,而无需修改应用。
VMware Engine 提供以下功能:
加速器支持:VMware Engine 不支持 GPU 或 TPU。
操作系统和内核控制:您在 Google Cloud上运行 VMware 应用,就像在现有设置中运行一样。Google 负责管理物理硬件、网络基础设施和 VMware 软件平台(例如 vSphere、vCenter、vSAN 和 NSX-T)。您保留对虚拟机、客机操作系统和 VMware 管理工具的管理控制权。
编排:如需调整私有云的大小,您可以添加或移除专用 ESXi 节点。
如需了解详情,请参阅 Google Cloud VMware Engine 概览。
比较计算选项
如需确定适合您工作负载的计算解决方案或工具,请在下表中比较各种计算选项的技术功能:
| 计算选项 | GPU | TPU | 操作系统和内核控制 | 编排 | 扩缩 |
|---|---|---|---|---|---|
| Batch | 最高可达 NVIDIA RTX PRO 6000 | 否 | 由 Google 管理 | 作业队列 | 根据已加入队列的作业自动确定 |
| Cloud Run | NVIDIA RTX PRO 6000 Blackwell 和 L4 | 否 | 由 Google 管理 | 无服务器 | 根据请求或 CPU 消耗自动扩缩 |
| Cluster Director | NVIDIA GB300 Ultra 超级芯片、GB200 超级芯片、B200、H200 和 H100 | Google TPU7x、TPU v6e 和 TPU v5p(预览版) | 由 Google 管理(自定义 Ubuntu) | Slurm | 根据已加入队列的作业请求自动确定 |
| Cluster Toolkit | 所有可用的 NVIDIA GPU | 所有可用的 Google TPU | 自行管理 | 自动化配置文件 (IaC) | 可使用 MIG 或 GKE 工具进行自定义 |
| Compute Engine | 所有可用的 NVIDIA GPU | 所有可用的 Google TPU | 自行管理 | 手动 | 手动或自动(使用 MIG) |
| Google Kubernetes Engine (GKE) | 所有可用的 NVIDIA GPU | 所有可用的 Google TPU | Google 代管 (Autopilot) 或半代管(标准) | Kubernetes | Pod 和节点自动伸缩 |
| VMware Engine | 否 | 否 | 由 Google 管理 | VMware 平台 | 手动(使用 ESXi 节点) |
探索 AI Hypercomputer 在 AI 和机器学习领域的应用
AI Hypercomputer 是一种集成式架构,结合了专用硬件、开源软件和灵活的使用模式。此架构旨在提高机器学习效率,并最大限度地提高有效吞吐量(即传输的有用数据的速率),以满足要求严苛的 AI 工作负载的需求。
AI Hypercomputer 提供以下功能:
加速器支持:AI Hypercomputer 支持所有 NVIDIA GPU 和 Google TPU。加速器通过高带宽网络连接,可优化数千个计算实例中 AI 模型的吞吐量。
操作系统和内核控制:您对操作系统和内核的控制取决于您选择的部署工具:
Google 管理的环境:如果您选择 Cluster Director,则 Google 会管理集群环境和生命周期。如果您选择 Autopilot 模式下的 GKE,则 Google 会管理容器环境。
自行管理的环境:如果您选择 Cluster Toolkit、Compute Engine 或 Standard 模式下的 GKE,则需要自行管理集群资源和操作系统。
编排:您可以使用 Slurm、GKE 或自定义编排器,在计算需求发生变化时在集群中添加或移除计算实例、Pod 或容器。
如需了解详情,请参阅 AI Hypercomputer 概览。