View a markdown version of this page

整理您的农场、队列和车队 - AWS 截止日期云

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

整理您的农场、队列和车队

您可以从一个包含一个队列和一个队列的单一农场开始。随着您的 Deadl AWS ine Cloud(Deadline Cloud)农场中用户数量和工作负载种类的增加,更谨慎地组织工作会有所帮助:为每个团队或项目排队,为每种硬件类型设置一个队列,或者为必须保持隔离的工作建立一个单独的农场。

三个问题推动了设计:

  • 谁可以查看、提交和管理哪些作业? 队列是权限和预算的自然边界。

  • 哪些硬件运行哪些作业? 舰队按能力对工作人员进行分组,每项任务的主机要求将其路由到可以运行该任务的队列。

  • 是否有任何工作需要与其他工作严格隔离? 对于不得混用的工作,例如为不同的客户工作,请为每个工作负载创建一个单独的农场。独立的农场是一个硬安全边界。

队列、车队和农场如何划分工作

队列和舰队具有多对多的关系。您可以将一个队列与多个队列相关联,将一个队列与多个队列关联起来。当舰队为多个队列提供服务时,它会将工作人员分成多个队列。有关更多信息,请参阅 关联队列和舰队

当一个队列有多个队列时,每个任务的主机要求(例如 GPU、vCPU、内存和操作系统)决定了哪些队列可以运行它。GPU 任务和 CPU 任务不需要单独的队列:将一个队列与 GPU 队列和 CPU 队列关联起来,需要 GPU 的渲染仅调度到 GPU 队列,而没有 GPU 要求的任务可以在 CPU 队列上运行。Deadline Cloud 集成提交者包括主机要求设置,因此艺术家可以在不知道哪个机群提供的情况下描述工作所需的硬件。

队列也是您控制访问和支出的地方。您可以分别向用户授予每个队列的访问权限级别,因此用户可以向一个队列提交任务,而只能查看另一个队列。您也可以为每个队列设置预算。有关更多信息,请参阅在 Deadline 云中管理用户用预算控制成本

队列权限控制谁可以查看和管理作业,但他们本身并不能完全隔离任务。来自不同队列且共享队列的作业在同一个工作主机上运行,它们可以在其中共享公共资源,例如包和文件缓存。独立的农场是硬性安全边界:除非您自己通过共享亚马逊简单存储服务 (Amazon S3) 存储桶等外部资源来削弱边界。有关更多信息,请参阅 使用农场、队列和队列隔离工作负载

除以 最适合分离 注意事项

队列

需要自己的工作清单、权限和预算的团队、节目或部门

来自共享队列的队列中的任务在同一个工作主机上运行

车队

硬件和软件环境,例如 GPU 工作人员、CPU 工作人员或客户管理的队列

为多个队列提供服务的舰队会将其工作人员分成多个队列

农场

需要硬隔离边界的工作负载,例如不同的供应商或客户端

农场什么都不共享,因此每个农场都需要自己的队列、舰队和用户补助

常见模式

以下布局涵盖了大多数组织。您可以将它们合并,例如为自己的团队创建一个共享农场,为每个供应商创建一个单独的农场。

一个共享农场,每个团队一个队列

在单个组织中,共享农场通常是正确的起始布局,其中包含每个团队或工作负载的队列(例如工作室的演出或机器学习培训管道)。每个人都可以在一个视图中看到整个农场。您可以为每个团队授予各自队列中的贡献者等级,在其他地方授予查看者等级,这样团队就可以在不更改彼此的工作的情况下关注所有工作。预算跟踪每个队列的支出。

将队列与共享队列关联起来。共享队列可以保持较高的利用率并为员工提供温暖,因为完成一个团队的工作人员无需等待新实例启动即可接手另一个团队的工作。权衡之处在于,团队共享员工宿主,这通常在一个组织的信任范围内是可以接受的。要添加队列,请参阅创建队列

为每个供应商或客户提供一个农场

当你与外部供应商合作,或者为多个不能混合的客户运行工作时,请为每个客户创建一个单独的农场。被授予一个农场访问权限的用户无法看到其他农场,一个农场中的作业无法在另一个农场的队列上运行或读取其作业附件。保持边界完好无损:不要在农场之间共享任务附件 Amazon S3 存储桶、队列或其他资源。要添加农场,请参阅创建农场。有关安全性详细信息,请参阅使用农场、队列和队列隔离工作负载。有关让供应商进入农场的端到端步骤,请参阅让用户加入您的农场

敏感内容的受限舰队

要将工作置于专职工作人员的安全或隐私限制之下,请为该工作创建队列和队列,并仅将该队列与该队列关联。工作仅安排给与其队列相关的队列,因此该关联是将其他工作拒之门外的原因。请参阅关联队列和舰队。对于不得与工作室其他成员共享任何内容的作品,请改用单独的农场。

完成受限队列周围的边界:

有关这些步骤背后的安全注意事项的更多信息,请参阅使用农场、队列和队列隔离工作负载

服务管理和客户管理的队列分开队列

如果您的农场既有服务管理的队列,又有客户管理的队列,则在大多数情况下,为每种舰队类型创建一个单独的队列。为这两种舰队类型编写的作业通常假设不同的运行环境。服务管理队列的队列通常使用 conda 队列环境为每项任务安装应用程序,而客户管理的队列的任务则需要您在工作主机上预先安装的软件。为一个环境配置的任务通常在另一个环境上失败。将队列分开还可以使每个队列的环境设置变得简单。有关更多信息,请参阅在服务管理队列和客户管理队列之间进行选择默认 Conda 队列环境