系统架构设计笔记(19)—— 网络存储技术
目前,主流的网络存储技术主要有三种,分别是直接附加存储( Direct Attached Storage , DAS ) 、 网络附加存储( Network Attached Storage , NAS )和存储区域网络( Storage Area Network , SAN )。
1 直接附加存储( Direct Attached Storage , DAS )
DAS 是将存储设备通过 SCSI ( Small Computer System Interface ,小型计算机系统接口)电缆直接连到服务器,其本身是硬件的堆叠,存储操作依赖于服务器,不带有任何存储操作系统。因此,有些文献也把 DAS 称为 SAS ( Server Attached Storage ,服务器附加存储)。
DAS 的适用环境为:
(1)服务器在地理分布上很分散,通过 SAN 或 NAS 在它们之间进行互连非常困难时;
(2)存储系统必须被直接连接到应用服务器(例如, Microsoft Cluster Server 或某些数据库使用的“原始分区”)上时;
(3)包括许多数据库应用和应用服务器在内的应用,它们需要直接连接到存储器上时。
由于 DAS 直接将存储设备连接到服务器上,这导致它在传递距离 、 连接数量 、 传输速率等方面都受到限制。因此,当存储容量增加时, DAS 方式很难扩展,这对存储容量的升级是一个巨大的瓶颈;另一方面,由于数据的读取都要通过服务器来处理,必然导致服务器的处理压力增加,数据处理和传输能力将大大降低;此外,当服务器出现宕机等异常状况时,也会波及存储数据,使其无法使用。目前 DAS 基本被 NAS 所代替。
2 网络附加存储( Network Attached Storage , NAS )
采用 NAS 技术的存储设备不再通过 I/O 总线附属于某个特定的服务器,而是通过网络接口与网络直接相连,由用户通过网络访问。 NAS 存储系统的结构如图 1 所示。
NAS 存储设备类似于一个专用的文件服务器,它去掉了通用服务器的大多数计算功能,而仅仅提供文件系统功能,从而降低了设备的成本。并且为方便存储设备到网络之间能以最有效的方式发送数据,它专门优化了系统硬件与软件架构。 NAS 以数据为中心,将存储设备与服务器分离,其存储设备在功能上完全独立于网络中的主服务器,客户机与存储设备之间的数据访问不再需要文件服务器的干预,同时它允许客户机与存储设备之间进行直接的数据访问,所以不仅响应速度快,而且数据传输速率也很高。
NAS 技术支持多种 TCP/IP 网络协议,主要是 NFS ( Net File System ,网络文件系统)和 CIFS ( Common Internet File System ,通用 Internet 文件系统)来进行文件访问,所以 NAS 的性能特点是进行小文件级的共享存取。在具体使用时, NAS 设备通常配置为文件服务器,通过使用基于 Web 的管理界面来实现系统资源的配置 、 用户配置管理和用户访问登录等。
NAS 存储支持即插即用,可以在网络的任一位置建立存储。基于 Web 管理,从而使设备的安装 、 使用和管理更加容易。 NAS 可以很经济地解决存储容量不足的问题,但难以获得满意的性能。
3 存储区域网络( Storage Area Network , SAN )
SAN 是通过专用交换机将磁盘阵列与服务器连接起来的高速专用子网。它没有采用文件共享存取方式,而是采用块( block )级别存储。 SAN 是通过专用高速网将一个或多个网络存储设备和服务器连接起来的专用存储系统,其最大特点是将存储设备从传统的以太网中分离出来,成为独立的存储区域网络, SAN 的系统结构如图 2 所示。
FC 交换机,即 Fiber Channel Switch。
根据数据传输过程采用的协议,其技术划分为 FC SAN 和 IP SAN。 另外,还有一种新兴的 IB SAN 技术。
3.1 FC SAN
FC ( Fiber Channel ,光纤通道)和 SCSI 接口一样,最初也不是为硬盘设计开发的接口技术,而是专门为网络系统设计的,随着存储系统对速度的需求,才逐渐应用到硬盘系统中。
光纤通道的主要特性有:热插拔性 、 高速带宽 、 远程连接 、 连接设备数量大等。它是当今最昂贵和最复杂的存储架构,需要在硬件 、 软件和人员培训方面进行大量投资。
FC SAN 由三个基本的组件构成,分别是接口( SCSI 、 FC ) 、 连接设备(交换机 、 路由器)和协议(IP 、 SCSI )。这三个组件再加上附加的存储设备和服务器就构成一个 SAN 系统。它是专用 、 高速 、 高可靠的网络,允许独立 、 动态地增加存储设备,使得管理和集中控制更加简化。
FC SAN 有两个较大的缺陷,分别是成本高和复杂性,其原因就是因为使用了 FC 。在光纤通道上部署 SAN ,需要每个服务器上都要有 FC 适配器 、 专用的 FC 交换机和独立的布线基础架构。这些设施使成本大幅增加,更不用说精通 FC 协议的人员培训成本。
3.2 IP SAN
IP SAN 是基于 IP 网络实现数据块级别存储方式的存储网络。由于设备成本低,配置技术简单,可共享和使用大容量的存储空间,因而逐渐获得广泛的应用。
在具体应用上, IP 存储主要是指 ISCSI ( Internet SCSI )。作为一种新兴的存储技术, ISCSI 基于 IP 网络实现 SAN 架构,既具备了 IP 网络配置和管理简单的优势,又提供了 SAN 架构所拥有的强大功能和扩展性。 ISCSI 是连接到一个TCP/ IP 网络的直接寻址的存储库,通过使用TCP/ IP 协议对 SCSI 指令进行封装,可以使指令能够通过 IP 网络进行传输,而过程完全不依赖于地点。
ISCSI 优势的主要表现在于,首先,建立在 SCSI 、TCP/ IP 这些稳定和熟悉的标准上,因此安装成本和维护费用都很低;其次, ISCSI 支持一般的以太网交换机而不是特殊的光纤通道交换机,从而减少了异构网络和电缆;最后, ISCSI 通过 IP 传输存储命令,因此可以在整个 Internet 上传输,没有距离限制。
ISCSI 的缺点在于,存储和网络是同一个物理接口,同时协议本身的开销较大,协议本身需要频繁地将 SCSI 命令封装到 IP 包中及从 IP 包中将 SCSI 命令解析出来,这两个因素都造成了带宽的占用和主处理器的负担。但是,随着专门处理 ISCSI 指令的芯片的开发(解决主处理器的负担问题),以及 10G 以太网的普及(解决带宽问题), ISCSI 将有着更好的发展。
3.3 IB SAN
IB ( Infiniband ,无限带宽 ) 是一种交换结构 I/O 技术,其设计思路是通过一套中心机构 ( IB 交换机 ) 在远程存储器 、 网络以及服务器等设备之间建立一个单一的连接链路,并由 IB 交换机来指挥流量。这种结构设计得非常紧密,大大提高了系统的性能 、 可靠性和有效性,能缓解各硬件设备之间的数据流量拥塞。而这是许多共享总线式技术没有解决好的问题,因为在共享总线环境中,设备之间的连接都必须通过指定的端口建立单独的链路。
IB 主要支持两种环境 : 一是模块对模块的计算机系统 ( 支持I/O 模块附加插槽 ) 二是在数据中心环境中的机箱对机箱的互连系统 、 外部存储系统和外部局域网广域网访问设备。 IB 支持的带宽比现在主流的I/O 载体 ( 如 SCSI 、 FC等 ) 还要高,另外,由于使用 IPv6 的报头, IB 还支持与传统 Internet/Intranet 设施的有效连接。用 IB 技术替代总线结构所带来的最重要的变化就是建立了一个灵活 、 高效的数据中心,省去了服务器复杂的I/O 部分。
IB SAN采用层次结构,将系统的构成与接入设备的功能定义分开,不同的主机可通过HCA ( Host Channel Adapter,主机通道适配器 ) 、 RAID 等网络存储设备利用TCA ( Target Channel Adapter, 目标通道适配器 ) 接入 IB SAN。
IB SAN主要具有如下特性 :
- 可伸缩的 Switched Fabric 互连结构 ;
- 由硬件实现的传输层互连高效 、 可靠;
- 支持多个虚信道;硬件实现自动的路径变换 ;
- 高带宽,总带宽随 IB Switch 规模成倍增长 ;
- 支持 SCSI 远程DMA ( DirectMemoryAccess,直接内存存取 ) 协议;
- 具有较高的容错性和抗毁性;
- 支持热拔插。
网络存储技术的目的都是为了扩大存储能力,提高存储性能。这些存储技术都能提供集中化的数据存储并有效存取文件 ; 都支持多种操作系统,并允许用户通过多个操作系统同时使用数据 : 都可以从应用服务器上分离存储,并提供数据的高可用性 ; 同时,都能通过集中存储管理来降低长期的运营成本。
因此,从存储的本质上来看,它们的功能都是相同的。事实上,它们之间的区别正在变得模糊,所有的技术都在用户的存储需求下接受挑战。在实际应用中,需要根据系统的业务特点和要求 ( 例如,环境要求 、 性能要求 、 价格要求等 ) 进行选择。