利用光纤磁盘阵列实现存储共享(转)

磁盘阵列被越来越多地使用到各种应用系统中,开始只是简单地作为某台主机或服务器的附加外置存储设备,主要用于扩展单台主机或服务器的永久存储空 间,一般通过SCSI或其它接口与主机直接相连;后来随着存储网络技术,尤其是光纤通道(Fibre Channel)技术的发展,磁盘阵列通过光纤通道接口接入到存储区域网(SAN)中,为多台主机提供共享的存储空间。

  目前,人们一方面致力于开发更多的接口技术(如iSCSI、InfiniBand等),使磁盘阵列接入到成本更低的存储网络(如IP网络),或性能更
高、功能更全的存储网络(如InfiniBand网络)中;另一方面致力于通过存储虚拟化技术、全局文件系统技术提高磁盘阵列的利用率。

  实际上,日常所说的磁盘阵列一词的定义并不准确。根据SNIA(存储网络国际协会)的定义,磁盘阵列(Disk
Array)就是通过一套控制软件结合在一起的、在一个或多个可访问磁盘子系统上的一系列磁盘;该控制软件将这些磁盘的存储空间以一个或多个虚拟磁盘的形
式提供给主机;运行在控制器上的控制软件一般称为固件(Firmware)或微码(Microcode);运行在主机上的通常称为卷管理器。磁盘阵列子系
统(Disk Array
Subsystem)才是通常所称的磁盘阵列,即具有可将其磁盘组织起来的控制软件的磁盘子系统。在后面的讨论中,仍将使用大家熟悉的磁盘阵列这个词汇来
代替较为晦涩的磁盘阵列子系统一词。

  何为光纤磁盘阵列呢?是指这种磁盘阵列采用光纤通道技术。采用光纤通道技术有两层含义,一层是指对外,即对主机使用光纤通道接口连接方式;另一层是指
其内部采用光纤通道技术来连接内部的各个磁盘。通常来说,光纤磁盘阵列指的是后一种含义。最初,光纤磁盘阵列上市的时候,内部往往采用SCSI、SSA等
存储接口,对外才是光纤通道接口。

  现在,越来越多的光纤磁盘阵列逐渐向内外俱是光纤通道接口的方向发展。这里讨论的就是此种磁盘阵列。至于内部使用IDE、SCSI、SSA等接口技
术,外部使用光纤通道技术,或者内部使用光纤通道技术,外部使用SCSI等其它接口技术的磁盘阵列(尽管这有些违背常识,但这种磁盘阵列的确存在),虽然
也是光纤磁盘阵列,但不在本文的讨论范围内。


  光纤磁盘阵列的构成


  从光纤磁盘阵列的定义可以看出,从硬件构成来说,它应当是由一堆磁盘和控制器及内外接口组成。一般的中、低端光纤磁盘阵列也正是这种结构:由一个或多
个供大量磁盘放置的磁盘柜、两个阵列控制器、阵列背板、若干电源、风扇等硬件部件组成。其中,最为主要的部件就是阵列控制器和磁盘柜。控制器通过其内置的
控制软件,可实现整个阵列的管理。一般阵列对主机的接口就在阵列控制器上,一般每个控制器至少有一个主机接口,有些控制器则提供更多的主机接口。这些主机
接口可以直接或通过光纤交换机与主机连接。此外,各种管理接口(串口、以太网口等)也在控制器上。

  之所以采用两个控制器,主要是从高可用性、提高性能和负载均衡的角度考虑的。很多阵列都可以通过这两个控制器间的切换,防止控制器、连接线缆、网络设
备(如光纤通道交换机和集线器)、主机HBA的单点故障。某些阵列则可以通过主机或阵列软件实现多通道的数据访问和通道间的负载均衡。

  可以说,阵列控制器是中低端磁盘阵列的核心,它相当于PC的主板、内存和CPU。放置硬盘的磁盘柜是阵列实际存储数据的地方,相当于PC的硬盘。磁盘柜的主要特点是,内部一般至少采用冗余的双FC-AL仲裁环环路结构,内部硬盘实际上同时接在两条仲裁环上。

  中端磁盘阵列支持的环路数更多,可以达到4、8、16条之多。这种多冗余仲裁环结构最主要的目的是为了高可用性,可以防止单个线路、接口的故障导致整
