光纤磁盘阵列介绍
>随着信息技术的发展,磁盘阵列被越来越多地使用到各种应用系统中。开始只是简单地作为某台主机或服务器的附加外置存储设备,主要用于扩展单台主机或服务器的永久存储空间,一般通过SCSI或其他接口与主机直接相连;后来随着存储网络技术,尤其是光纤通道Fibre Channel技术的发展,磁盘阵列通过光纤通道FC接口接入到存储区域网SAN中,为多台主机提供共享的存储空间。目前人们一方面正在致力于开发更多的接口技术(如iSCSI、InfiniBand等)让磁盘阵列接入到成本更低的存储网络(如IP网络)、或性能更高、功能更全的存储网络(如InfiniBand网络)中,一方面致力于通过存储虚拟化技术、全局文件系统技术提高磁盘阵列的利用率。
>本文我们主要想讨论目前使用最为广泛的光纤磁盘阵列。之前我们先来看什么是光纤磁盘阵列,或者说讨论一下光纤磁盘阵列的定义。
>首先我们做一下名词分解,先说说磁盘阵列。实际上我们日常所说的磁盘阵列一词的定义并不准确,根据SNIA(存储网络国际协会)的定义解释,磁盘阵列(disk array)就是通过一套控制软件结合在一起的、在一个或多个可访问磁盘子系统上的一系列磁盘;该控制软件将这些磁盘的存储空间以一个或多个虚拟磁盘的形式提供给主机;运行在控制器上的控制软件一般称为固件(firmware)或微码(microcode);运行在主机上的通常称为卷管理器。而磁盘阵列子系统(disk array subsystem)才是我们通常所称的磁盘阵列,即具有可将其磁盘组织起来的控制软件的磁盘子系统。为了不引起误解,在此我们只是告诉大家要注意区分磁盘阵列disk array和磁盘阵列子系统disk array subsystem的细微区别,在后面的讨论中我们还是使用大伙熟悉的磁盘阵列这个词汇来代替较为晦涩的磁盘阵列子系统一词。
>而为什么又称为光纤磁盘阵列呢?这是指这种磁盘阵列采用光纤通道技术。采用光纤通道技术有两层含义,一层是指其对外–即对主机–使用光纤通道接口连接方式,一层是指其内部采用光纤通道技术来连接其内部的各个磁盘。通常意义来说,光纤磁盘阵列指的是后一种含义。但在最初光纤磁盘阵列上市的时候,内部往往采用SCSI、SSA等存储接口,对外才是光纤通道接口。现在越来越多的光纤磁盘阵列逐渐向内外俱是光纤通道接口的方向发展,这里我们想讨论的就是这种磁盘阵列。至于内部使用IDE、SCSI、SSA等接口技术、外部使用光纤通道技术,或者内部使用光纤通道技术,外部使用SCSI等其他接口技术的磁盘阵列(尽管这有些违背常识,但这种磁盘阵列的确存在),虽然也是光纤磁盘阵列,但不在我们的讨论范围内。
>从光纤磁盘阵列的名词解释我们可以看出,从硬件构成来说它应当是由一堆磁盘和控制器及内外接口组成。一般的中、低端光纤磁盘阵列也正是这种结构:由一个或多个供大量磁盘放置的磁盘柜、两个阵列控制器、阵列背板、若干电源、风扇等硬件部件组成。
>其中最为主要的部件就是阵列控制器和磁盘柜。控制器通过其内置的控制软件,实现整个阵列的管理。一般阵列对主机的接口就在阵列控制器上,一般每控制器至少有一个主机接口,有些控制器提供更多的主机接口;这些主机接口可以直接或通过光纤交换机与主机连接。此外各种管理接口(串口、以太网口等)也在控制器上。
>而一般之所以采用两个控制器,主要是从高可用性、提高性能和负载均衡的角度考虑的。很多阵列都可以通过这两个控制器间的切换,防止控制器、连接线缆、网络设备(如光纤通道交换机和集线器)、主机HBA的单点故障。某些阵列则可以通过主机或阵列软件实现多通道的数据访问和通道间的负载均衡。
>可以说阵列控制器是中低端磁盘阵列的核心,相当于PC的主板、内存和CPU;而放置硬盘的磁盘柜是阵列实际存储数据的地方,相当于PC的硬盘。光纤磁盘阵列磁盘柜的主要特点是内部一般至少采用冗余的双FC-AL仲裁环环路结构,内部硬盘实际上同时接在两条仲裁环上。而中端磁盘阵列支持的环路数更多,可以达到4、8、16条之多。这种多冗余仲裁环结构最主要的目的就是为了高可用性,它可以防止单个线路、接口的故障导致整个阵列的失效。而且每个环路采用旁路技术来防止无硬盘接入和硬盘故障对环路通信的影响。