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

HPC 登陆区域

Azure 云采用框架的就绪方法可指导你为云采用准备环境。 在就绪阶段,可以使用 Azure 登陆区域。 登陆区域是一种技术加速器,可为任何云采用环境提供基本构建基块。 登陆区域可以自动配置 Azure 环境,与云采用框架中的最佳做法指南保持一致。 在准备高性能计算(HPC)时,可能会遇到依赖于行业用例和要求的环境配置。

Azure 登陆区域概念体系结构

为持续云采用准备环境时,可以使用表示目标结束状态的 Azure 登陆区域概念体系结构。 对于 HPC,有多个概念体系结构参考,这些参考基于云采用框架当前解决的三个行业:

在为登陆区域制定长期愿景时,请考虑这些体系结构参考。 这些引用提供了起点。 根据组织的业务需求和最终用户的需求,可能需要对其进行修改。

HPC 评估

在战略影响评估和技术规划期间做出的决策会影响为 Azure 上的 HPC 部署选择的登陆区域配置。 建议考虑以下问题:

  • Azure 上的环境有多成熟? 它在概念证明阶段吗? 或者它已经是为用户提供服务的成熟应用程序了吗? 根据其阶段,可以包括或省略治理、安全或资源组织。
  • 你要在 Azure 短期或长期项目中构建的应用程序吗? 此问题的回答可以帮助你选择计算和存储选项。
  • 你的组织是否需要用户访问不同级别的 Azure 资源?

从这些问题中可以看到,部署模型因业务、行业和应用程序使用情况而异。

适用于 HPC 的 Azure 登陆区域加速

Azure BatchAzure CycleCloud 都是 Azure 提供的第一方服务,而 Azure HPC OnDemand PlatformAzHOP)是在 Azure Cycle Cloud 的基础上构建的自动化,它为 Azure 中完整的 HPC 群集解决方案提供端到端部署机制。

Azure Batch

  • Batch 旨在高效在 Azure 中运行大规模并行和 HPC 批处理作业。
  • Batch 创建和管理计算节点或虚拟机(VM)池。 还可以使用 Batch 安装要运行的应用程序,以及计划要在节点上运行的作业。
  • 没有要安装、管理或缩放的群集或作业计划程序软件。
  • Batch 在固有并行的工作负载上运行良好。 这些工作负荷具有可以独立运行的应用程序,每个实例都已完成部分工作。
  • 还可以使用 Batch 来运行紧密耦合的工作负荷,其中运行的应用程序需要相互通信,而不是独立运行。
  • Batch 任务可以直接在 Batch 池中的 VM 或节点上运行。 但是,还可以设置 Batch 池,以在节点上的 Docker 兼容容器中运行任务。

Azure CycleCloud

  • 它支持各种 HPC 计划程序,例如 SLURM、OpenPBS、PBSPro、LSF、网格引擎和 HTCondor12。
  • 它允许为 HPC 系统预配基础结构,例如虚拟机、规模集、网络接口和磁盘。
  • 它根据作业负载、可用性和时间要求自动缩放基础结构,以在任何规模上高效运行作业。
  • 它提供了丰富的声明性模板化格式,用于在 Azure 上构造完整的 HPC 环境。
  • 它与 Azure 服务(如 Azure Monitor 和 Microsoft 成本管理工具)集成。

AzHop

  • AzHop 为 Azure 上的基本 HPC 基础结构提供端到端部署机制,该机制利用 CycleCloud 协调作业。
  • 它提供一个完整的 HPC 群集解决方案,可供用户运行应用程序,并且使 HPC 管理员可以轻松部署和管理应用程序。
  • AzHop 使用内置的各种应用程序,可以使用“原样”,或者可以轻松自定义和扩展以满足任何未满足的要求。
  • 它包括一个 Open OnDemand 门户,用于统一用户访问、远程 shell 访问、远程可视化访问、作业提交、文件访问等。
  • 它使用 Active Directory 进行用户身份验证和域控制。
  • 它使用 OpenPBS 或 Simple Linux 实用工具作为作业计划程序进行资源管理(SLURM)。
  • 动态资源预配和自动缩放由 CycleCloud 预配置作业队列和集成运行状况检查完成,以快速避免非最佳节点。
  • Azure NetApp 文档为主目录和应用程序提供共享文件系统。

比较图表

功能 Azure Batch Azure CycleCloud
计划程序 Batch API 和工具可用。 还可以在Azure 门户中使用云原生命令行脚本。 可以使用标准 HPC 计划程序,例如 SLURMOpenPBSPBSProLSF网格引擎HTCondor。 或者,可以扩展 Azure CycleCloud 自动缩放插件以使用自己的计划程序。
计算资源 软件即服务(SaaS)节点 - 平台即服务(PaaS)。 PaaS 软件 – PaaS。
监视工具 Azure Monitor。 Azure Monitor 和 Grafana。
自定义 可以使用自定义映像池、第三方映像或 Batch API 访问。 可以使用全面的 RESTful API 来自定义和扩展功能、部署自己的计划程序并支持现有的工作负荷管理器。
集成 Azure Synapse Analytics 管道、Azure 数据工厂和 Azure CLI。 适用于 Windows 和 Linux 的内置 CLI。
用户类型 开发人员。 经典 HPC 管理员和用户。
工作类型 批处理和工作流。 使用消息传递接口(MPI)的紧密耦合工作流。
Windows 支持 提供。 取决于计划程序选择。

Azure CycleCloud 和 Azure Batch 是 Azure 上 HPC 任务的强大工具,但它们专为不同的用例而设计。

Azure CycleCloud 是一种企业友好的工具,用于在 Azure 上协调和管理 HPC 环境。 它以 HPC 管理员和想要部署具有特定计划程序的 HPC 环境的用户为目标。 Azure CycleCloud 提供强大的工具,用于在 Azure 上构建完整的 HPC 环境,包括网络文件共享(NFS)服务器、并行文件系统、登录主机、许可证服务器和目录服务。 它适用于一段时间内运营 HPC 环境的组织,并累积了多年的专业知识和内部工具,围绕特定计划程序。

相比之下,Batch 主要面向在自己的产品或服务中构建功能的开发人员和团队。 Batch 包含自己的计划程序,旨在高效运行大规模并行作业,而无需群集或作业计划程序软件。 当不需要管理工作负荷计划程序时,Batch 非常有用。

总之,如果要部署具有特定计划程序且需要完整的 HPC 环境,请使用 Azure CycleCloud。 开发需要大规模并行处理的产品或服务时,请使用 Batch,并且不想管理工作负荷计划程序。

后续步骤