个阵列的失效。此外,每个环路还采用旁路技术防止无硬盘接入和硬盘故障对环路通信的影响。高端光纤磁盘阵列采用的结构与此类似,但也有独特之处。比如
EMC的DMX结构、HDS的Hi-Star Switched
Architecture结构,都是为高端磁盘阵列而设计的,可以提供更高的性能、可靠性、可用性、可扩展性,以及更多的高级功能(如对业务连续性的支
持)。


  高性能与高可用


  从光纤磁盘阵列的结构可以看出,它最突出的优势是存储共享。与其它阵列,如SCSI阵列不同,光纤磁盘阵列可以接入存储区域网,多台主机可以通过存储区域网同时访问一台或多台光纤磁盘阵列,这就为存储集中和共享提供了最为灵活的硬件和网络平台。

  光纤磁盘阵列的另一个优势是高可用性。光纤磁盘阵列不但具有普通磁盘阵列所支持的各种高可用性功能,如对RAID的支持、Hot-Spare硬盘、
RAID自动重建、后台在线重建、在线RAID扩容、硬盘热插拔、支持并发I/O及命令队列、磁盘阵列配置备份、缓存电池保护、硬盘故障自动检测等,而且
双控制器、多冗余环路、多主机接口的冗余配置,也保证了本机的可用性,并可以防止存储区域网上其它设备故障对数据存取的影响。

  在存储共享和高可用性之后,还要提到磁盘阵列的高性能。光纤通道较传统存储技术,如SCSI来说,可以支持更高的性能。目前,光纤磁盘阵列对内、对外都可以支持200MB/s的全双工读写,不久的将来,1GB/s的产品也将上市。

  此外,光纤磁盘阵列的另一个优势是高可扩展性。一方面,对于同一个磁盘阵列来说,由于采用仲裁环结构,理论上,一个环上可以接多达126块硬盘,这相
对于SCSI总线上最多15块硬盘的容量明显高了很多,而且还可以通过增加同一个磁盘阵列支持的环路数来增加支持的硬盘数;另一方面,在由光纤通道构成的
存储网络中,由于光纤磁盘阵列可以被共享,当某台主机访问某台阵列上安装的硬盘达到最大而不能再扩充容量时,完全可以通过将另一个阵列上的存储空间共享给
该主机,从而实现存储空间的扩展。


  适用于SAN


  根据其优势和特点,光纤磁盘阵列主要应用在对数据共享、高可用性、高可靠性、高性能和高扩展性要求很高的行业或应用环境中。对于国内的用户来说,像金
融、电信、电力、税务、化工、冶金等关键业务部门的数据中心采用共享磁盘阵列存储数据是非常必要的,它可以满足这些行业对存储的苛刻要求。像媒体、图书档
案馆、科技研究、监听等数据量要求非常大的行业数据中心,采用光纤磁盘阵列则可以很好地满足大容量存储、不断扩展等方面的要求。

  需要注意的是,在选择光纤磁盘阵列时,一般会选择SAN作为整个IT信息系统的基本架构。在SAN架构中,由服务器或主机、光纤交换机、光纤磁盘阵列、光纤磁带库共同组成一个存储网络,客户端和其它存储需求不大的服务器则通过常用的IP网络与存储网络中的服务器通信。

  此外,在高端的NAS应用中,往往会采用NAS机头(NAS head)作为NAS服务器的控制端,光纤磁盘阵列通过SAN或直接连接到NAS head上,为它提供高性能、大容量、高可用性的存储后端。

  采用光纤磁盘阵列的SAN典型架构


  产品选购

  十全才能十美


  选择哪种光纤磁盘阵列才能够满足自身的需要呢?除了价格因素以外,主要从以下10个方面考虑。

  1.存储共享的能力

  如果采用SAN架构,如果有很多台服务器或主机共享一个光纤磁盘阵列,首先考虑的是,此阵列最多可以支持多少台服务器或主机。此参数每个供货商都会提供,只是不同的磁盘阵列支持的数量不同。

  2.可用性和可靠性

  如果要设计的方案对于可用性的要求非常高,就要考虑阵列的可用性。光纤磁盘阵列的可用性主要从控制器的冗余切换能力来考虑,包括:主机接口数,提供的
