iSCSI是Hyper-V高可用性方案之外的低成本選擇
譯文在企業界,虛擬化技術通常在與光纖連接的高端SAN(存儲區域網)存儲系統上運行。作為一名預算受限制的管理員,你可能因SAN設備的高昂價格而驚慌失措,以為共享存儲以及它給Hyper-V虛擬化帶來的種種好處遙不可及。
不必擔心:與光纖連接的高端SAN不是市面上的唯一選擇。iSCSI正成為一項廣受歡迎的標準,對需要以較低成本提供高可用性的IT部門來說更是如此。
iSCSI的目的是讓普通的大眾化硬件改而用于存儲。在這種情況下,SCSI命令和數據被封裝到以太網幀里,并通過公用的以太網來傳送。如今以太網遍地開花,連比較小的公司都有千兆交換機和內置在服務器中的高端以太網網卡。iSCSI這種方法已成為一種性能相當高的方案,可以替代合適的SAN所需要部署的昂貴系統。Hyper-V需要共享存儲,才能充分利用Windows Server 2008 R2中的高可用性(HA)、實時遷移和故障自動切換功能(Windows Server 2012的情況有所不同,它包括存儲方面的幾處改進)。
在考慮實施iSCSI時,你要小心地實施合適的選擇方案。不像SAN硬件是定位于高性能設備來生產和定價的,iSCSI解決方案在價格和性能方面大不相同。市面上既有EMC、戴爾和NetApp等大廠商提供的非常大、高性能的產品,也有QNAP和網件等小廠商的產品,這些產品把比較便宜的、現成的部件(如大眾化硬盤和NAS類型的x86處理器)與Linux內核結合起來。之外還有這個辦法:可以把額外的服務器或具有此類功能的任何計算機變成iSCSI目標。使用典型的文件服務器或NAS(網絡附加存儲),而iSCSI存儲解決方案中使用直接連接存儲,這在實驗室或其他小型環境中頗受歡迎。一分投入的確一分回報,所以雖然EMC方案的起價可能高達20000美元,但你會得到真正的高端性能;相比之下,使用桌面級SATA硬盤驅動器的NAS產品其IOPS(每秒輸入/輸出)低得多。這種性能是否可以接受取決于你的環境,所以應借助像開源存儲測試套件IOMeter這樣的工具做一番負載測試。
iSCSI驅動程序通常類似傳統的SAN HBA(主機總線適配器)驅動程序:自定義、很挑剔。如果你打算使用單單一家廠商的存儲解決方案,就要確保你使用的這家廠商提供的iSCSI目標軟件適合特定的HBA。此外,微軟現在已經發布了標準的iSCSI目標軟件,讓iSCSI能夠用于你網絡上的幾乎任何存儲系統。該軟件之前只提供給Windows Storage Server,而現在可以免費下載,是開始測試iSCSI目標的好方法。
理解iSCSI 和SAN之間在技術和術語方面的差異很重要。不是像在光纖SAN上使用全球名稱(WWN)來識別節點,iSCSI設備而是使用IP地址、DNS域名、網卡的MAC地址或iSCSI合格名稱(IQN)來識別。你逐步完成了iSCSI目標軟件設置后,會看到關于這種類型信息的提示,所以確保你已用網卡和IP地址為實施的架構繪制了示意圖,并指定了它們將如何連接到你的網絡交換機。
為了提供高可用性,你需要實施至少兩個采用集群的Hyper-V主機。雖然這聽起來很難,但所有集群方面的工作體現在擁有合適的系統,再加上一番配置。確保你有兩個同樣的系統,更新到了同一個版本、服務包和補丁,并確保那些系統有足夠的網卡,以支持你的普通客戶機網絡、iSCSI存儲和實時遷移功能。這每一個系統要有獨立的網段,所以不要把你的iSCSI流量放在客戶機局域網上、期待獲得良好的性能。
雖然你可以用現有的網絡設備來實施,但應該為你的iSCSI提供盡可能多的帶寬。如果你在使用現有的設備,要確保你能為打算使用的以太網交換機提供足夠的帶寬,速度至少達到是千兆。反復檢查各方面,確認網絡沒有任何連接問題,并確認那些網卡沒有在那些接口上遇到錯誤。把存儲流量塞入到以太網幀里面時,一條規則就是數據包越大越好。最好使用支持巨型幀的網卡和交換機,并根據這個龐大的幀大小來設置網卡。你甚至可以充分利用具有TOE(TCP/IP 卸載引擎)的網卡,將處理器的效率另外提高5%到10%。這種網卡在大多數情況下并非必不可少,但是如果你的Hyper-V環境上有不可預知的高負載,它就能助一臂之力。
用Hyper-V設置存儲系統時,可以考慮采用集群共享卷(Cluster Shared Volumes),它允許每個主機同時訪問共享存儲。SAN的另一項常見特性是多路徑,即為同一存儲資源提供冗余路徑。這在以太網中設置起來不是很難,而且我強烈建議這么做,以防止僅僅多幾個網卡端口、多一只交換機就帶來單一故障點。
最后,要熟悉iSCSI的實施,除非你準備好聲稱存儲速度和配置已準備就緒,否則不要將關鍵任務的虛擬服務器放在該存儲系統上。由于從磁盤速度到網絡設備的配置差異方面存在多種可能性,你應該確保既擁有故障切換功能,又擁有所需的性能。與微軟領域的每個產品一樣,你的服務器及其他網絡設備都需要符合微軟Windows Server 2008 R2方面的認證。幸運的是,許多服務器和外設都符合這項認證。