作业虚拟机的操作系统环境概览

本文档介绍了运行批量作业的 Compute Engine 虚拟机 (VM) 实例的操作系统 (OS) 环境(启动磁盘和操作系统映像)概念。

作业通过在每个虚拟机的启动磁盘上运行指令来执行。每个启动磁盘均包含一个引导加载程序、文件系统和操作系统。您可以通过执行以下任一操作,选择性地为作业配置虚拟机操作系统环境:

  • 如需仅在启动磁盘上配置软件,请指定作业的虚拟机操作系统映像。
  • 如需配置启动磁盘的任何属性(包括虚拟机操作系统映像、磁盘大小和/或磁盘类型),请自定义作业的启动磁盘。

以下部分介绍了何时配置操作系统环境、默认操作系统环境、虚拟机操作系统映像选项和启动磁盘选项。

何时配置操作系统环境

查看本部分以确定在创建作业时是配置虚拟机操作系统映像和/或启动磁盘,还是使用默认配置。

在以下情况下,为作业配置虚拟机操作系统映像:

  • 如果可信映像 (compute.trustedImageProjects) 政策限制条件阻止您使用默认虚拟机操作系统映像创建作业。

    如需详细了解可信映像政策限制条件,请参阅控制对 Batch 的虚拟机操作系统映像的访问权限

  • 您不想或不能使用作业的默认虚拟机操作系统映像。 例如,如果您为某个作业定义的可运行对象需要一个不受默认映像支持的应用,您也许可以指定其他公共虚拟机操作系统映像。或者,如果您要预安装作业所需的应用以帮助减少运行时,则可能需要创建并指定自定义映像。

在以下情况下,请为作业配置启动磁盘:

  • 您不想或不能使用作业的默认启动磁盘。例如,如果您为某个作业定义的可运行组件或虚拟机操作系统映像需要启动磁盘上额外的存储空间,那么您可能需要为作业自定义启动磁盘,以增加其大小。

如果您仍然不确定您的作业是否需要配置虚拟机操作系统映像和/或启动磁盘,可以查看以下部分来了解默认配置。此外,您也可以尝试使用默认配置创建并运行作业。如果使用默认配置的作业失败,您可以通过问题排查来尝试确定问题是由虚拟机操作系统映像或启动磁盘引起的。

否则,如果您不需要也不想为作业配置虚拟机操作系统映像和/或启动磁盘,请将这些属性保留为未定义状态,以使用默认配置。

默认操作系统环境

查看本部分,了解作业的虚拟机操作系统映像和启动磁盘的默认配置。例如,在确定如何为作业配置操作系统环境时,可以将默认配置作为参考。

如果您创建作业但未指定虚拟机操作系统映像,则作业将默认使用以下虚拟机操作系统映像之一:

  • 如果作业只有容器可运行组件,则该作业将使用最新版本的 Batch Container-Optimized OS (COS) 映像。
  • 否则,该作业将使用最新版本的 Batch Debian 映像。

如果您创建作业并且没有定义启动磁盘的其他属性,则该作业默认使用以下选项:

  • 永久性磁盘类型:启动磁盘的默认永久性磁盘类型是 pd-balanced

  • size:每个虚拟机启动磁盘的默认大小由以下 \({defaultBootDiskSize}\)公式确定。此外,默认大小四舍五入为至少 30 GB 到 10,000 GB。

    \[{defaultBootDiskSize}={reservedSize}+({taskSize}*{parallelTasksPerVm})\]

    此公式具有以下值:

    • \({reservedSize}\):虚拟机所需软件(例如虚拟机操作系统映像)的预留大小(以 GB 为单位)。对于默认启动磁盘大小,Batch 预留 10 GB。

    • \({taskSize}\):每项任务的启动磁盘大小(以 GB 为单位),该大小通过转换每个任务的启动磁盘大小 (bootDiskMib) 字段的单位来确定。

    • \({parallelTasksPerVM}\):一个虚拟机上可同时运行的任务数上限。如需了解详情,请参阅 \({parallelTasksPerVM}\)的公式

  • interface:接口会自动选择为 NVMeSCSI,具体取决于作业虚拟机的机器类型。在定义作业要使用的资源类型时,您可以选择指定机器类型。如需了解每种机器类型的默认接口,请参阅 Compute Engine 文档中的选择接口

虚拟机操作系统映像选项

以下部分介绍了 Batch 的虚拟机操作系统映像选项,包括 Batch 作业可以支持的所有类型的虚拟机操作系统映像以及所支持虚拟机操作系统映像的限制。为作业指定虚拟机操作系统映像时,您可以为限制允许的任何受支持虚拟机操作系统映像指定映像名称或映像系列。

支持的虚拟机操作系统映像