主机接口数越多,意味着可供冗余连接的连接路径越多;对于路径切换软件的支持能力,很多阵列需要专用的路径切换软件才能实现切换,其它一些则可以使用类似
VERITAS
DMP的第三方软件实现,且不同环境的支持程度不同,选择阵列一定要结合实际情况加以考虑;切换时间,切换时I/O读写可以有一定的延时,一般不能短于切
换时间,否则会有数据丢失。

  3.互操作性和兼容性

  选择磁盘阵列时,一定要检查互操作性。一般每个供货商都会给出其阵列的兼容性列表,确定其是否支持已有的或可能会使用的网络存储设备,包括OS、交换机、HBA、SFP等。

  4.容量和扩展能力

  每种磁盘阵列的初始磁盘容量、容量扩展方式和最大的可扩展容量不尽相同,而且不同配置的价格也不同,在选择磁盘阵列时要选择最适合的。

  5.性能

  目前的磁盘阵列都支持200Mb/s全双工带宽接口,但实际的读写能力不尽相同。有的阵列可以利用主机接口和控制器的负载均衡,提供非常高的读写带宽和IOPS。如果应用要求很高的性能,可以考虑采用这种磁盘阵列。

  6.易用性

  磁盘阵列的配置越简单、越人性化,配置中越不容易出现错误,越应当优先考虑。

  7.可管理性

  一般磁盘阵列的管理可以通过两种途径:In-Band和Out-of-Band。这两种途径各有优缺点:In-Band的管理可以得到整个存储网络结
构的拓扑,而且不需要其它网络(如以太网)连接的支持,但是网络出现故障(如阵列的主机接口失效)就无法进行管理;Out-of-Band的管理需要连接
其它网络,但不会因为诸如阵列主机接口失效这种故障导致无法管理阵列的问题,所以Out-of-Band的管理更为可靠,而且往往可以在磁盘阵列出现问题
时通过修改配置、热启动等操作恢复其正常运行状态。建议最好是选择两种管理途径都支持的磁盘阵列。

  8.业务连续性的能力

  很多中高端光纤磁盘阵列都提供保证业务连续性的能力,但这一般要通过两台甚至两台以上阵列间的镜像或复制来实现,所以往往会导致成本的大幅上升。

  9.安全性

  光纤磁盘阵列的安全性主要表现在,是否支持主机分区或者LUN Masking功能。可以设置主机只能访问哪个LUN,或主机只能通过哪个主机端口进行访问,这样可以防止数据被不相干的主机访问,还可以减少SAN内通信的相互干扰。

  10.对阵列基本功能的支持能力

当今世界信息爆炸式的增长,除了给科技与技术的发展带来更大的发展动力外,也给企业的数据存储带来了巨大的挑战。然而,作为企业信息存储系统中的最关键部分——磁盘阵列,很多人未必能说得清楚。

  磁盘阵列技术诞生于1987年,由美国加州大学伯克利分校提出。这项技术的核心设计理念是RAID技术。原来的名称是“Redundant
Array of Inexpensive
Disk”,最初的研制它的目的是为了组合小型的廉价磁盘来代替大的昂贵磁盘,以降低大批量数据存储的费用。同时也希望通过冗余信息的方式,使得单一磁盘
失效时不会丢失数据,因此开发出不同级别的RAID数据保护技术,并在此基础上逐渐致力于提升数据访问速度。这个名字后来改为“Redundant
Array of Independent Disk”,但仍然称作“RAID”。

  经过多年的发展,企业中数据的价值越来越高,而承载这些数据的磁盘阵列也越发受到用户的重视。从市场分布可以看出,存储与服务器所占比例呈逐年上升趋
