在上篇中,我们围绕存储系统可扩展架构详细探讨了基础技术原理与典型实践。然而,在实际应用场景中,存储系统面临的挑战远不止于此。随着数据规模呈指数级增长,业务需求日益复杂多变,存储系统还需不断优化升级,才能持续突破容量天花板,为云计算与大数据的发展提供坚实支撑。接下来,我们将深入探索存储系统可扩展架构的SAN系统 和统一存储系统的扩展性。
三、SAN系统的扩展性
在存储系统的世界里,SAN 系统和 NAS 系统就像是两个功能强大却各有专长的 "数据管家"。很多人以为它们的差异在于存储数据的仓库(底层存储阵列)不同,其实关键在于它们如何与服务器 "对话"------ 也就是网络连接方式和使用的通信协议。
想象一下,SAN 系统就像一个高效的 专线快递员,它支持 iSCSI、Fibre - Channel、Fiber - Channel - over - Ethernet 这些 "专属快递通道" 协议,能快速地把数据块送到服务器手中。而 NAS 系统更像是一个 "文件中转站"(想了解NAS的朋友,点击:云计算与大数据进阶 | 27、存储系统如何突破容量天花板?可扩展架构的核心技术与实践------ 分布式、弹性扩展、高可用的底层逻辑(上)-CSDN博客),主要使用 NFS、CIFS 这类协议,擅长处理文件级别的数据传输,方便多个客户端共享文件。
图1:统一NAS的存储阵列
以统一 NAS 为例,它的存储阵列里的每个 NAS 机头就像中转站的 "前台" 和 "后台"。以上图为例。
前端端口(以太网端口)是 "前台",负责接待客户端,处理它们的文件读取和写入请求;后端端口则是 "后台",连接着存储控制器,通过 iSCSI 端口和 FC 端口,让主机能直接或者通过存储网络拿到数据块。
另一种基于 SAN 的存储阵列,为了更好地扩展,引入了 NAS 网关设备。在这个方案里,NAS 网关和存储系统之间通过传统的 FC SAN "专线" 通信。这里有个有趣的点:NAS 网关给每个客户端的接口像一个单独的文件夹,而树状文件系统接口厉害之处在于能几乎无限制地扩充存储阵列。看图2。
图2:NAS网关存储阵列
不过就像仓库太大找东西会变慢一样,文件系统太庞大也会拖慢系统性能。所以部署这个方案时,得像规划复杂的物流网络一样,考虑好数据传输路径、备用路线(冗余结构)和任务分配(负载分布)。
那么基于 SAN 的存储阵列是怎么实现扩展的呢?答案是核心 - 边缘网络连接结构,这个结构就像城市的交通网络。见图3为例。
图3:核心-边缘结构
它有两层 "交通枢纽"------ 核心层和边缘层。边缘层是城市里的普通路口(交换机),用比较低成本的方式,让更多的主机(车辆)能接入网络。每个边缘层的 FC 交换机通过 ISL "道路" 连接到核心层的 FC 控制器(主干道上的高速路口)。
核心层则像城市交通的指挥中心,保证整个网络连接的稳定和高效,所有的数据通信基本都要经过这里或者在这里完成。在这个网络里,存储设备都连接在核心层,就像仓库都建在交通枢纽附近,让主机拿数据时只需要经过一条 "路"(ISL),速度更快。
对性能要求高的主机还能直接连接到核心层,避开路上的拥堵(ISL 时延)。而且边缘层的交换机之间是不直接相连的,这样既保证了网络的连接性,又提高了端口的使用效率。如果网络需要扩展,就像城市要修新的路口和道路,添加新的边缘交换机连到核心交换机,或者在核心层增加更多的交换机和控制器就行。根据核心层交换机数量不同,这个结构还能变成单核拓扑、双核拓扑等不同 "城市布局",比如把单核拓扑变成双核拓扑,就像给城市增加了一条主干道,通过新建 ISL "道路",把每个边缘交换机连接到新的核心交换机上。
四、统一存储系统的扩展性
统一存储系统指的是一个存储控制器可以应对不同类型的存储需求。在统一存储系统中,对存储的数据块、文件和对象等的I/O请求通过不同的I/O路径传输。
统一存储系统最厉害的地方在于一个存储控制器就能应对各种各样的存储需求。想象这个控制器是物流中心的 "总指挥",它能根据不同类型的 "货物",安排最合适的运输路线。当客户端发出对数据块、文件和对象等的 I/O 请求时,就好比客户要求发送不同类型的货物,存储系统会通过不同的 I/O 路径来传输这些数据,就像物流中心为不同货物规划专属的运输通道。这种灵活的处理方式,让统一存储系统在复杂的数据存储场景中,既能保证效率,又能满足多样化的需求 ,就像一个真正的全能管家,有条不紊地打理着庞大的数据世界。统一存储系统如图4所示。
图4: 统一存储系统
①数据块I/O请求:应用程序服务器连接到存储控制器的iSCSI、FC或FCoE端口上,服务器通过iSCSI、FC或FCoE连接发送数据块I/O请求。存储控制器可处理数据块I/O请求,并响应应用程序服务器。
②文件I/O请求:NAS客户端(装载或映射NAS共享的位置)使用NFS或CIFS协议向NAS控制器发送文件I/O请求。NAS控制器会接收请求,将其转换为数据块I/O请求,并将其转发到存储控制器。接收到存储控制器的数据块数据后,NAS控制器会再次将数据块I/O请求转换为文件I/O请求,并将数据发送到NAS客户端。
③对象I/O请求:Web应用程序服务器通常使用REST、SOAP或API将对象I/O请求发送到OSD(Object Storage Device,对象存储设备)节点。OSD节点会接收请求,将其转换为数据块I/O请求,并发送给存储控制器。存储控制器会处理数据块I/O请求并响应OSD节点,将请求的对象提供给Web应用程序服务器。
统一存储系统奠定了存储云平台的基础,它屏蔽了底层异构存储的复杂性,将现有的异构物理存储(不同类型的存储设备、不同厂家的产品)转变为简单的、可扩展的开放式云存储平台。同时该系统还可以为数据中心中的其他层(如IaaS、PaaS、SaaS等平台)提供简单、高效、开放、可扩展的API,为实现全数据中心云化打下坚实的基础。
为了保证存储云平台的扩展性和开放性,存储云平台通过基于行业标准的存储管理接口标准(Storage Management Initiative Specification,SMI-S)接口或接入软件存储平台(例如开源的Ceph)实现底层物理存储设备的接入。存储云平台通常需要对外提供开放式API,以便进行扩展和二次开发;采用集群部署架构,根据存储资源的规模进行横向扩展,以保证整个存储云平台具有良好的可扩展性。SMI-S是存储网络工业协会(Storage Networking Industry Association,SNIA)制定的、符合ISO标准的异构存储间的互联互通协议,目前被用于超过800款硬件、75款软件存储产品上。Ceph是开源的免费软件存储平台,它虽然是基于对象存储,但是在结构层提供文件、数据块及对象存储API。SMI-S专注于异构存储间的互联互通,而Ceph专注于基于商品现货硬件平台搭建廉价的、可扩展的存储平台。
回顾上下两篇文章,我们系统探讨了存储系统突破容量天花板的关键技术与实践,这些技术并非孤立存在,而是相互协作、相互补充,共同构建起强大而灵活的存储架构。
展望未来,随着云计算、大数据、人工智能等技术的飞速发展,数据规模将持续呈爆炸式增长,对存储系统的要求也会越来越高。存储系统突破容量天花板的探索永无止境,新兴技术如分布式存储与 AI 的深度融合、更高效的存储介质创新等,将为存储系统的发展带来新的机遇与挑战。相信在不断的技术创新与实践中,存储系统将以更强大的性能、更灵活的扩展性,为数字时代的数据存储需求保驾护航,助力各行各业在数据的海洋中自由遨游。
(文/Ricky - HPC高性能计算与存储专家、大数据专家、数据库专家及学者)