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://m.hanmeixuan.com/
本文標題:基于iSCSI的軟件RAID的小型企業網絡解決方案
本文網址:http://m.hanmeixuan.com/html/consultation/1083969136.html