博文谷

位置:首頁 > 實用範文 > 論文

探析網絡存儲技術研究論文

論文1.95W

0引言

探析網絡存儲技術研究論文

雲計算浪潮席捲全球,推動着社會資訊基礎設施的重大變革。以虛擬化爲代表的新技術已經成爲數據中心的基本組織方式,商業產品如VMware和開源產品如KVM、Xen已得到普及使用。統計數據顯示,至2012年底已有超過一半的x86服務器使用了虛擬化,至2014年這一比例將擴大到700%。

雖然虛擬化技術獲得快速發展,但在面向雲計算數據中心的存儲系統設計仍然而臨諸多挑戰和困惑。人們目前對虛擬機環境下的檔案系統I/O特徵還缺乏深入認識和理解,在虛擬機環境下存儲技術路線的選擇方而缺乏理論與實驗數據支撐的有效指導。在雲計算數據中心中,一類重要的存儲需求是爲每個虛擬機提供一個虛擬磁盤映像。該應用需要存儲系統具有良好的可擴展性,支援爲任意數量的虛擬機提供磁盤映像,並支援高性能訪問;可以支援磁盤映像的快照與克隆、遷移、動態擴展等進階特性。

NAS和SAN是目前數據中心所使用的主要存儲設備形式,NAS存儲可以支援數據共享,具有更好的可擴展性、可管理性和可用性;SAN在大多數傳統應用場景中具有更好的性能,但配置和管理較爲複雜。在功能上,NAS和SAN都可以作爲虛擬機的磁盤映像存儲設備,虛擬磁盤映像既可以對應到SAN設備的一個邏輯卷,也可以映射到NAS的一個或多個檔案。

本文將簡要分析NAS和SAN的工作原理,探討虛擬化環境下的存儲系統架構和I/O訪問路徑,然後模擬數據中心的虛擬化環境對NAS和SAN的性能進行測試,對測試的結果進行分析探討,在此基礎上提出而向數據中心的存儲方案實施建議。

1網絡存儲系統的類型

NAS和SAN是目前雲計算數據中心所使用的兩類主要存儲設備,本節簡要分析其工作原理並比較其差異。

1.1 NAS

NAS(Network Attachment Storage)存儲系統上執行有檔案系統,對外部提供檔案和目錄、元數據的數據視圖。其中目錄和檔案的內容稱爲檔案系統的數據,而把用於描述和實現檔案系統所用到的數據稱爲元數據(Metadata),如檔案大小、修改日期、以及訪問控制等。目前使用比較廣泛的NAS訪問協議有NFSv3, NFSv4和CIFS。其中UNIX/Linux環境使用NFS協議,而windows系統使用CIFS協議。