势。用户的强大需求同时也给存储系统供应商创造了巨大的商机。目前市场上不但有老牌厂商提供的各种产品,也有初创公司新推的各种系统。自然,当前市场上的
磁盘阵列也是一番花团锦簇的景象。在用户有了众多选择的同时,也有了选择上的困惑。因此,我们就从体系结构的角度,简要分析目前磁盘阵列的差异性,希望可
以给用户在选择磁盘阵列时参考。

  目前的磁盘接口有IDE、SATA、SCSI、SAS、FC等几种。其中IDE接口磁盘正在被SATA接口硬盘取代,将逐渐退出历史舞台,两者主要多
用于桌面;SAS接口磁盘也正在逐渐淘汰SCSI接口,很快将占领企业应用的低端市场;而FC(Fibre
Channel,光纤)接口硬盘一出生就是专门针对高可靠、高可用、高性能的企业存储应用的,不但接口速度快,而且支持双端口访问,又经过严格的生产工艺
控制,可靠性很好。由于这些天生优势,FC接口硬盘在企业用户中尤其是关键数据存储应用中占据着绝对优势,也是高端存储应用的首选磁盘。

基于SATA、SCSI接口的磁盘阵列大家见过很多了,这里就不再赘述,重点说是所光纤接口磁盘阵列。光纤磁盘阵列又可进一步从体系结构细分成三大类:JBOD磁盘阵列、双控制器磁盘阵列和多控制器磁盘阵列。

  严格意义上讲,JBOD还不能称之为“阵列”。JBOD是Just Bundle of
Disk的缩写,意即只是一串磁盘的组合。这样的“磁盘阵列”也被称为傻盘阵列,因为JBOD内部既没有控制器,也没有缓存,磁盘之间也没有提高性能和安
全性的任何手段。每个磁盘都独立地接收来自主机的数据访问。如果需要实现RAID级别的保护,主机不但要负担磁盘读写等操作,还要进行RAID算法的处
理,对主机资源的占用率较大,严重影响系统整体性能。

  因此,在采用光纤磁盘阵列时,一般都采用带智能磁盘控制器的磁盘阵列。磁盘控制器是介于主机和磁盘之间的控制单元,配置有专门为I/O进行过优化的处
理器以及一定数量的cache。控制器上的CPU和cache共同实现对来自主机系统I/O请求的操作和对磁盘阵列的RAID管理。相对于JBOD磁盘阵
列,控制器磁盘阵列释放了大量主机资源,来自主机的I/O请求由控制器接受并处理,阵列上的cache则作为I/O缓冲池,能够大大提高了磁盘阵列的读写
响应速度,显著改善磁盘阵列的性能。又由于光纤磁盘天生拥有双端口,所以,一般的光纤盘阵都采用双控制器,从而充分发挥光纤磁盘的高可用特性。两个控制器
不管配置成active-active还是active-standby,都能为用户提供高可用特性,而且大都支持热插拔功能,能够实现简单的无单点故
障,为用户提供的7*24不间断业务。

  在配置了CPU和cache的磁盘阵列中,其部分高端产品还可以运行基于磁盘阵列的存储软件。因此,它可以提供比较全面的基于磁盘阵列的解决方案。

  在当前存储市场上,这一类的磁盘阵列种类繁多,数量巨大,同时也在质量和性能上也存在着巨大的差距,价格跨度也很大。其代表产品有IBM
DS系列、HP EVA系列、EMC CLARIION系列、HDS Thunder
95系列等等。LSI也在这一档次的磁盘阵列方面颇有建树。尤其值得一提的是,IBM S-4000系列、STK D系列及SGI TP系列都是OEM
LSI公司的E系列阵列控制器。

  从体系结构上讲,这类产品属于中端产品,但其中比较引人注目的是IBM
