1 iSCSI 介绍
互联网小型计算机系统接口iSCSI(internet Small Computer System Interface)是一种小型计算机系统接口SCSI(Small Computer System Interface)在TCP桙IP 网络上的解决方案,通过TCP桙IP 网络传输经过包装的SCSI 命令的数据包,数据包中包含操作磁盘提供者(iSCSI Target)的命令序列和需要存储的数据,这些数据包是由iSCSI 发起者(iSCSI Initiator)发出的,并由iSCSI 发起者处理该向哪块磁盘发出什么的数据,iSCSI Initiator 端将iSCSI Target 端共享出来的磁盘空间映射为本机的磁盘驱动器,从而达到对远程磁盘的映射,该过程类似于“磁盘映射”,与“磁盘映射”的实质区别在于,此过程的“磁盘映射”功能仅仅是将远程共享的文件夹或磁盘映射为本地的一块逻辑盘,然后分配一个盘符以供使用,从底层来看,它并不是一个硬件设备驱动器,但是,作为iSCSI 的磁盘映射是底层的映射,对操作系统而言,与本地加载了一块真正的硬盘驱动器是没有任何区别的。
iSCSI 作为廉价的SCSI 网络解决方案,提供了稳定的磁盘空间共享和远程访问,同时,iSCSI 对资源的消耗(如CPU)不大,对资源的访问速度没有太大影响,资源访问速度影响最大瓶颈为网络速度,存储区域网络SAN(Storage Area Network)是指允许存储设备和处理器(服务器)之间建立直接的高速网络(与LAN 相比)连接,是只受光纤线路长度限制的集中式存储,SAN 可以被看作是存储总线的一个扩展,它使用局域网和广域网中类似的单元,实现设备和服务器之间的互联,这些单元包括路由器、集线器、交换机和网关,iSCSI 通过IP 网络提供了SAN 解决方案,在大型企业或数据中心,一般采用光纤的形式实现一个iSCSI + SAN 解决方案,或者使用iSCSI 通过IP 网络实现远程异地容灾,由于iSCSI只需要软件就可以实现磁盘的共享和映射,且众多厂商提供免费的iSCSI Initiator 端,还有大量开源组织提供免费的iSCSI Target 端,节约了购买较为昂贵的SCSI 硬盘和硬件独立倡磁盘冗余阵列RAID(Redundant Array of Independent Disk)卡,进而降低了组建SAN 网络的费用,同时很好的解决了对于大存储空间的需求。
2 软件RAID 控制器
软件RAID 控制器是相对于硬件RAID 控制器提出的,硬件RAID 是指计算机系统中安装有硬件RAID 卡,该硬件提供对SCSI 硬盘的操作,如组建RAID 阵列,将磁盘置于联机、同步数据及数据校验等,而软件RAID 实质上是计算机操作系统中带有的软件,该软件对动态的硬盘操作、实现,如建立RAID 阵列等一系列和硬件RAID 卡相同的功能,对用户而言,无论是硬件还是软件RAID ,两者都是透明的,在用户看来,实际操作的只是一块硬盘,只是这块硬盘比计算机中的任何一块硬盘都要大,同时,通过组建RAID 阵列,磁盘的读写性能有了巨大的提高,因为单块硬盘的读写变成了多块硬盘同时读写,单块硬盘的串行读写变为并行读写,软件RAID 优势在于,由于使用了操作系统自带的功能,故无需购买和安装单独的硬件RAID 控制卡,且可以不用购买昂贵的SCSI 硬盘,只需普通的SATA 或IDE 硬盘就可组建一个性价比非常高的RAID 阵列,从而获得廉价的RAID 方案。
软件RAID 控制器的出现为个人、小型企业采用RAID 作为存储提供了性价比非常高的解决方案,通过使用软件RAID ,降低了采购成本,同时可以将已经废弃的资源,如淘汰但功能正常的计算机重新利用,从而节约资源,降低费用,在性能方面,由于RAID 阵列比普通硬盘更快、更稳定,提供冗余的数据存储功能,因此对于小型企业而言,软件RAID 更加符合需要,且成本低廉。
3 基于iSCSI 的软件RAID 功能的低成本SAN 方案
3.1 网络方案构建
采用4 台联想开天A4000 计算机,4 块Realtek 8139 网卡,一台CISCO 2950 交换机及4 根RJ45 网线构建如图1 所示的网络拓扑结构,将各计算机分别命名为software-01 至Software-04 ,其中software-01 作为域控制器、域DNS 服务器和主控服务器,Software-02 至Software-04 提供iSCSI Target 服务(磁盘服务器),4 台联想开天A4000 商用计算机组成dns1.gang,hit .edu .cn 域。
客户端通过100Mbps 以太网访问Software-01 的磁盘服务.dns1 .gang .hit .edu .cn 域中各计算机之间网络延迟小于或等于1ms(基于ping),客户端计算机与software-01 之间网络延迟小于或等于1ms(基于ping)。
dns1 .gang .hit .edu .cn 域中的4 台计算机均采用Windows2003 EntERPrise Edition SP2 作为操作系统,网卡绑定客户端桙协议包括:① Microsoft 网络客户端; ② Internet 协议(TCP桙IP) ; ③ 网络文件打印机共享客户端,4 台计算均未安装任何防火墙,未安装除iSCSI Target 服务器软件和Windows默认安装(不含IIS)软件外的第三方程序。
图1 网络拓扑结构图
客户端计算机采用Windows XP Professional SP3 作为操作系统,网卡绑定客户端桙协议包括:
① Microsoft网络客户端;
② Kaspersky Anti-Virus NDIS Filter ;
③ Qos 数据包计划程序;
④ Internet 协议(TCP桙IP),客户端计算机安装Kaspersky2009全功能安全软件,未开启Windows防火墙,FTP 客户端使用CuteFTP8 Professional 8 .3 .2 Build 09 .02 .2008 .1。
3.1.1 iSCSI Target
iSCSI Target 服务由StarWind iSCSI Server v3.5.4(build 20080527 Win32)提供,在各服务器D 盘(共41GB 空间)传送大小为3GB 的image 文件模拟SCSI 磁盘,共计提供3 × 3GB ,即9GB 服务空间,通过正常设置iSCSI Target 服务器可以通过命令窗口使用netstat-an 命令查看到服务器开启3260 端口,并处于监听(Listening)状态。
3.1.2 iSCSI Initiator
SCSI Initiator 服务由Microsoft iSCSI Initiator 2.0 提供,在Software-01 服务器上分别连接Software-02 至Software-03 端口3260 ,得到iSCSI Target 公布的磁盘服务,通过设置,iSCSI Initiator 可以正常识别由Software-02 至Software-03 提供的iSCSI Target ,并且正常识别空间为3 .00GB,共计3 × 3 .00GB 空间。
3.1.3 软件RAID
软件RAID 采用Windows2003 EntERPrise Edition SP2“计算机管理”中提供的“新建RAID-5”功能,由Windows2003 自主管理建立的RAID-5 磁盘阵列,需要注意,要使用“计算机管理”中提供的“RAID-5”功能必须保证识别出的硬盘为动态硬盘,iSCSI Initiator 的参数设置如表1 所示。
表1 iSCSI Initiator 参数设置表
3.2方案测试及结果分析
3.2.1 测试变量设置
考虑到小型企业的实际情况,可能在应用中遇到诸如断电、网络不稳定等状况,测试情况设置如表2 所示,以此模拟实际情况,最终以确定该解决方案能否通过现实情况的考验,满足现实需要,测试磁盘阵列采用RAID-5 模式。
表2 测试变量设置表
按表2 所示的所有变量情况进行测试,同时记录服务器各项信息(包括网卡工作状态,CPU 工作状态等),测试读取将采用一个大小为422MB 的RAR 非自解压缩文件进行,每次读写测试都将考验所复制桙粘贴的文件能否通过WinRAR软件进行解压,WinRAR采用WinRAR 3 .71 中文正式版进行测试。测试考查的关键点包括:
① 网络传输速度对于数据存储的影响;
② 分布式存储系统对主服务器CPU 、内存的消耗;
③ 正常存取数据过程中网络消耗情况,特征值将通过图表的形式表现,以估量考查的关键点是否达到实际的需求,特征值的记录基于IOMeter(32k)测试数据。
3.2.2 测试结果及分析
根据设置的测试变量情况,在验证网络连通正常,主服务器获取磁盘正常,磁盘服务器工作正常的情况下开始测试,以Software-01为准同步调整后的结果。
根据不同的情况,得到如下测试结果:
1)所有服务器正常,在所有服务器正常启动,并所有功能正常,交换机正常,网络通信正常的情况下,主服务器建立RAID-5 磁盘阵列,磁盘正常同步,同步完成之后,访问硬盘正常,读取、写入文件正常。
2)主服务器重新启动,磁盘服务器未关机,网络正常,服务正常情况下,主服务器重新启动,重启后显示RAID 阵列的所有磁盘脱机,通过重新激活硬盘,不需要重新同步,硬盘状态良好,读取、写入文件正常,原有数据未发生丢失。
3)单一网络服务器网络异常,主服务器正常,磁盘服务器Software-03 网线被拔除,其余磁盘服务器正常,此情况下,主服务器iSCSI Initiator 显示正在尝试重新连接Software-03 号服务器,“计算机管理”盅磁盘显示“失败的重复” ,盘符图标左下角显示警告符号,但数据存取正常,写入速度未受影响,但读取速度影响较大,速度差距为21%。
当Software-03 号服务器网络恢复正常,即与主服务器重新通信正常之后,重新激活硬盘,主服务器加载硬盘并显示“重新同步” ,同步之中,数据存取正常,速度受较大影响,同步完成之后,磁盘显示状态良好,数据存取正常,速度恢复正常,原有数据未丢失。
4) 服务器群断电,一次性切断dns1 .gang .hit .edu .cn 域中所有服务器的电源,由于RAID-5 磁盘阵列理论上在同一时间只能冗余一块硬盘出现异常,所以,如果不按照设定的顺序启动服务器将导致主服务器可能检斥(带有一定几率)RAID-5 磁盘阵列已丢失,再次强行激活硬盘将失败,因此,在服务器重启方案对比RAID-5 理论后,决定采用首先启动所有磁盘服务器,再启动主服务器的顺序进行恢复,这样符合理论情况,同时能够最小程度降低可能的错误发生机率,以上测试结果记录如表3 所示(表中R 表示Read ,W表示Write)。
表3 测试结果
5)磁盘服务器集体同时关闭,磁盘服务器集体关闭,按照理论情况,类比流行的SCSI 磁盘阵列解决方案,应该对现有数据没有影响,同时,服务器对磁盘阵列的操作都将失败,为了模拟这样的情况,同时拔除磁盘服务器的电源线,造成所有服务器集体同时关闭,此情况模拟了磁盘服务器因断电的原因集体关闭的现实情况,通过测试发现,当所有磁盘服务器同时关闭时,“计算机管理”提示磁盘被损坏,Windows提示磁盘阵列被损坏,正在写入的数据发生丢失,提示写入失败,正在读取的数据显示找不到数据源,读取失败。
6)两台服务器网络异常,在现实情况中很有可能出现两台或两台以上磁盘服务器因为电源或网络原因离线,这个时候,按照理论情况,RAID-5 阵列会崩溃,所有对磁盘阵列的操作都将失败,为了模拟这样的情况,将software-02 和software-03 同时拔除网线,人为制造两台磁盘服务器网络异常,通过测试发现,当两台磁盘服务器同时离线时,“计算机管理”提示磁盘被损坏,Windows提示磁盘阵列被损坏,正在写入的数据发生丢失,提示写入失败,正在读取的数据显示找不到数据源,读取失败。
3.3 小型企业应用基于iSCSI 的软件RAID 组网的可行性分析
通过测试数据显示,可以清楚地发现iSCSI 具有稳定性良好、成本低、易配置性和高透明性,这些特性最重要的在于其低成本的特性,通过对于废旧资源的重新利用,达到了硬盘空间的扩大和稳定的双重需要,但是,在实际应用中,iSCSI 受限于网络的100 Mbps 以太网性能的限制,导致真正的传输速率远远小于SCSI 320 ,甚至远远小于SCSI 160,这些问题成为iSCSI 用作高速存储的瓶颈,通过以上分析发现,基于iSCSI 的软件RAID-5 在性能上与流行的SATA + RAID-5 低成本RAID 方案差距非常明显,主要原因在于网络带宽的限制,由于测试中采用的仅仅是100 Mbps 最廉价的组网方案,折算后,网络带宽仅在64 .81 Mbps(实际使用速度) ,这一速度大大降低读取速度,同时通过测试发现,作为磁盘服务器的硬盘传输速度都在100 Mbps 以上,由此可以判定,100 Mbps 网络是整个解决方案的瓶颈。
但是,作为小型企业,由于资金的原因,没有办法去建立和维护一个GB 级的以太网络,如果为了使用iSCSI 而建立一个专有的GB 级网络,显然是浪费资源,当然,为了保证网络的畅通和平稳,在大多数国内大型企业和高校主干网都为1 GB 的网络,如果将iSCSI 解决方案应用在GB 级的主干网络,将极大地提升读写性能,当然,CPU 的消耗也会进一步增加,同时,在真实应用环境中,大多数这样的存储器都会应用在FTP 等服务上,假设一个企业网络是基于100 Mbps 以太网,人员规模在100 人左右,每个人同时访问该存储服务器(主服务器)进行FTP 资源下载,此时,主服务器与各个磁盘服务器的连接网络也为100 Mbps 以太网,那么假定传输速度为64 Mbps ,主服务器得到数据后CPU 计算时间忽略不计,那么对于每个人来说可以使用的速度为0 .64 Mbps ,折算之后为81 .92 kbps,除去网络带宽正常消耗(如上传等操作) ,保守估计也可以达到70 kBps 的速度,对于局域网来说,70 kbps 的速度确实显得非常缓慢,因为这个时候瓶颈在于主服务器的出口带宽仅仅是100 Mbps ,为了解决这个问题,主服务器出口必须使用光纤,从而达到GB 级网络,费用亦会进一步增加。
通过以上分析,对于小型企业而言,iSCSI 的软件RAID 很好解决了其对磁盘空间的需要与空间缺乏和容易损失的矛盾,同时费用非常低,能很好解决资金流紧缺问题,但是,如果在资金充裕或对数据稳定性追求更高的情况下,最好使用现存的硬件解决方案,即硬件RAID 卡和SCSI 磁盘阵列。
4 结论
基于iSCSI 的软件RAID 功能,即通过iSCSI 和Windows瞮SERVER 系列所提供的软件RAID ,为小型企业构建低成本的网络方案,可以实现硬件RAID 卡的所有特性,同时具有优异的性价比,该方案不仅可以作为小型企业区域存储的解决方案,同时还能提供良好的异地容灾,数据备份等功能,对于小型企业流动资金紧张情况,提供了很好的存储扩展方案。
基于iSCSI 的软件RAID 网络解决方案成本低,同样适用于中小学校和家庭用户,该方案节省资金,同时为用户提供巨大的联合空间,为多媒体数据存储提供了很好的解决途径。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于iSCSI的软件RAID的小型企业网络解决方案
本文网址:http://www.toberp.com/html/consultation/1083969136.html