Novus 存储系统架构
Novus 架构由 Novus Data Director(NDD)和 ONTAP 数据服务器的实例组成。ONTAP 数据服务器支持数据路径,而 NDD 通过并行 NFS(pNFS)管理元数据和客户端访问。
ONTAP 数据服务器
数据服务器是专门为 Novus 构建的 ONTAP 集群。它们实现 Novus 数据平面,存储文件数据并将其提供给 NFS 客户端。一个 Novus 命名空间可以将其文件数据分布在多个 ONTAP 集群中;一个集群可以为许多不同的命名空间提供服务。这种灵活性允许根据需要添加数据服务器,从而实现容量和性能的增长。
客户端使用标准 NFS 客户端访问 ONTAP 数据服务器,无需自定义 NetApp 软件。客户端从 Novus Data Director 获取文件布局后,可以通过 NFSv3 和 RDMA(可选)直接在 ONTAP 数据服务器上读取和写入文件数据。批量数据从不通过 Novus Data Director,因此数据流量在数据服务器之间并行传输。
数据服务器不参与管理命名空间。它们将每个文件的数据作为后备文件存储在 ONTAP 卷中。ONTAP 数据服务器不维护 Novus 命名空间元数据,例如目录树或文件在数据服务器上的条带化方式。
适用于 NetApp Novus 的 AFF A90 是专为运行 ONTAP 的 Novus 打造的 AFF A90 版本。其特点包括:
-
额外的双 NVRAM 卡
-
高带宽网络适配器
-
配置为标准 ONTAP HA 对
-
使用 RAID-DP 或 RAID-TEC 保护数据。
标准 ONTAP 集群不能用作 Novus 数据服务器;仅支持专门为 Novus 构建的平台。
Novus Data Director
Novus Data Director (NDD) 是 pNFS 架构中元数据服务器 (MDS) 角色的实现,并提供 Novus 元数据平面。_MDS 主机_是一个运行 Linux 以及 MDS 协议服务和元数据存储的物理服务器。
NDD 将每个命名空间作为单个文件系统呈现给客户端。它拥有命名空间元数据:文件和目录、文件属性、每个文件的数据存储位置的映射以及协调客户端访问所需的协议状态。客户端通过其虚拟 IP 地址挂载命名空间,并使用带有并行 NFS (pNFS) 的 NFSv4.2 与 NDD 进行通信。NDD 处理所有元数据操作,例如查找、文件创建和属性更改。当客户端打开文件时,NDD 会为其提供 pNFS 灵活文件布局,该布局会告诉客户端哪些数据服务器保存了文件数据。然后,客户端可以直接与 ONTAP 数据服务器进行读取和写入;NDD 位于元数据路径中,但不在数据路径中。
NDD 被实现为在至少三个专用服务器的集群上运行的软件。它将元数据服务器进程与复制的分布式数据库相结合,该数据库将命名空间元数据存储在加密的本地存储中。每个命名空间都在其中几个服务器上运行自己的元数据服务器进程。所有正常运行的服务器都会通知命名空间的虚拟 IP 地址,从而分散客户端负载,让客户端无需重新挂载即可进行故障切换。由于权威元数据存在于复制的数据库中,因此服务器可以发生故障并重新启动,而不会丢失命名空间状态。
ONTAP 集群上的数据放置由 NDD 控制。它保留数据服务器的注册表,使用轻量级 NFS 探测器确保每个数据服务器都可用,并跟踪每个服务器上的可用容量。创建文件时,NDD 会选择数据服务器,通过 NFS 创建后备文件,并记录其位置。如果数据服务器不可用,NDD 会停止在该服务器上放置新数据,并撤回指向该服务器的客户端布局。
Novus 部署
下图从宏观层面展示了典型的 Novus 部署。值得注意的方面包括具有多个 Novus Data Director 和 ONTAP 数据服务器节点的单一命名空间。此架构提供高可用性和低延迟,以支持后端 GPU 服务器。