SHARK系列产品。IBM的SHARK系列产品是典型双控制器结构的产品,其高端型号DS-8300产品的每个控制器是4个CPU的P570小型机,双
控制器最大配置CPU数量为8个CPU。但DS-8000系列产品具备了许多高端产品应有的特征,比如主机端口最大可达128个2Gb
FC,磁盘接口多大64个,缓存容量也可以达到256GB,这些特性使其可以匹敌多控制器存储系统,因此,DS-8000系列也是IBM公司参与高档存储
产品市场竞争的主要武器,而且和竞争对手高档产品相比其价格优势非常明显。

第三类是多控制器磁盘阵列:双控制器磁盘阵列由于控制器只能配置两个,不能在同一磁盘阵列内配置更多控制器,在一定程度上局限了其数据处理能力。多控制器磁盘阵列便应运而生,其体系结构一般分为三层:

  通道控制器:管理主机和cache之间I/O及运行基于存储的软件解决方案。

  全局缓存控制器:巨大的非易失性cache,它是系统性能超群的基础之一。

  磁盘控制器:管理cache和物理磁盘组之间I/O及运行基于存储的软件解决方案。

  在实际应用时,每层的控制器至少成对配置,提供全冗余特性,实现无单点故障。也可以配置多对,在性能上进行成倍扩展。比如EMC的DMX-3最多可以
配置8个前端控制器(Channel Director)、8个缓存控制器(Memory Director)、8个后端控制器(Disk
Director),整个系统中处理器数量最多可达130颗。多级控制器分工协作,系统整体性能因而可以获得最佳扩展性。更重要的是,在多控制器体系结构
基础上,提供了许多独特存储软件解决方案。该档次产品是大型关键业务数据中心的首选。

  目前,掌握高档多控制器体系结构产品技术的厂家,只有EMC和HDS这两家公司。从体系结构来看,最初的EMC和HDS公司的多控制器磁盘阵列产品没
有什么区别,都是基于总线结构。后来HDS开发出了基于全交换架构的Lightning9000/USP系列,并在内部把控制流和数据流分开,提升了内部
的传输带宽。其后EMC推出了基于直联矩阵结构的Symmetrix
DMX系统,在继承低延迟特性的基础之上,进一步的提升了内部总线的带宽。但无论如何,这类系统都是以高可靠性和高可用性为诉求的高端存储阵列,在这两方
面已经达到了近乎完美,在电信和银行等领域都得到了极大的认可和广泛的应用。

  很多服务器生产厂商也都有磁盘阵列产品出售。由于拥有广泛的销售渠道和强大的市场运作能力,也有较高的市场占有率,到目前为止,所有主机厂商掌握自主
知识产权的磁盘阵列仍然停留在双控制器磁盘阵列这个层面。虽然HP和SUN也有的多控制器体系结构的磁盘阵列在销售,但都是OEM HDS产品。

  当下流行的信息生命周期管理、虚拟存储、存储资源管理等等理念都和分级存储密切相关,这为用户进行全方位的数据管理提供了参考。用户可以根据信息的价值采取适当级别的磁盘阵列,制定相应的存储方案。本文只是从系统结构上对光纤磁盘阵列做一个简单的划分,供用户参考。

时间: 2024-10-24 01:15:52

利用光纤磁盘阵列实现存储共享(转)的相关文章

asp.net中利用session对象传递、共享数据[session用法]