批量作业可以支持以下类型的虚拟机操作系统映像:

  • 公共映像:由 Google、开源社区及第三方供应商提供和维护的映像。具体来说,Batch 作业可以使用 Batch 或 Compute Engine 中的公共映像。

    • 批处理映像:由 Batch 提供和维护、存储在 batch-custom-image 映像项目中、建议用于批处理作业的映像。

      批处理映像可在以下操作系统中使用;当您在 Batch 中查看映像系列和映像名称时,其操作系统由相应的前缀指示。

      • 批处理 Debian(batch-debian 前缀):基于 Debian,针对批量作业进行了优化的操作系统。对于具有任何脚本可运行的作业,此操作系统是默认设置。
      • 批处理 Container-Optimized OS(batch-cos 前缀):基于 Google Cloud 中的 Container-Optimized OS,针对具有容器的批处理作业进行了优化。对于仅具有容器可运行项的作业,此操作系统是默认设置。
      • 批处理 CentOS(batch-centos 前缀):基于 CentOS Linux,针对批处理作业进行了优化的操作系统。
      • 批量高性能计算 (HPC) CentOS(batch-hpc-centos 前缀):基于 Google Cloud 中的 CentOS HPC 映像针对处理 HPC 工作负载的批量作业进行了优化的操作系统。
      • 批量高性能计算 (HPC) Rocky Linux(batch-hpc-rocky 前缀):基于 Google Cloud 中的 Rocky Linux HPC 映像的操作系统,针对处理 HPC 工作负载的批量作业进行了优化。

      如需查看 Batch 中您可以为作业指定的特定映像名称和系列,请按照在 Batch 中查看虚拟机操作系统映像的步骤操作。

    • Compute Engine 映像:Compute Engine 上提供的公共映像,相关说明请参阅 Compute Engine 文档的操作系统详情页面。

      Batch 仅支持来自以下操作系统的正式版 (GA) Compute Engine 映像:

  • 自定义映像:您使用 Compute Engine 创建、拥有和控制访问权限的映像。如需详细了解自定义映像,请参阅 Compute Engine 文档。

针对虚拟机操作系统映像的限制

作业可以指定的受支持虚拟机操作系统映像受到以下限制:

  • 对于批量映像,映像的保证支持生命周期为 180 天。批处理映像的开始日期在映像名称中指明,例如,batch-cos-stable-official-20230719-00-p00 映像来自 2023 年 7 月 19 日 (20230719)。标记为“已弃用”的批处理映像不能保证受支持。

  • 某些作业配置需要映像的外部访问权限。具体而言,当作业没有外部访问权限且不允许通过 Cloud NAT 或专用 Google 访问通道进行访问时,仅支持以下映像:

    • 对于使用 GPU 且仅使用容器可运行状态的作业,仅支持默认映像(最新的 Batch Container-Optimized OS 映像)。
    • 否则,作业仅支持 Batch 映像。
  • 如果启用了可信映像政策限制条件,则无法使用可信映像政策不允许使用的任何虚拟机操作系统映像。

    您的项目、文件夹或组织的管理员可以选择配置可信映像政策限制条件,以限制可用于创建启动磁盘的虚拟机操作系统映像。例如,可信映像政策限制条件可用于要求用户创建虚拟机,这些虚拟机包含符合政策或安全要求的已批准软件。如需了解详情,请参阅控制对 Batch 的虚拟机操作系统映像的访问权限

  • 作业的虚拟机操作系统映像必须包含其启动磁盘和所有永久性磁盘存储卷的接口的驱动程序。大多数公共映像会自动安装 NVMe 和 SCSI 驱动程序,包括所有 Batch 映像。

    您无法配置永久性磁盘的接口,因此虚拟机操作系统映像需要默认接口的驱动程序。

  • 如果作业指定的任何虚拟机操作系统映像既不是批处理映像,也不是基于批处理映像的自定义映像,则 Batch 会在作业启动后在其虚拟机上安装所需的软件包。这些必需的软件包可能因作业配置而异,并且会随时间而变化,而 Batch 需要这些软件包来运行作业。

启动磁盘选项

本部分介绍 Batch 的启动磁盘类型和大小选项。自定义作业的启动磁盘时,您可以指定虚拟机操作系统映像、类型和/或大小。如需了解如何指定虚拟机操作系统映像,请参阅本文档中的虚拟机操作系统映像选项

对于启动磁盘类型,Batch 支持 Compute Engine 文档中的所有永久性磁盘类型

对于启动磁盘大小,Batch 支持 Compute Engine 文档中满足以下要求的永久性磁盘的所有大小和增量

  • 对于批量作业,最小启动磁盘大小为 30 GB。

  • 要使批量作业正常运行,启动磁盘大小必须足够大,以分配作业的虚拟机操作系统映像以及在每个虚拟机上运行的任务。例如,请参阅本文档中的默认启动磁盘大小公式

后续步骤