你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft HPC Pack 是一种免费的 HPC 解决方案,它基于 azure Microsoft Windows Server 技术,并支持各种 HPC 工作负载。 本页阐明了 HPC Pack 与 Cyclecloud 集成的功能和配置详细信息。
限制和支持的版本
CycleCloud 支持 Microsoft HPC Pack 2016(带 Update 3)和 Microsoft HPC Pack 2019,但存在以下限制:
- 必须在 Active Directory 域中创建群集。
- 群集只能包含单个头节点。
- 尚不支持头节点上的高可用性。
- 不支持头节点 VM 映像自定义。
- 尚不支持 Linux 计算节点。
- 头节点需要出站互联网访问才能下载 Nuget 二进制文件和 Python3。
- 尚不支持 CLI 和 cloud-init 配置。
先决条件
Active Directory 域
目前,必须将所有 HPC Pack 节点加入 Active Directory 域。 如果要在具有站点到站点 VPN 或 ExpressRoute 连接到企业网络的虚拟网络中部署 HPC Pack 群集,则通常已经存在 Active Directory 域。 如果虚拟网络中还没有 AD 域,可以选择通过将头节点提升为域控制器来创建新的 AD 域。
Azure Key Vault
Microsoft HPC Pack 需要 PFX 证书来保护节点通信,并且还需要 AD 域用户凭据才能将节点加入 AD 域。 虽然可以直接在模板中指定 PFX 文件、保护密码和用户密码,但我们强烈建议使用 Azure Key Vault 来保护证书和用户密码。 请参阅 创建 Azure Key Vault 证书。
群集还需要 AD 管理员帐户的用户名和密码,才能在创建节点时将节点加入域。 强烈建议使用 Azure Key Vault。
Azure 用户分配的托管标识
若要将 Azure Key Vault 用于证书和凭据,需要创建一个 Azure 用户分配的托管标识,并为 Azure Key Vault 的机密和证书授予 Get 权限。
请参阅此 Key Vault 教程 ,了解如何创建 Key Vault 和具有 Key Vault 访问权限的托管标识。
建议使用 Azure Role-Based 访问控制 将 Key Vault 权限分配给托管标识。
HPC Pack 节点角色
HPC Pack 群集中有三个不同的节点角色:
- 头节点:提供群集管理和作业计划服务。 目前,仅支持具有本地数据库的单个头节点。
- 中转站节点:接收来自 SOA 客户端的请求,将其分发到计算节点上的服务主机,然后收集响应并将其发送回客户端。 代理节点是在 中转站 节点数组中创建的。 如果要在群集中运行 SOA 工作负荷,则必须创建代理节点。
- 计算节点:接受并运行群集作业。 计算节点是在 cn 节点数组中创建的。
创建新的 HPC Pack 群集
可以单击计划程序下的“Microsoft HPC Pack”图标创建新的Microsoft HPC Pack 群集。
在“ 关于 ”页上,指定群集的唯一 群集名称 。 由于它用作头节点的 NetBIOS 计算机名称,因此请确保它在 AD 域中是唯一的,并且符合 命名约定。
基本设置
- HPC Pack 版本:可以选择 HPC Pack 2019 或 HPC Pack 2016(使用 Update 3)。 建议使用最新的 HPC Pack 版本,即 HPC Pack 2019。
- 虚拟机:可以选择要在其中创建 HPC Pack 群集的 Azure 区域 ,以及每个群集节点角色的 VM 类型 。 还可以指定 经纪商数量 来创建一个或多个 Broker 节点,以便在群集中运行 SOA 工作负荷。
自动缩放
群集在没有任何计算节点的情况下启动。 可以启用 自动缩放 ,以便根据群集工作负荷自动纵向扩展/缩减计算节点,可以使用 Max Core 指定群集的最大计算 vCPU 核心数。 自动缩放程序每分钟作为头节点上的 Windows 计划任务运行一次。
计算节点有两个缩减选项: 解除分配 或 终止。 如果选择终止选项,HPC Pack 群集将始终在缩减规模时删除计算节点虚拟机。 如果选择“解除分配”选项,HPC Pack 群集会在缩减规模时解除分配计算节点 VM,并在可配置的天数内保留这些 VM(VM 保留天数)。 只要已解除分配的计算节点仍保留,就不会从 HPC Pack 群集中删除。 但是,它们处于脱机状态,在 HPC Pack 群集中显示为无法访问。 建议对 HPC Pack 群集使用 “解除分配 ”选项,因为它可以显著减少纵向扩展的节点准备时间,并且只需为解除分配的 VM 的磁盘存储付费。
基础结构设置
- 虚拟网络:可以选择在其中创建 HPC Pack 群集的现有虚拟网络和子网。
- Active Directory 域:如果虚拟网络中已有 AD 域,请指定已加入群集节点的完整 域名 和 OU 路径 。 或者,选择“ 新建 AD 域 ”,通过将头节点提升为域控制器来创建新的 AD 域。
- 机密和证书:强烈建议选择 使用 KeyVault 来使用 Azure Key Vault 传递节点通信证书和用户密码。 在 MSI 标识中,从下拉列表中选择在先决条件中创建的 Azure 用户分配标识,并指定在先决条件中创建的 Azure Key Vault 名称。
- 用户凭据:在 用户名中,指定域名。 在 密码密码中,指定在 先决条件 中创建的 Azure Key Vault 机密名称以存储域用户密码。
- PFX 证书:在 证书名称中,指定在 先决条件中创建的 Azure Key Vault 证书名称。
高级设置
- Azure 设置:从下拉列表中选择 Azure 云 凭据 。
- 群集软件:为每个群集节点角色指定作系统(OS)。
- 高级网络:默认情况下,虚拟网络中配置的 DNS 服务器将应用于所有 HPC 节点,如果需要使用不同的 DNS 服务器,可以选择指定 DNS 服务器 。 还可以选择 HN 公共 IP 来为头节点分配公共 IP 地址。
azhpcpack CLI
azhpcpack.ps1 CLI 是所有自动缩放行为(计划任务调用azhpcpack.ps1 autoscale
)的主接口。 CLI 在 C:\cycle\hpcpack-autoscaler\bin 中提供)
CLI 可用于诊断自动缩放问题,或从头节点内部手动控制群集缩放。
指令 | DESCRIPTION |
---|---|
自动调整大小 | 端到端自动缩放过程,包括节点的创建、删除和联接。 |
存储桶 | 打印自动缩放存储桶信息,例如限制等 |
配置 | 将任何预处理后的有效自动缩放配置写入 stdout |
创建节点 | 根据各种约束创建一组节点。 nodemanager 接口的 CLI 版本。 |
default_output_columns | 输出可选命令的默认输出列。 |
delete_nodes | 删除节点并从群集中逐出。 |
initconfig | 创建初始自动缩放配置。写入 stdout。 |
限制 | 为每个存储桶编写一组详细的限制。 由于字段数量,自动默认为 json。 |
节点 | 查询节点。 |
refresh_autocomplete | 刷新群集特定资源和节点的本地自动完成信息。 |
retry_failed_nodes | 重试处于失败状态的所有节点。 |
validate_constraint | 验证并以 JSON 格式输出一个或多个约束。 |