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

制造 HPC 存储

计划 HPC 工作负载性能时,存储访问不可或缺。 以下材料有助于简化决策过程,并最大程度地减少有关特定存储解决方案功能(或缺少功能)的任何误解。

设计注意事项

请务必确保所需数据在正确的时间到达 HPC 群集计算机。 你还希望确保这些单独的计算机的结果快速保存,并可用于进一步分析。

分配工作负载流量

考虑 HPC 环境将生成并处理的流量类型。 如果计划运行多种类型的工作负载并计划将存储用于其他目的,这一步尤其重要。 请考虑并记录以下流量类型:

  • 单个流与多个流
  • 读取流量与写入流量的比率
  • 文件平均大小和计数
  • 随机访问模式与顺序访问模式

数据区域

下一个类别应考虑数据的位置。 区域感知有助于确定是否可将复制、缓存或同步用作数据移动策略。 以下是事先检查的区域设置项:

  • 源数据位于本地和/或 Azure 中?
  • 结果数据位于本地和/或 Azure 中?
  • 要与源数据修改时间线协调 Azure 中的 HPC 工作负荷?
  • 是否是敏感/HIPAA 数据?

性能要求

存储解决方案的性能要求通常概括如下:

  • 单流吞吐量(以 Gb/ps 为单位)
  • 多流吞吐量(以 Gb/ps 为单位)
  • 预期最大 IOPS
  • 平均延迟 (ms)

每个注意事项都会影响性能,因此这些数值指导了特定解决方案应实现的目标。 例如,你可能有一个 HPC 工作负载,它在工作流期间进行大量的文件创建和删除操作。 这些操作可能会影响总体吞吐量。

访问方法

考虑需要客户端访问协议,并明确需要哪些协议功能。 有不同版本的 NFS 和 SMB。

以下是一些需要考虑的事项:

  • 所需的 NFS/SMB 版本
  • 预期的协议功能(ACL,加密)
  • 并行文件系统解决方案

总容量要求

下一个注意事项为 Azure 中的存储容量。 它有助于了解解决方案的总体成本。 如果计划长时间存储大量数据,则可能需要考虑在存储解决方案中使用“分层”功能。 分层可提供成本更低的存储选项,并在热层中提供成本更高但性能也更高的存储。 因此,评估容量要求,如下所示:

  • 所需的总容量
  • 所需的“热层”总容量
  • 所需的“暖层”总容量
  • 所需的“冷层”总容量

身份验证和授权方法

有关身份验证和授权要求(例如使用 LDAP 服务器或 Active Directory 环境),请确保为体系结构包含适当的支持系统。 如果需要支持 UID/GID 映射到 Active Directory 用户等功能,请确认存储解决方案支持该功能。

以下是一些需要考虑的事项:

  • 本地(UID/GID 仅在文件服务器上)
  • 目录(LDAP、Active Directory)
  • UID/GID 是否映射到 Active Directory 用户?

常见的 Azure 存储解决方案比较

类别 Azure Blob 存储 Azure 文件 Azure 托管 Lustre Azure NetApp 文件
用例 Azure Blob 存储最适合大规模读取密集型顺序访问工作负载,其中数据引入一次,但很少或没有进一步修改。

如果维护工作量很少或者根本无需维护,则 Blob 存储可提供最低的总拥有成本。

部分示例方案包括:大规模分析数据、吞吐量敏感型高性能计算、备份和存档、自动驾驶、媒体渲染或基因组测序。
Azure 文件存储是高度可用的服务,最适合用于随机访问工作负载。

对于 NFS 共享,Azure 文件存储提供完整的 POSIX 文件系统支持。 可以从包含内置 CSI 驱动程序和基于 VM 的平台的容器平台(例如 Azure 容器实例(ACI)和 Azure Kubernetes 服务 (AKS)轻松使用它。

部分示例方案包括:共享文件、数据库、主目录、传统应用程序、ERP、CMS、不需要高级管理的 NAS 迁移,以及需要横向扩展文件存储的自定义应用程序。
Azure 托管 Lustre 是一个完全托管的并行文件系统,最适合中型到大型 HPC 工作负荷。

通过提供熟悉的 Lustre 并行文件系统功能、行为和性能,确保长期应用程序投资,在云中启用 HPC 应用程序,而不会破坏应用程序兼容性。
在云中完全托管的文件服务,由 NetApp 提供支持,提供高级管理功能。

NetApp 文件适用于需要随机访问的工作负荷,提供广泛的协议支持和数据保护功能。

一些示例方案包括:需要丰富的管理功能的本地企业 NAS 迁移、SAP HANA、延迟敏感或 IOPS 密集型高性能计算或需要同时进行多协议访问的工作负荷。
可用的协议 NFS 3.0

休息

Data Lake Storage Gen2
Smb

NFS 4.1

(协议之间不可互操作性)
Lustre NFS 3.0 和 4.1

SMB
关键功能 与 HPC 缓存集成,用于低延迟工作负荷。

集成式管理,包括生命周期、不可变 Blob、数据故障转移和元数据索引。
区域冗余,可实现高可用性。

延迟始终低于 10 毫秒。

可预测的性能和成本,可以通过添加/减少容量进行缩放。
高达 2.5PB 的高存储容量。

低(约 2 毫秒)延迟。

在几分钟内启动新群集。

支持使用 AKS 的容器化工作负荷。
极低的延迟(亚毫秒级)

丰富的 NetApp ONTAP 管理功能,例如云中的 SnapMirror。

一致的混合云体验。
性能(每个卷) IOPS 高达 20,000,吞吐量高达 100 GiB/秒。 高达 100,000 IOPS,最大吞吐量为 80 GiB/秒。 高达 100,000 IOPS,最大吞吐量为 500 GiB/秒。 高达 460,000 IOPS,吞吐量高达 36 GiB/秒。
定价 Azure Blob 存储定价 Azure 文件存储定价 Azure 托管 Lustre 定价 Azure NetApp 文件定价

自带并行文件系统

与 NFS 一样,可以创建多节点 BeeGFS 或 Lustre 文件系统。 此类系统的性能主要取决于所选虚拟机的类型。 可以使用 BeeGFSAzure 市场 中找到的图像,也可以使用名为 Whamcloud 的 DDN 实现的 Lustre 实现。 使用来自 BeeGFS 或 DDN 等供应商的第三方映像,你可以购买其支持。 否则,可以按其 GPL 许可证的方式使用 BeeGFS 和 Lustre,而不收取其他费用(超出计算机和磁盘)。 这些工具可以轻松地将 Azure HPC 脚本与临时本地磁盘(暂存)或高级版/超级 SSD 配合使用进行持久存储。

Cray ClusterStor

对于大型工作负荷来说,最大的挑战之一是副本 (replica)与大型 Lustre 环境一起工作的大型计算群集的纯“裸机”性能(就 TB/秒吞吐量和可能为 PB 的存储而言)。 现在可以使用 Azure Cray ClusterStor 解决方案运行这些工作负载。 此方法是放置在相关 Azure 数据中心的纯裸机 Lustre 部署。 BeeGFS 和 Lustre 等并行文件系统因其体系结构提供最佳性能。 但是,这种体系结构具有较高的管理价格,这些技术的使用也是如此。

后续步骤

以下文章提供有关云采用过程中针对制造 HPC 环境的每个步骤的指导。