大规模并行的网格架构
XIV的内部采用了一种独特的全网格架构,内部由多个网格单元组成,每个网格单元都是基于X86的标准化架构,包括了前端端口、计算单元、缓存、后端磁盘组成了一个紧耦合的网格节点。
这种网格节点构成了XIV存储系统的主要部分,被称为modules(模块)。模块提供处理单元、缓存、主机接口和基于标准的英特尔和Linux系统。它们通过一个内部的以太网交换机实现冗余连接。所有模块在一起形成一个网格体系结构的工作模式,因此,该系统可以提供本身具有的并行方式,其强大计算能力能够适用于很多的并行分布式计算环境,如图 。
▲15模块配置的XIV前后视图:主机接口部分由6个模块组成,每个模块包含处理器、缓存、12块SATA磁盘驱动器以及光纤主机接口。数据部分由9个模块组成,每个模块包含处理器、缓存、12块SATA磁盘驱动器,不包括主机接口。所有的这些模块通过一台内嵌的以太网交换机连接在一起,该内部网络可以提供最大的带宽利用率和单一组件失效的故障接管。
在概念层面上,数据模块的功能是系统构建数据块的基本元素,此外,XIV内部的节点与节点之间还存在不同的分工:分为主机节点和数据节点,主机接口部分由6个模块组成,每个模块包含12块SATA磁盘驱动器;数据部分由9个模块组成,每个模块包含12块SATA磁盘驱动器。
从根本上说,接口模块其实和数据模块的结构基本相同,但是承担的功能不同,此外采用的磁盘,缓存和处理资源不一定与数据模块一致,接口模块的设计包括光纤通道和iSCSI接口的主机系统的连接以及远程镜像。
▲以上是15模块配置的XIV的逻辑架构概览。现在最基础配置的XIV是6个模块 其中3个模块作为前端主机模块。再扩展的话,直接到9个模块,其中6个模块作为主机接口模块,未来主机模块将不再扩充,扩充的只是数据模块。这样做的好处是,避免前端端口增加时,用户需要复杂的操作配置过程。
XIV存储系统包含一个冗余的交换以太网络结构,负责进行数据和元数据之间的通信模块。包括两个接口模块之间的数据交换;接口模块和数据模块之间的数据交换;以及两个数据模块之间的数据交换。主机节点和数据节点通过内部以太网交换机连接起来,采用了独特的算法构成了一个大规模并发的虚拟化架构,利用高容量和低成本的SATA磁盘驱动器实现了较高的性能。