你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

CycleCloud 计划和自动缩放概念

CycleCloud 不是计划程序,而是一个平台,使用户能够在 Azure 上部署自己的计划程序,以便管理作业并将其分发到节点群集中。 此外,CycleCloud 提供 REST API 和 Python 库,用于为计划程序开发自动缩放适配器,使这些托管群集能够根据作业队列和治理策略的长度调整大小。

业务流程关系图

计划程序

计划程序是一种软件,它接受作业 (列表或) 的任务,并将这些任务分发到可用资源池中,同时考虑到作业的资源要求以及作业间的依赖关系和优先级。 这些作业列表通常称为队列。

CycleCloud 内置了对 PBS Professional OSS、Slurm、IBM LSF、Grid Engine 和 HT Condor) 等许多常用 (计划程序的支持,为在 Azure 上部署这些计划程序提供模板。 这些模板是默认拓扑,表示在 Azure 上构建利用 低延迟 InfiniBand 网络等独特专用功能的 HPC 群集的最佳做法。

此外,还为每个计划程序创建 项目 ,用于在头节点和计算节点上安装和初始化计划程序守护程序。

计划程序适配器

为每种计划程序类型创建的适配器扮演两个主要角色:1) 计划程序队列中的聚合资源要求,2) 将资源要求转换为 Azure VM 大小的集的分配请求。 这些分配请求是在考虑某些约束的情况下构建的,例如 VM 配额、对群集大小的限制,以及 InfiniBand 网络拓扑 (针对适当 VM 大小) 施加的限制。 在某些方面,这些适配器类似于协商来自多方的需求和供应的中转站。

监视

监视器是在 CycleCloud 应用程序服务器中运行并定期轮询 Azure 服务以获取 Azure 订阅中资源可用性的进程。 此监视器向计划程序适配器提供这些信息,以便进行需求中转。

节点分配器

节点分配器在 CycleCloud 应用程序服务器中运行。 它通过 REST API 从计划程序适配器接收分配请求,预配满足请求所需的 Azure 资源,并将预配的资源作为节点集呈现回计划程序适配器。

注意

虽然上述基础概念在计划程序中很常见,但计划程序之间的实现细节有所不同。 有关每个实现的更深入的信息,请参阅各个计划程序页。