1 iSCSI 介紹
互聯(lián)網(wǎng)小型計(jì)算機(jī)系統(tǒng)接口iSCSI(internet Small Computer System Interface)是一種小型計(jì)算機(jī)系統(tǒng)接口SCSI(Small Computer System Interface)在TCP桙IP 網(wǎng)絡(luò)上的解決方案,通過TCP桙IP 網(wǎng)絡(luò)傳輸經(jīng)過包裝的SCSI 命令的數(shù)據(jù)包,數(shù)據(jù)包中包含操作磁盤提供者(iSCSI Target)的命令序列和需要存儲(chǔ)的數(shù)據(jù),這些數(shù)據(jù)包是由iSCSI 發(fā)起者(iSCSI Initiator)發(fā)出的,并由iSCSI 發(fā)起者處理該向哪塊磁盤發(fā)出什么的數(shù)據(jù),iSCSI Initiator 端將iSCSI Target 端共享出來的磁盤空間映射為本機(jī)的磁盤驅(qū)動(dòng)器,從而達(dá)到對(duì)遠(yuǎn)程磁盤的映射,該過程類似于“磁盤映射”,與“磁盤映射”的實(shí)質(zhì)區(qū)別在于,此過程的“磁盤映射”功能僅僅是將遠(yuǎn)程共享的文件夾或磁盤映射為本地的一塊邏輯盤,然后分配一個(gè)盤符以供使用,從底層來看,它并不是一個(gè)硬件設(shè)備驅(qū)動(dòng)器,但是,作為iSCSI 的磁盤映射是底層的映射,對(duì)操作系統(tǒng)而言,與本地加載了一塊真正的硬盤驅(qū)動(dòng)器是沒有任何區(qū)別的。
iSCSI 作為廉價(jià)的SCSI 網(wǎng)絡(luò)解決方案,提供了穩(wěn)定的磁盤空間共享和遠(yuǎn)程訪問,同時(shí),iSCSI 對(duì)資源的消耗(如CPU)不大,對(duì)資源的訪問速度沒有太大影響,資源訪問速度影響最大瓶頸為網(wǎng)絡(luò)速度,存儲(chǔ)區(qū)域網(wǎng)絡(luò)SAN(Storage Area Network)是指允許存儲(chǔ)設(shè)備和處理器(服務(wù)器)之間建立直接的高速網(wǎng)絡(luò)(與LAN 相比)連接,是只受光纖線路長度限制的集中式存儲(chǔ),SAN 可以被看作是存儲(chǔ)總線的一個(gè)擴(kuò)展,它使用局域網(wǎng)和廣域網(wǎng)中類似的單元,實(shí)現(xiàn)設(shè)備和服務(wù)器之間的互聯(lián),這些單元包括路由器、集線器、交換機(jī)和網(wǎng)關(guān),iSCSI 通過IP 網(wǎng)絡(luò)提供了SAN 解決方案,在大型企業(yè)或數(shù)據(jù)中心,一般采用光纖的形式實(shí)現(xiàn)一個(gè)iSCSI + SAN 解決方案,或者使用iSCSI 通過IP 網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程異地容災(zāi),由于iSCSI只需要軟件就可以實(shí)現(xiàn)磁盤的共享和映射,且眾多廠商提供免費(fèi)的iSCSI Initiator 端,還有大量開源組織提供免費(fèi)的iSCSI Target 端,節(jié)約了購買較為昂貴的SCSI 硬盤和硬件獨(dú)立倡磁盤冗余陣列RAID(Redundant Array of Independent Disk)卡,進(jìn)而降低了組建SAN 網(wǎng)絡(luò)的費(fèi)用,同時(shí)很好的解決了對(duì)于大存儲(chǔ)空間的需求。
2 軟件RAID 控制器
軟件RAID 控制器是相對(duì)于硬件RAID 控制器提出的,硬件RAID 是指計(jì)算機(jī)系統(tǒng)中安裝有硬件RAID 卡,該硬件提供對(duì)SCSI 硬盤的操作,如組建RAID 陣列,將磁盤置于聯(lián)機(jī)、同步數(shù)據(jù)及數(shù)據(jù)校驗(yàn)等,而軟件RAID 實(shí)質(zhì)上是計(jì)算機(jī)操作系統(tǒng)中帶有的軟件,該軟件對(duì)動(dòng)態(tài)的硬盤操作、實(shí)現(xiàn),如建立RAID 陣列等一系列和硬件RAID 卡相同的功能,對(duì)用戶而言,無論是硬件還是軟件RAID ,兩者都是透明的,在用戶看來,實(shí)際操作的只是一塊硬盤,只是這塊硬盤比計(jì)算機(jī)中的任何一塊硬盤都要大,同時(shí),通過組建RAID 陣列,磁盤的讀寫性能有了巨大的提高,因?yàn)閱螇K硬盤的讀寫變成了多塊硬盤同時(shí)讀寫,單塊硬盤的串行讀寫變?yōu)椴⑿凶x寫,軟件RAID 優(yōu)勢在于,由于使用了操作系統(tǒng)自帶的功能,故無需購買和安裝單獨(dú)的硬件RAID 控制卡,且可以不用購買昂貴的SCSI 硬盤,只需普通的SATA 或IDE 硬盤就可組建一個(gè)性價(jià)比非常高的RAID 陣列,從而獲得廉價(jià)的RAID 方案。
軟件RAID 控制器的出現(xiàn)為個(gè)人、小型企業(yè)采用RAID 作為存儲(chǔ)提供了性價(jià)比非常高的解決方案,通過使用軟件RAID ,降低了采購成本,同時(shí)可以將已經(jīng)廢棄的資源,如淘汰但功能正常的計(jì)算機(jī)重新利用,從而節(jié)約資源,降低費(fèi)用,在性能方面,由于RAID 陣列比普通硬盤更快、更穩(wěn)定,提供冗余的數(shù)據(jù)存儲(chǔ)功能,因此對(duì)于小型企業(yè)而言,軟件RAID 更加符合需要,且成本低廉。
3 基于iSCSI 的軟件RAID 功能的低成本SAN 方案
3.1 網(wǎng)絡(luò)方案構(gòu)建
采用4 臺(tái)聯(lián)想開天A4000 計(jì)算機(jī),4 塊Realtek 8139 網(wǎng)卡,一臺(tái)CISCO 2950 交換機(jī)及4 根RJ45 網(wǎng)線構(gòu)建如圖1 所示的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),將各計(jì)算機(jī)分別命名為software-01 至Software-04 ,其中software-01 作為域控制器、域DNS 服務(wù)器和主控服務(wù)器,Software-02 至Software-04 提供iSCSI Target 服務(wù)(磁盤服務(wù)器),4 臺(tái)聯(lián)想開天A4000 商用計(jì)算機(jī)組成dns1.gang,hit .edu .cn 域。
客戶端通過100Mbps 以太網(wǎng)訪問Software-01 的磁盤服務(wù).dns1 .gang .hit .edu .cn 域中各計(jì)算機(jī)之間網(wǎng)絡(luò)延遲小于或等于1ms(基于ping),客戶端計(jì)算機(jī)與software-01 之間網(wǎng)絡(luò)延遲小于或等于1ms(基于ping)。
dns1 .gang .hit .edu .cn 域中的4 臺(tái)計(jì)算機(jī)均采用Windows2003 EntERPrise Edition SP2 作為操作系統(tǒng),網(wǎng)卡綁定客戶端桙協(xié)議包括:① Microsoft 網(wǎng)絡(luò)客戶端; ② Internet 協(xié)議(TCP桙IP) ; ③ 網(wǎng)絡(luò)文件打印機(jī)共享客戶端,4 臺(tái)計(jì)算均未安裝任何防火墻,未安裝除iSCSI Target 服務(wù)器軟件和Windows默認(rèn)安裝(不含IIS)軟件外的第三方程序。
圖1 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖
客戶端計(jì)算機(jī)采用Windows XP Professional SP3 作為操作系統(tǒng),網(wǎng)卡綁定客戶端桙協(xié)議包括:
① Microsoft網(wǎng)絡(luò)客戶端;
② Kaspersky Anti-Virus NDIS Filter ;
③ Qos 數(shù)據(jù)包計(jì)劃程序;
④ Internet 協(xié)議(TCP桙IP),客戶端計(jì)算機(jī)安裝Kaspersky2009全功能安全軟件,未開啟Windows防火墻,F(xiàn)TP 客戶端使用CuteFTP8 Professional 8 .3 .2 Build 09 .02 .2008 .1。
3.1.1 iSCSI Target
iSCSI Target 服務(wù)由StarWind iSCSI Server v3.5.4(build 20080527 Win32)提供,在各服務(wù)器D 盤(共41GB 空間)傳送大小為3GB 的image 文件模擬SCSI 磁盤,共計(jì)提供3 × 3GB ,即9GB 服務(wù)空間,通過正常設(shè)置iSCSI Target 服務(wù)器可以通過命令窗口使用netstat-an 命令查看到服務(wù)器開啟3260 端口,并處于監(jiān)聽(Listening)狀態(tài)。
3.1.2 iSCSI Initiator
SCSI Initiator 服務(wù)由Microsoft iSCSI Initiator 2.0 提供,在Software-01 服務(wù)器上分別連接Software-02 至Software-03 端口3260 ,得到iSCSI Target 公布的磁盤服務(wù),通過設(shè)置,iSCSI Initiator 可以正常識(shí)別由Software-02 至Software-03 提供的iSCSI Target ,并且正常識(shí)別空間為3 .00GB,共計(jì)3 × 3 .00GB 空間。
3.1.3 軟件RAID
軟件RAID 采用Windows2003 EntERPrise Edition SP2“計(jì)算機(jī)管理”中提供的“新建RAID-5”功能,由Windows2003 自主管理建立的RAID-5 磁盤陣列,需要注意,要使用“計(jì)算機(jī)管理”中提供的“RAID-5”功能必須保證識(shí)別出的硬盤為動(dòng)態(tài)硬盤,iSCSI Initiator 的參數(shù)設(shè)置如表1 所示。
表1 iSCSI Initiator 參數(shù)設(shè)置表
3.2方案測試及結(jié)果分析
3.2.1 測試變量設(shè)置
考慮到小型企業(yè)的實(shí)際情況,可能在應(yīng)用中遇到諸如斷電、網(wǎng)絡(luò)不穩(wěn)定等狀況,測試情況設(shè)置如表2 所示,以此模擬實(shí)際情況,最終以確定該解決方案能否通過現(xiàn)實(shí)情況的考驗(yàn),滿足現(xiàn)實(shí)需要,測試磁盤陣列采用RAID-5 模式。
表2 測試變量設(shè)置表
按表2 所示的所有變量情況進(jìn)行測試,同時(shí)記錄服務(wù)器各項(xiàng)信息(包括網(wǎng)卡工作狀態(tài),CPU 工作狀態(tài)等),測試讀取將采用一個(gè)大小為422MB 的RAR 非自解壓縮文件進(jìn)行,每次讀寫測試都將考驗(yàn)所復(fù)制桙粘貼的文件能否通過WinRAR軟件進(jìn)行解壓,WinRAR采用WinRAR 3 .71 中文正式版進(jìn)行測試。測試考查的關(guān)鍵點(diǎn)包括:
① 網(wǎng)絡(luò)傳輸速度對(duì)于數(shù)據(jù)存儲(chǔ)的影響;
② 分布式存儲(chǔ)系統(tǒng)對(duì)主服務(wù)器CPU 、內(nèi)存的消耗;
③ 正常存取數(shù)據(jù)過程中網(wǎng)絡(luò)消耗情況,特征值將通過圖表的形式表現(xiàn),以估量考查的關(guān)鍵點(diǎn)是否達(dá)到實(shí)際的需求,特征值的記錄基于IOMeter(32k)測試數(shù)據(jù)。
3.2.2 測試結(jié)果及分析
根據(jù)設(shè)置的測試變量情況,在驗(yàn)證網(wǎng)絡(luò)連通正常,主服務(wù)器獲取磁盤正常,磁盤服務(wù)器工作正常的情況下開始測試,以Software-01為準(zhǔn)同步調(diào)整后的結(jié)果。
根據(jù)不同的情況,得到如下測試結(jié)果:
1)所有服務(wù)器正常,在所有服務(wù)器正常啟動(dòng),并所有功能正常,交換機(jī)正常,網(wǎng)絡(luò)通信正常的情況下,主服務(wù)器建立RAID-5 磁盤陣列,磁盤正常同步,同步完成之后,訪問硬盤正常,讀取、寫入文件正常。
2)主服務(wù)器重新啟動(dòng),磁盤服務(wù)器未關(guān)機(jī),網(wǎng)絡(luò)正常,服務(wù)正常情況下,主服務(wù)器重新啟動(dòng),重啟后顯示RAID 陣列的所有磁盤脫機(jī),通過重新激活硬盤,不需要重新同步,硬盤狀態(tài)良好,讀取、寫入文件正常,原有數(shù)據(jù)未發(fā)生丟失。
3)單一網(wǎng)絡(luò)服務(wù)器網(wǎng)絡(luò)異常,主服務(wù)器正常,磁盤服務(wù)器Software-03 網(wǎng)線被拔除,其余磁盤服務(wù)器正常,此情況下,主服務(wù)器iSCSI Initiator 顯示正在嘗試重新連接Software-03 號(hào)服務(wù)器,“計(jì)算機(jī)管理”盅磁盤顯示“失敗的重復(fù)” ,盤符圖標(biāo)左下角顯示警告符號(hào),但數(shù)據(jù)存取正常,寫入速度未受影響,但讀取速度影響較大,速度差距為21%。
當(dāng)Software-03 號(hào)服務(wù)器網(wǎng)絡(luò)恢復(fù)正常,即與主服務(wù)器重新通信正常之后,重新激活硬盤,主服務(wù)器加載硬盤并顯示“重新同步” ,同步之中,數(shù)據(jù)存取正常,速度受較大影響,同步完成之后,磁盤顯示狀態(tài)良好,數(shù)據(jù)存取正常,速度恢復(fù)正常,原有數(shù)據(jù)未丟失。
4) 服務(wù)器群斷電,一次性切斷dns1 .gang .hit .edu .cn 域中所有服務(wù)器的電源,由于RAID-5 磁盤陣列理論上在同一時(shí)間只能冗余一塊硬盤出現(xiàn)異常,所以,如果不按照設(shè)定的順序啟動(dòng)服務(wù)器將導(dǎo)致主服務(wù)器可能檢斥(帶有一定幾率)RAID-5 磁盤陣列已丟失,再次強(qiáng)行激活硬盤將失敗,因此,在服務(wù)器重啟方案對(duì)比RAID-5 理論后,決定采用首先啟動(dòng)所有磁盤服務(wù)器,再啟動(dòng)主服務(wù)器的順序進(jìn)行恢復(fù),這樣符合理論情況,同時(shí)能夠最小程度降低可能的錯(cuò)誤發(fā)生機(jī)率,以上測試結(jié)果記錄如表3 所示(表中R 表示Read ,W表示W(wǎng)rite)。
表3 測試結(jié)果
5)磁盤服務(wù)器集體同時(shí)關(guān)閉,磁盤服務(wù)器集體關(guān)閉,按照理論情況,類比流行的SCSI 磁盤陣列解決方案,應(yīng)該對(duì)現(xiàn)有數(shù)據(jù)沒有影響,同時(shí),服務(wù)器對(duì)磁盤陣列的操作都將失敗,為了模擬這樣的情況,同時(shí)拔除磁盤服務(wù)器的電源線,造成所有服務(wù)器集體同時(shí)關(guān)閉,此情況模擬了磁盤服務(wù)器因斷電的原因集體關(guān)閉的現(xiàn)實(shí)情況,通過測試發(fā)現(xiàn),當(dāng)所有磁盤服務(wù)器同時(shí)關(guān)閉時(shí),“計(jì)算機(jī)管理”提示磁盤被損壞,Windows提示磁盤陣列被損壞,正在寫入的數(shù)據(jù)發(fā)生丟失,提示寫入失敗,正在讀取的數(shù)據(jù)顯示找不到數(shù)據(jù)源,讀取失敗。
6)兩臺(tái)服務(wù)器網(wǎng)絡(luò)異常,在現(xiàn)實(shí)情況中很有可能出現(xiàn)兩臺(tái)或兩臺(tái)以上磁盤服務(wù)器因?yàn)殡娫椿蚓W(wǎng)絡(luò)原因離線,這個(gè)時(shí)候,按照理論情況,RAID-5 陣列會(huì)崩潰,所有對(duì)磁盤陣列的操作都將失敗,為了模擬這樣的情況,將software-02 和software-03 同時(shí)拔除網(wǎng)線,人為制造兩臺(tái)磁盤服務(wù)器網(wǎng)絡(luò)異常,通過測試發(fā)現(xiàn),當(dāng)兩臺(tái)磁盤服務(wù)器同時(shí)離線時(shí),“計(jì)算機(jī)管理”提示磁盤被損壞,Windows提示磁盤陣列被損壞,正在寫入的數(shù)據(jù)發(fā)生丟失,提示寫入失敗,正在讀取的數(shù)據(jù)顯示找不到數(shù)據(jù)源,讀取失敗。
3.3 小型企業(yè)應(yīng)用基于iSCSI 的軟件RAID 組網(wǎng)的可行性分析
通過測試數(shù)據(jù)顯示,可以清楚地發(fā)現(xiàn)iSCSI 具有穩(wěn)定性良好、成本低、易配置性和高透明性,這些特性最重要的在于其低成本的特性,通過對(duì)于廢舊資源的重新利用,達(dá)到了硬盤空間的擴(kuò)大和穩(wěn)定的雙重需要,但是,在實(shí)際應(yīng)用中,iSCSI 受限于網(wǎng)絡(luò)的100 Mbps 以太網(wǎng)性能的限制,導(dǎo)致真正的傳輸速率遠(yuǎn)遠(yuǎn)小于SCSI 320 ,甚至遠(yuǎn)遠(yuǎn)小于SCSI 160,這些問題成為iSCSI 用作高速存儲(chǔ)的瓶頸,通過以上分析發(fā)現(xiàn),基于iSCSI 的軟件RAID-5 在性能上與流行的SATA + RAID-5 低成本RAID 方案差距非常明顯,主要原因在于網(wǎng)絡(luò)帶寬的限制,由于測試中采用的僅僅是100 Mbps 最廉價(jià)的組網(wǎng)方案,折算后,網(wǎng)絡(luò)帶寬僅在64 .81 Mbps(實(shí)際使用速度) ,這一速度大大降低讀取速度,同時(shí)通過測試發(fā)現(xiàn),作為磁盤服務(wù)器的硬盤傳輸速度都在100 Mbps 以上,由此可以判定,100 Mbps 網(wǎng)絡(luò)是整個(gè)解決方案的瓶頸。
但是,作為小型企業(yè),由于資金的原因,沒有辦法去建立和維護(hù)一個(gè)GB 級(jí)的以太網(wǎng)絡(luò),如果為了使用iSCSI 而建立一個(gè)專有的GB 級(jí)網(wǎng)絡(luò),顯然是浪費(fèi)資源,當(dāng)然,為了保證網(wǎng)絡(luò)的暢通和平穩(wěn),在大多數(shù)國內(nèi)大型企業(yè)和高校主干網(wǎng)都為1 GB 的網(wǎng)絡(luò),如果將iSCSI 解決方案應(yīng)用在GB 級(jí)的主干網(wǎng)絡(luò),將極大地提升讀寫性能,當(dāng)然,CPU 的消耗也會(huì)進(jìn)一步增加,同時(shí),在真實(shí)應(yīng)用環(huán)境中,大多數(shù)這樣的存儲(chǔ)器都會(huì)應(yīng)用在FTP 等服務(wù)上,假設(shè)一個(gè)企業(yè)網(wǎng)絡(luò)是基于100 Mbps 以太網(wǎng),人員規(guī)模在100 人左右,每個(gè)人同時(shí)訪問該存儲(chǔ)服務(wù)器(主服務(wù)器)進(jìn)行FTP 資源下載,此時(shí),主服務(wù)器與各個(gè)磁盤服務(wù)器的連接網(wǎng)絡(luò)也為100 Mbps 以太網(wǎng),那么假定傳輸速度為64 Mbps ,主服務(wù)器得到數(shù)據(jù)后CPU 計(jì)算時(shí)間忽略不計(jì),那么對(duì)于每個(gè)人來說可以使用的速度為0 .64 Mbps ,折算之后為81 .92 kbps,除去網(wǎng)絡(luò)帶寬正常消耗(如上傳等操作) ,保守估計(jì)也可以達(dá)到70 kBps 的速度,對(duì)于局域網(wǎng)來說,70 kbps 的速度確實(shí)顯得非常緩慢,因?yàn)檫@個(gè)時(shí)候瓶頸在于主服務(wù)器的出口帶寬僅僅是100 Mbps ,為了解決這個(gè)問題,主服務(wù)器出口必須使用光纖,從而達(dá)到GB 級(jí)網(wǎng)絡(luò),費(fèi)用亦會(huì)進(jìn)一步增加。
通過以上分析,對(duì)于小型企業(yè)而言,iSCSI 的軟件RAID 很好解決了其對(duì)磁盤空間的需要與空間缺乏和容易損失的矛盾,同時(shí)費(fèi)用非常低,能很好解決資金流緊缺問題,但是,如果在資金充裕或?qū)?shù)據(jù)穩(wěn)定性追求更高的情況下,最好使用現(xiàn)存的硬件解決方案,即硬件RAID 卡和SCSI 磁盤陣列。
4 結(jié)論
基于iSCSI 的軟件RAID 功能,即通過iSCSI 和Windows瞮SERVER 系列所提供的軟件RAID ,為小型企業(yè)構(gòu)建低成本的網(wǎng)絡(luò)方案,可以實(shí)現(xiàn)硬件RAID 卡的所有特性,同時(shí)具有優(yōu)異的性價(jià)比,該方案不僅可以作為小型企業(yè)區(qū)域存儲(chǔ)的解決方案,同時(shí)還能提供良好的異地容災(zāi),數(shù)據(jù)備份等功能,對(duì)于小型企業(yè)流動(dòng)資金緊張情況,提供了很好的存儲(chǔ)擴(kuò)展方案。
基于iSCSI 的軟件RAID 網(wǎng)絡(luò)解決方案成本低,同樣適用于中小學(xué)校和家庭用戶,該方案節(jié)省資金,同時(shí)為用戶提供巨大的聯(lián)合空間,為多媒體數(shù)據(jù)存儲(chǔ)提供了很好的解決途徑。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:基于iSCSI的軟件RAID的小型企業(yè)網(wǎng)絡(luò)解決方案
本文網(wǎng)址:http://www.oesoe.com/html/consultation/1083969136.html