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

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

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

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

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

何时配置操作系统环境

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

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

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

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

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

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

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

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

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

默认操作系统环境

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

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

  • 如果作业仅包含容器可运行项,则作业会使用最新版本的 Batch Container-Optimized OS (COS) 映像。
  • 否则,作业将使用最新版本的 Batch Debian 映像。

如果您在创建作业时未定义启动磁盘的其他属性,则作业默认使用以下选项:

  • 磁盘类型:启动磁盘的 Hyperdisk 类型或 Persistent Disk 类型。启动磁盘的默认磁盘类型通常为 pd-balanced(如果机器类型支持)或 hyperdisk-balanced。如需查看每种机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的机器类型比较。如需详细了解如何选择启动磁盘类型,请参阅本文档中的启动磁盘选项。

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

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

    此公式包含以下值:

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

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

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

  • interface:系统会根据作业虚拟机的机器类型,自动选择 NVMe 或 SCSI 作为接口。您可以选择在定义作业要使用的资源类型时指定机器类型。如需了解每种机器类型的默认接口,请参阅 Compute Engine 文档中的存储接口类型。

虚拟机操作系统映像选项

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

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

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

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

  • 自定义映像:您使用 Compute Engine 创建、拥有并控制其访问权限的映像。在 Compute Engine 文档中详细了解自定义映像。

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

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

  • 可能不支持标记为已弃用的批处理映像。Batch 映像支持的最短生命周期为以下日期中的最早日期:

    • 映像开始日期后 60 天。Batch 映像的开始日期在映像名称中指明,例如,batch-cos-stable-official-20230719-00-p00 映像来自 2023 年 7 月 19 日 (20230719)。
    • 基础 Compute Engine 操作系统版本弃用的日期。 Compute Engine 文档中的操作系统详细信息页面上列出了每个 Compute Engine 操作系统版本的弃用日期。
  • 某些作业配置需要对映像进行外部访问。 具体而言,如果作业没有外部访问权限,并且不允许通过 Cloud NAT 或专用 Google 访问通道进行访问,则仅支持以下映像:

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

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

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

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

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

启动磁盘选项

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

对于启动磁盘类型,我们建议您选择如下选项。您必须选择机器类型支持的磁盘类型。

  • 如果支持,请使用 hyperdisk-balanced。
  • 否则,请使用 pd-standard 降低费用,或使用 pd-balanced 确保性能一致。

如需详细了解磁盘类型,请参阅 Compute Engine 文档中的选择磁盘类型。

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

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

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

后续步骤