NAS可以支援多個程序對檔案的`共享和併發訪問,並採取較爲嚴格的一致性語義。如NFSv3規定對元數據的訪問使用同步操作;客戶端在開啟檔案時根據檔案的最後修改時間對已緩衝檔案數據的有效性進行檢查;對寫入的檔案數據的快取也有時間限制。

1.2 SAN

SAN (Storage Area Network)提供的數據視圖和磁盤完全相同。根據通信網絡的不同,SAN分爲光纖通道( FC-SAN)和基於TCP/IP網絡的IP-SAN(通信協議爲iSCSI)。總體來看,FC-SAN性能表現更加穩定,但iSCSI具有顯著性價比優勢,iSCSI在應用普及程度方而已經遠遠超過FC-SAN;隨着萬兆以太網的普及,有理由相信iSCSI將會在性能方而追趕上FC-SAN。

需要指出的是,在功能上SAN設備只提供了最基本的塊存儲功能,只能被動的接受讀寫命令;由於SAN設備上無檔案系統,因此,不具有存儲空間和數據管理能力;其配置和管理也更加複雜。

2虛擬機環境下的存儲架構

虛擬機上執行有檔案系統,當應用程序訪問檔案時,檔案系統將其轉換爲對磁盤設備的請求,這些請求以模擬磁盤方式或準虛擬化方式發送到虛擬機監視器(Hypervisor)。虛擬機監視器判斷後端存儲設備的類型,如果爲NAS,則將對磁盤的請求轉換爲檔案操作,發送請求給NAS服務器;如果後端存儲設備爲SAN,則將磁盤塊訪問請求發送給SAN設備。

如果後端存儲設備爲NAS, VM所訪問的虛擬磁盤實際爲NAS存儲系統中的檔案。這種模式下Hypervisor訪問存儲設備的I/O模式與傳統應用自接訪問NAS設備有很大不同。在傳統應用中,元數據操作高達I/O操作總數的70%,而在虛擬化環境下,所有元數據操作都轉換爲對檔案數據的操作,因此,元數據操作數量將顯著減少,與此同時,檔案數據訪問呈現出更多的隨機訪問特徵。

3虛擬機環境下NAS與SAN的性能測試

本節將測試虛擬機環境下NAS和SAN的性能。使用一個計算機作爲存儲服務器,其CPU爲Pentium(R) Dual-CoreE5300 2.60GHz,配置有8GB內存和2塊2TB SATA硬盤,配置有1塊千兆以太網卡,操作系統爲CentOS6.4;在其上執行有NFS服務器和ISCSI軟件,可同時作爲NAS和SAN存儲設備;另有一臺計算機作爲虛擬機服務器,CPU爲Pentium(R) Dual-Core E5300 2.60GHz,內存爲8GB ,配置有1個千兆以太網卡,操作系統均爲Ubuntu 12.04;創建2個虛擬機,每個虛擬機內存大小限制爲2GB,虛擬機磁盤大小爲30GB 。

測試檔案設定爲4GB,爲虛擬機內存大小的2倍,以儘量消除虛擬機內存cache對讀寫性能的影響。

從測試結果可以看出,NAS的read. reread性能稍高於SAN,其原因在於NAS端的檔案系統執行了預讀策略;而在random-read測試中,NAS的性能要低於SAN,則是由於在隨機讀情況下,NAS的預讀策略失效;在虛擬機環境下NAS和SAN的write . rewrite性能基本持平,而在randrom-write測試中,NAS的性能要稍高於SAN,這是由於NAS端的檔案系統具有緩衝功能,可以將隨機寫入的數據進行緩衝,並在此基礎上進行I/O的優化。

虛擬機數量對測試性能有顯著影響。虛擬機數量增加時,性能有明顯下降。這是由於當只有一個虛擬機訪問存儲設備時,讀寫操作均爲順序訪問;而當多個虛擬機併發訪問存儲系統時,不同虛擬機的請求交替到達,總體上在存儲設備端表現爲隨機訪問,造成額外的磁頭移動,從而導致性能下降。

上述測試顯示了與傳統非虛擬化環境完全不同的結果。在傳統非虛擬化環境中,SAN的性能要顯著高於NAS,尤其在元數據密集型操作中SAN的性能高達NAS的3倍,究其原因,在於SAN的客戶端可以採取有效的緩衝策略,減少與存儲設備端的交互;而NAS由於數據一致性的要求客戶端需要及時將新的數據提交到存儲服務器,從而導致大量通信開銷。在虛擬機應用環境中,虛擬機上執行有檔案系統,可以對數據採取有效的快取策略,有效減少了和後端存儲設備的通信開銷;與此同時,所有在虛擬機上的檔案系統中產生的元數據操作,都被轉換爲針對NAS存儲系統中檔案數據的操作,因此可以採用異步方式寫入NAS存儲設備,也進一步有效減少了通信開銷。

4總結

現代雲計算數據中心需要爲虛擬機提供可擴展、易於管理、支援快照和克隆等進階特性、並具有高性能的虛擬機映像存儲方案。本文的研究結果揭示出,雖然在傳統應用場景中SAN和NAS的性能有顯著差異,但這一性能差異已在虛擬機應用環境中得以消除。由於NAS存儲具有更好的可擴展性和易管理性,我們有理由相信NAS存儲是數據中心虛擬機映象存儲的更好選擇。