下面介绍Asp.net中利用session对象传递.共享数据用法: 1.传递值: 首先定义将一个文本值或单独一个值赋予session,如下: session["name"]=textbox1.text:将文本1的值赋给了session变量name,当调查到其它页面时,此值可以传递,依然存在,下面是调用或判断此值. If(session["name"]==null) {} Else { lable1.text=session["name"].tos

【转】asp.net中利用session对象传递、共享数据[session用法]

来自:http://blog.unvs.cn/archives/session-transfer-method.html 下面介绍Asp.net中利用session对象传递.共享数据用法: 1.传递值: 首先定义将一个文本值或单独一个值赋予session,如下: session["name"]=textbox1.text:将文本1的值赋给了session变量name,当调查到其它页面时,此值可以传递,依然存在,下面是调用或判断此值. If(session["name"

利用html5的本地存储写的一个购物车

好久没有写博客园了,很多知识没有记录下来:可惜: 这几天在开发微信,也写了一个订餐平台的微网站,里面需要写一个购物车: 这里主要是把商品的部分信息以json格式保存在sessionstorage中,还有商店信息也是: 以json格式保存有什么好处呢,轻量级的传输,大概是这样吧!另外,如果我们把商品信息分开存储,就会导致有多条的sessionstorage项,那以后实现在两家商店同时购物的话,就不可能区分每家商店的商品了: 如果代码是自己写的,就有版权,这么说.对吧,是在软件工程师书上看到的: 不

Windows Azure存储共享配置介绍

我们都知道windows azure上创建的vm全部格式都为.vhd格式文件,这样我们就可以使用azure powershell将本地的hyper-v的vm上传到windows azure的存储容器中,然后挂载到新的windows azure vm中,那如果我们要将本地的某个软件上传到windows azure上工vm使用怎么办呢,我们都知道,microsoft的所有软件收费都相当高,当然也包括windows azure上的个个服务,如果我们需要一台SQL Server数据库服务器的话,如果使用

分布式文件系统MFS(moosefs)实现存储共享(一)

分布式文件系统MFS(moosefs)实现存储共享 作者:田逸([email protected]) from:[url]http://net.it168.com/a2009/0403/270/000000270867.shtml[/url] 由于用户数量的不断攀升,我对访问量大的应用实现了可扩展.高可靠的集群部署(即lvs+keepalived的方式),但仍然有用户反馈访问慢的问题.通过排查个服务器的情况,发现问题的根源在于共享存储服务器NFS.在我这个网络环境里,N个服务器通过nfs方式共享

利用html5的本地存储功能实现登录用户信息保存

在HTML5中,本地存储是一个window的属性,包括localStorage和sessionStorage,从名字应该可以很清楚的辨认二者的区别,前者是一直存在本地的,后者只是伴随着session,窗口一旦关闭就没了.二者用法完全相同,这里以localStorage为例. 用户名.密码保存,自动登录等,可以通过设置cookie实现,第一次登录网站后在本地计算机的中写入cookie,之后再次登录此网站查看cookie中现有的值,用cookie值进行网站登录即可.但是 cookie 不适合大量数据

利用StarWind 构建SAN存储

StarWind iSCSI SAN 是一个iSCSI目标软件, 含有免费和付费版本. 该软件可安装在任何 32位或64位的Windows Server,使Windows Server 变为一台SAN . 支持多种虚拟化环境, 包括VMware, Microsoft Hyper-V和 Citrix. 在中小型企业中,可以部署其免费版本在测试环 境中进行测试和评估. 其免费版本也可以通过license直接升级为付费版本. 下面介绍其具体的安装和配置过程. 一.StarWind软件获取 软件站点:

基于iscsi实现文件存储共享

简单介绍两个概念: iSCSI:Internet Small Computer System Interface.是一种基于 TCP/IP的协议,用来建立和管理 IP 存储设备.主机和客户机等之间的相互连接,并创建存储区域网络(SAN).SAN 使得 SCSI 协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block-level)在多个数据存储网络间进行. iSCSI的工作过程:当iSCSI主机应用程序发出数据读写请求后,操作系统会生成一个相应的SCSI命令,该SCSI命令在iSCS

Android开发之利用SQLite进行数据存储

Android开发之利用SQLite进行数据存储 Android开发之利用SQLite进行数据存储 SQLite数据库简单介绍 Android中怎样使用SQLite 1 创建SQLiteOpenHelper对象并创建表 2 通过SQLiteDatabase对象运行增删改查操作 3 SQLiteDatabase之事务transaction 1.SQLite数据库简单介绍 SQLite.是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包括在一个相对小的C库中.它是D.RichardHip