你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
CycleCloud 不是计划程序,而是一个平台,可用于在 Azure 上部署自己的计划程序。 计划程序管理作业并将其分配到节点群集。 CycleCloud 提供 REST API 和 Python 库,用于为计划程序开发自动缩放适配器。 通过这些适配器,托管群集的大小可以根据作业队列的长度和治理策略进行增大或缩小。
计划程序
计划程序是接受作业列表(或任务)并将这些任务分发到可用资源池的软件。 它考虑作业的资源要求、作业间依赖项和优先级。 这些作业列表通常称为队列。
CycleCloud 为许多常用计划程序(PBS Professional OSS、Slurm、IBM LSF、网格引擎和 HT Condor)提供内置支持。 它提供模板用于在 Azure 上部署这些计划程序。 这些模板是默认拓扑,表示在 Azure 上生成 HPC 群集的最佳做法。 它们使用独特的专用功能,例如 低延迟 InfiniBand 网络。
此外,为每个调度器创建 项目。 使用这些项目在头节点和计算节点上安装和初始化调度守护程序。
计划程序适配器
为每种计划程序类型创建的适配器扮演两个主要角色。 一个角色负责聚合计划程序队列的资源需求。 另一个角色将资源需求转化为 Azure VM 大小集的分配请求。 针对某些约束构造这些分配请求。 这些约束可以包括 VM 配额、群集大小限制,以及适用于适当 VM 大小的 InfiniBand 网络拓扑施加的限制。 在某些方面,这些适配器类似于协商多方的需求和供应的中转站。
显示器
监视器是在 CycleCloud 应用程序服务器中运行的一个进程,它会定期轮询 Azure 服务,以了解 Azure 订阅中的资源可用性。 此监视器向计划程序适配器提供此信息,以便进行需求中转。
节点分配器
节点分配器在 CycleCloud 应用程序服务器中运行。 它通过 REST API 接收来自计划程序适配器的分配请求,预配所需的 Azure 资源来满足请求,并将预配的资源作为节点集返回给计划程序适配器。