毋庸置疑,我们身边的数据越来越多,越来越繁杂,一个最明显的证据就是在一些典型应用系统中的音频、视频、图片、E-Mail、各类电子文档、报表、账单等非结构化数据的衡量中,那些代表着数据容量的计量单位,正在从TB、PB一路攀升到EB级来计算。
传统NAS面对数据大军无处扩展
于是传统的NAS存储设备在一贯的存储工作中,遇上了新的性能及扩展性问题。毕竟传统的相对成熟的NAS存储系统,是在存储资源比较昂贵、数据产生速度较慢的环境下产生的。
面对今天铺面而来的数据大军,传统NAS首先自省,发现了系列问题。
系统可用性低。传统NAS的磁盘系统与控制系统紧耦合,存储控制软件与其他软件运行于同一控制器,NAS机头的配置也决定了后端存储的配置。不同控制器不能实现真正完全的数据共享,存储数据只能通过一个控制器访问,控制器故障后切换时间长,这样势必使某些应用系统的可用性不高。
扩展性差、性能低。单套设备固定都是单/双机头架构,导致系统扩展性差,配置固定容量扩展有限,只能通过增加多套设备提升性能,但多套设备不能共享存储资源,又导致数据的多份拷贝共存,难以保证一致性。
存储空间利用率低。由于每个NAS引擎拥有各自独立的存储空间,引擎资源利用率不高,相互之间无法共享。当双机系统的数据存储空间不足,而其他NAS设备还有较大的剩余空间时,无法将这些空间提供给空间不足的设备使用。
管理复杂,费用高。由于用户的环境可能基于不同应用配置多套不同的小容量低性能的存储设备,提高了管理的复杂性。同时,由于每台存储设备相对孤立,系统管理员需要耗费大量的时间来管理不同NAS存储设备上的数据,维护成本增加。
对症下药 OceanStor N8000集群NAS可不间断扩展
为解传统NAS系统之忧,华为赛门铁克公司借助集群技术来提高存储系统的容量、性能、可用性、可靠性,于是OceanStor N8000集群NAS产品诞生了。
在引擎节点与存储单元设计方面,OceanStor N8000集群NAS克服传统NAS在存储容量与处理性能等方面局限性同时,着重从以下几个因素进行设计:
一,存储空间的海量性与可扩展性。 当企业数据的存储容量不足时,存储系统要能够实现在线容量的扩展而不中断前端主机业务的访问。N8000集群NAS系统可在线将存储单元数据扩充至64台,最大容量达到15360TB。后端存储单元支持SSD、FC、SAS及SATA磁盘。同时支持后端存储单元不同磁盘类型的混插,借助自带的动态分级存储(Dynamic Storage Tiering)功能来满足数据在不同生命周期阶段的不同服务质量。
二,多用户访问的并发性和全共享性。N8000集群NAS的引擎节点,要为大量的用户提供并发服务,必须保证N8000 NAS引擎的计算能力和I/O带宽足够,在N8000集群NAS系统支持2~16个NAS引擎,其性能可随集群NAS引擎节点数量增加成线形增长,可以在线平滑、快速地扩展集群节点来提高N8000系统的性能,同时也支持单个NAS引擎的硬件升级扩展(CPU,内存)。不同层面来提升整个集群NAS机头的整体处理能力。
三,集群设备的易用性和可用性。N8000集群NAS存储系统易于管理和使用,支持新增引擎节点自动部署,并自动实现负载分担,无需人工干预。灵活的故障告警监控机制,提供邮件、SNMP和Syslog日志查询等告警和监控方式,提高维护效率。引擎节点间采用Active-Active工作模式,保障在一个甚至多个节点出现故障的时候,不影响主机业务运行,从存储单元到链路再到NAS引擎所有硬件设备全冗余设计,保障集群NAS设备的持续运行。
可见,OceanStor N8000在NAS引擎、存储单元等层面组成的集群,其性能和容量等属性可通过集群的方式得以叠加和扩展,不但有效解决了高性能的文件共享问题,同时兼顾了数据的高可用性及文件系统的高扩展性。
集群特性 支持节点在线扩展
OceanStor N8000集群NAS卷管理软件CVM(Cluster Volume Manager)使集群最多可支持 16 个节点,并且16个节点可以同时访问和管理集群卷管理控制下的存储单元集。下图列举了一个简单的集群示例,它由N个(≤16)具有类似或相同硬件特性(CPU、RAM 和网卡适配器)并配置了相同软件(包括操作系统)的节点组成。
图1 N节点的N8000集群示例
集群中所有节点通过专用网络完全连接在一起,同时各节点通过光纤通道连接到共享存储单元(最大支持到64套存储单元)。每个节点都有两条独立的路径通向这些存储单元,而这些存储单元被配置在一个集群共享磁盘组中。
各节点通过专用网络共享有关系统资源和节点状态等信息。 任何节点都可以识别当前活动的节点、正在加入或脱离集群的节点以及已发生故障的节点。该专用网络至少需要两个通信通道,以便提供冗余来应对其中一个通道发生故障的情况。
存储整合特性 支持海量扩展存储单元容量
OceanStor N8000强大的卷管理软件CVM。CVM是一种存储管理软件,通过在物理磁盘和磁盘阵列上创建虚拟设备,CVM消除了磁盘存储的物理限制。CVM运行在I/O驱动层和文件系统层(或数据库管理系统层)之间,通过将磁盘的一部分、整个磁盘或成组的磁盘组织成逻辑卷,以此来提高了存储系统的可用性、性能和可管理性。
CVM提供了易用的在线存储管理功能,统一实现对下层不同磁盘阵列的存储空间的统一管理和分配,并能充分利用卷镜像、卷扩展等技术,简化存储空间的管理、分配和使用,提升了存储空间的性能及空间利用率。支持对多套磁盘阵列的逻辑卷进行高效灵活的卷管理。通过虚拟化卷管理功能,CVM支持管理海量的存储空间,使得采用了集群卷管理机制的N8000集群NAS存储系统支持海量存储单元(PB级别的存储容量)。
图2 海量扩展存储单元示例
图2海量扩展存储单元示例,展示了常见NAS产品无法实现的先进的存储功能,支持SATA,SAS,FC,SSD不同磁盘的混插,同时支持存储容量的在线扩展。基于不同存储介质的动态分级存储功能,大大提升了用户原有存储数据的价值和生命周期管理。
文件系统特性 单个文件系统可管理近亿个数量的文件
N8000集群NAS文件系统CFS(Cluster File System),是第一个正式商用的日志文件系统,适用于高性能、高可用的大数据量处理应用环境。CFS 不同于原始的UNIX文件系统,它从一开始即设计用于适应大规模数量的文件和巨大的存储区数据量处理需要。
CFS 文件系统的以下几个设计特性使得它能够管理大规模数量的文件以及大容量的存储区域:
首先,基于 Extent 的存储分配可以非常简明地描述大文件,与其他 UNIX 文件系统相比,使得描述文件数据位置的元数据结构十分紧凑。元数据结构紧凑所带来的结果是,处理所用开销更少,文件系统的内存使用量更低,读取和写入操作更加快速。
其次,描述单个文件的 inode 数据结构可动态分配。传统的 UNIX 文件系统用于固定数量的 inode,inode 通常与文件系统管理的存储设备的容量相关,因此系统可以容纳的文件有一个数量上限。在 CFS 中,代表文件的 inode 的列表本身就是一个文件;当有更多的文件添加到文件系统时,列表可以像文件一样扩充。对于CFS 系统可容纳的文件数量没有内在的限制(建议单个文件系统的文件数量不超过一亿个)。
最后,基于Extent的存储分配对于处理大规模文件的应用程序尤为重要,CFS 可以用简洁的方式映射这类文件(文件的存储区连续的情况下使用一个描述符),因此在应用程序读写数据时可将文件块地址简便快速地转换为文件系统块地址。由于文件大小不受文件系统可映射多大数量文件块的能力限制,因此可以创建非常大的文件。
综上所述,N8000集群NAS的文件系统CFS适用于海量文件、TB级别大文件数据处理的应用场景。N8000集群NAS存储系统通过这两方面的技术优势,实现了支持PB级别容量的规格需求。
图3 OceanStor TM N8300集群NAS存储系统
图4 OceanStor N8500TM集群NAS存储系统
结束语
OceanStor N8000集群NAS强大的扩展功能(包括处理性能扩展、存储空间扩展、文件系统大小扩展等)帮助企业在信息化数据大潮的TB、PB乃至EB道路上一路领先。