了解 Novus 存储系统
NetApp Novus 是一款功能强大的存储系统,专为满足超大规模人工智能的需求而构建。它将 NetApp 在企业存储方面的经验扩展到了训练和推理所需的超高性能基础架构中。了解其管理结构和配置选项对于实现有效管理和最佳性能至关重要。
概述
NetApp Novus 是一款横向扩展文件存储系统解决方案,专为现代 AI 工作负载所需的吞吐量和规模而设计。它将许多独立的 ONTAP 存储集群连接到一个单一的命名空间中,客户端将其视为一个文件系统。Novus 构建在并行 NFS (pNFS)上,它将元数据与文件数据分开。专用元数据服务管理命名空间,而存储集群直接向客户端并行提供文件数据。这消除了单个存储集群的吞吐量上限,不再限制系统传输数据的速度。
Novus 部署只需添加存储集群即可实现增长。每个新集群都将其全部带宽和容量添加到命名空间,因此随着系统的增长,总吞吐量会增加,而无需客户端重新挂载或进行中断性重新平衡。元数据服务与数据服务器分开扩展,因此您可以扩展命名空间大小和元数据性能以适应工作负载。Novus 旨在全速运行每个存储节点,并在大规模下将组件故障视为常规且无中断的事件。主要目标是即使系统扩展到非常大的规模,也能保持数据流向计算。
客户端使用标准 NFS 客户端,使 Novus 能够轻松适应大型 GPU 和计算集群。而且 Novus 是多租户的,因此一个部署可以托管多个隔离的客户或工作负载,每个客户或工作负载都有自己独立的命名空间。它还建立在 ONTAP 经过验证的数据管理和保护基础之上。对于客户而言,这意味着存储可以使 GPU 保持繁忙,通过从每个节点获得更高的性能来降低基础架构成本,并在单个命名空间中支持非常大的数据集。
Novus 可以帮助大规模运行 AI 和其他数据密集型工作负载的组织。这通常包括新云、GPU 即服务提供商、主权云、超大规模云服务提供商,以及运行 AI 训练和推理的大型企业和研究机构。Novus 可以让任何使用高性能计算或媒体处理的客户受益,这些客户需要每秒数 TB 的吞吐量,并希望与计算资源同步扩展存储。
系统设计原则
Novus 的设计和构建基于几项核心原则。这些基础架构选择可提高其性能、可扩展性和弹性。这可以帮助需要高性能存储的客户保持 GPU 忙碌并降低基础架构成本。
- Exascale 就绪型存储
-
Novus 旨在成为一个支持百亿亿次级的软件定义的存储基础堆栈。它将水平扩展的 pNFS 元数据服务器与独立且解耦的数据服务器相结合。
- 超出传统 ONTAP 集群限制的吞吐量
-
传统上,单个 ONTAP 集群会达到由其控制器数量和互连带宽设定的固定吞吐量上限。AI 训练和推理需要单个 ONTAP 集群无法达到的吞吐量。
- 通过添加集群进行扩展
-
Novus 将许多独立的 ONTAP 集群(每个集群小到一个 HA 对)合并到一个命名空间中。每个新集群都贡献了其全部带宽,因此总吞吐量呈线性增长。客户端不需要重新挂载,设备群也不需要重新平衡。
- 可单独扩展的元数据
-
元数据服务层和分片元数据存储都可以从一个实例增加到 1,000 多个实例。元数据容量和请求率不取决于使用的数据节点数量。
- 线速数据节点
-
每个数据节点在读取时应以网卡全速运行,在写入时应以 NVMe 全速运行。任何未使用的每节点吞吐量仅表现为额外的硬件和成本。
- 弹性是主要的设计制约因素
-
在 1,000 个或更多存储节点的规模下,故障并不罕见。弹性是主要的设计约束,而不是事后的运维考量。
网络文件系统(NFS)实施
Novus 是网络文件系统(NFS)协议的软件定义实现。它依赖于 NFSv4(特别是并行 NFS(pNFS)扩展)来拆分元数据和数据路径。客户端可以使用标准 NFS 客户端使用 NFSv4 访问 Novus Data Director(NDD),同时使用 NFSv3 直接在 ONTAP 数据服务器上访问数据。
并行网络文件系统(pNFS)
并行 NFS (pNFS) 是 NFSv4.1 引入的一项功能,它将文件元数据管理与文件数据访问分开。NFS 服务器处理元数据操作,并为客户端提供有关文件数据存储位置的信息。然后,客户端可以直接在专用存储设备和数据服务器上访问数据,而不是通过单个服务器发送所有读取和写入。
NFS 服务器提供了一个布局,该布局描述了每个文件的数据如何排列以及客户端如何访问它。根据布局和存储配置,客户端可以与一个或多个数据服务器并行通信。这提高了数据传输性能,并减少了元数据服务器上的数据处理负载。
pNFS 支持多种布局类型,包括文件、块、对象和灵活文件。每种类型都描述了将文件数据映射到底层存储的不同方式,以及客户端访问这些数据的相应方式。Novus 使用灵活的文件布局。
pNFS 灵活的文件布局是布局选项的最新成员。它提供了一个灵活的基于文件的布局,可以描述存储在多个数据服务器上的数据,还可以支持镜像副本。客户端使用布局信息来选择适当的数据服务器路径进行访问。这使部署能够根据存储配置和工作负载要求调整数据放置和访问行为。
主要组件
有两个主要的 Novus 组件,它们建立在 pNFS 标准和 NetApp 的企业存储专业知识之上。
- ONTAP 数据服务器
-
ONTAP 数据服务器实现 Novus 数据平面。它存储文件数据并将其提供给 NFS 客户端。Novus 命名空间可以将其文件数据分布在多个 ONTAP 集群中,一个 ONTAP 集群可以为多个命名空间提供服务。
- Novus Data Director (NDD)
-
Novus Data Director 提供 Novus 元数据平面。它管理命名空间元数据,处理客户端对元数据操作的请求,并为客户端提供描述文件数据在 ONTAP 集群中存储位置的布局。客户端使用带有 pNFS 的 NFSv4.2 与 NDD 交互,而实际文件数据则直接从 ONTAP 访问。
查看"Novus 架构"以了解有关这些组件以及它们如何协同工作的更多详细信息。
其他技术和概念
还有其他几个与 Novus 和底层技术相关的概念。
- 命名空间
-
命名空间是一种组织和标识资源的逻辑结构,允许在定义的范围内一致地引用它们。使用 NFSv4,命名空间是呈现给客户端的文件和目录的层次结构;它提供了导出文件系统的统一视图,客户端可以使用路径导航。每个 NDD 命名空间都有自己的元数据服务器实例。
- 联邦
-
联合是一种连接独立系统的技术,以便它们可以在保持单独管理的情况下协同工作;它可以应用于身份、应用程序服务、网络、数据库和其他资源。当与数据提供者一起使用时,联合使用户或应用程序能够通过统一界面访问来自多个源的数据,同时提供者保留对其数据的控制——从而支持互操作性并减少集中或复制信息的需要。
- 分片
-
分片是一种用于在多个服务器之间拆分数据库数据的技术,每个服务器都存储和服务一部分数据。它通过分布存储和查询负载来提高容量和性能。
- 边界网关协议
-
边界网关协议(BGP)是一种路由协议,用于在自治系统(构成互联网的网络)之间交换可达性信息,并使用路由策略和属性选择路径。Novus 依靠 BGP 来支持其多租户架构。
- 可扩展的分布式元数据存储区
-
可扩展的分布式元数据存储是跨多个节点管理元数据的系统,可确保高可用性、容错和高效访问。在 Novus 中,Novus Data Director (NDD) 实现了可扩展的分布式元数据存储(或简称 metadata store),以处理命名空间元数据并为客户端提供用于访问文件数据的布局。