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

Microsoft HPC Pack

Microsoft HPC Pack 是一种基于 Microsoft Azure 的免费 HPC 解决方案,具有 Windows Server 技术,并支持各种 HPC 工作负载。本页详细说明了 HPC Pack 与 Cyclecloud 集成的功能和配置详细信息。

限制和支持的版本

CycleCloud 支持 Update 3) 和 Microsoft HPC Pack 2019的 Microsoft HPC Pack 2016 (,但存在以下限制:

  • 必须在Active Directory 域中创建群集。
  • 群集只能包含单个头节点。
  • 尚不支持头节点上的高可用性。
  • 不支持头节点 VM 映像自定义。
  • 尚不支持 Linux 计算节点。
  • 头节点需要出站 Internet 访问才能下载 Nuget 二进制文件和 Python3。
  • 尚不支持 CLI 和 cloud-init 配置。

先决条件

Active Directory 域

目前,必须将所有 HPC Pack 节点联接到Active Directory 域。 如果要在虚拟网络中部署 HPC Pack 群集,该虚拟网络具有站点到站点 VPN 或 ExpressRoute 连接,则通常已有现有Active Directory 域。 如果虚拟网络中还没有 AD 域,可以通过将头节点提升为域控制器来选择创建新的 AD 域。

Azure Key Vault

Microsoft HPC Pack 需要 PFX 证书来保护节点通信,还需要 AD 域用户凭据才能将节点加入 AD 域。 虽然可以直接在模板中指定 PFX 文件、保护密码和用户密码,但我们强烈建议使用 Azure 密钥保管库来保护证书和用户密码。 请参阅创建 Azure 密钥保管库 证书

群集还需要 AD 管理员帐户的用户名和密码才能在创建节点时加入域。 强烈建议使用 Azure 密钥保管库。

Azure 用户分配的托管标识

若要对证书和凭据使用 Azure 密钥保管库,需要创建 Azure 用户分配的托管标识,并为 Azure 密钥保管库 的机密和证书授予 Get 权限。

请参阅此密钥保管库教程,了解如何创建具有密钥保管库访问权限的密钥保管库和托管标识。

建议使用 Azure Role-Based 访问控制为托管标识分配密钥保管库权限。

HPC Pack 节点角色

HPC Pack 群集中有三个不同的节点角色:

  • 头节点:提供群集管理和作业计划服务。 目前,仅支持具有本地数据库的单个头节点。
  • 代理节点:接收来自 SOA 客户端的请求,将其分发到计算节点上的服务主机,然后收集响应并将其发送回客户端。 代理节点将在 中转站 节点数组中创建。 如果要在群集中运行 SOA 工作负荷,则必须创建代理节点。
  • 计算节点:接受并运行群集作业。 计算节点将在 cn 节点数组中创建。

创建新的 HPC Pack 群集

可以单击计划程序下的 Microsoft HPC Pack 图标创建新的 Microsoft HPC Pack 群集。

“关于 ”页上,为群集指定唯一的 群集名称 ,因为它将用作头节点的 NetBIOS 计算机名称,请确保它在 AD 域中是唯一的,并且符合 命名约定

基本设置

  • HPC Pack 版本:可以使用 Update 3) 选择 HPC Pack 2019 或 HPC Pack 2016 ( 建议使用最新的 HPC Pack 版本,即 HPC Pack 2019。
  • 虚拟机:可以选择要在其中创建 HPC Pack 群集的 Azure 区域,以及每个群集节点角色的 VM 类型。 还可以指定 Num。 如果要在群集中运行 SOA 工作负荷,代理可以创建一个或多个 Broker 节点。

自动缩放

群集在没有任何计算节点的情况下启动。 可以启用 自动缩放 以根据群集工作负荷自动纵向扩展/缩减计算节点,可以使用 Max Cores 指定群集的最大计算 vCPU 核心数。 自动缩放程序每分钟作为头节点上的 Windows 计划任务运行一次。

计算节点有两个缩减选项: 解除分配终止。 如果选择 “终止 ”选项,HPC Pack 群集将始终在纵向缩减时删除计算节点 VM。 如果选择 “解除分配 ”选项,HPC Pack 群集将在纵向扩展时解除分配计算节点 VM,并在 VM 保留日) (可配置的天数对其进行维护。只要仍保留已解除分配的计算节点,将不会从 HPC Pack 群集中删除。但是,它们将处于脱机状态,在 HPC Pack 群集中显示为无法访问。 建议对 HPC Pack 群集使用 “解除分配 ”选项,因为它可以显著减少纵向扩展上的节点准备时间,并且只需为解除分配的 VM 的磁盘存储付费。

基础结构设置

  • 虚拟网络:可以选择将在其中创建 HPC Pack 群集的现有虚拟网络和子网。
  • Active Directory 域:如果虚拟网络中已有 AD 域,请指定将加入群集节点的完整域名OU 路径。 或者选择 “新建 AD 域 ”,通过将头节点提升为域控制器来创建新的 AD 域。
  • 机密和证书:强烈建议选择使用 KeyVault 来使用 Azure 密钥保管库传递节点通信证书和用户密码。 在 MSI 标识中,从下拉列表中选择在先决条件中创建的 Azure 用户分配标识,并指定在先决条件中创建的 Azure Key Vault 名称
  • 用户凭据:在 用户名中,指定域名。 在密码密码中,指定在先决条件中创建的 Azure 密钥保管库机密名称来存储域用户密码。
  • PFX 证书:在证书名称中,指定在先决条件中创建的 Azure 密钥保管库证书名称。

高级设置

  • Azure 设置:从下拉列表中选择 Azure 云 凭据
  • 群集软件:为每个群集节点角色指定 操作系统 (操作系统) 。
  • 高级网络:默认情况下,虚拟网络中配置的 DNS 服务器将应用于所有 HPC 节点,如果需要使用不同的 DNS 服务器,可以选择指定 DNS 服务器 。 还可以选择 HN 公共 IP 为头节点分配公共 IP 地址。

azhpcpack CLI

azhpcpack.ps1 CLI 是计划任务调用 azhpcpack.ps1 autoscale () 的所有自动缩放行为的主接口。 CLI 在 C:\cycle\hpcpack-autoscaler\bin)

CLI 可用于诊断自动缩放问题,或从头节点内部手动控制群集缩放。

命令 说明
自动缩放 端到端自动缩放过程,包括节点的创建、删除和联接。
存储桶 输出自动缩放存储桶信息,例如限制等
config 将任何预处理后的有效自动缩放配置写入 stdout
create_nodes 根据各种约束创建一组节点。 nodemanager 接口的 CLI 版本。
default_output_columns 输出可选命令的默认输出列。
delete_nodes 删除节点并从群集中逐出。
initconfig 创建初始自动缩放配置。写入 stdout。
限制 为每个存储桶编写一组详细的限制。 默认值为 json,因为字段数。
nodes 查询节点。
refresh_autocomplete 刷新群集特定资源和节点的本地自动完成信息。
retry_failed_nodes 重试处于失败状态的所有节点。
validate_constraint 然后验证输出为 JSON 一个或多个约束。