服務器虛擬化是在數據中心部署新的應用程序時所普遍采取的較為實際的方法。虛擬機必須存儲在基礎設施的某個地方,通常是通過使用外部和內部存儲硬件的組合來實現的。
但是,鑒于現如今存儲產品的選擇比以往任何時候都多,而且這些來自不同供應商的存儲產品還各自有著一系列令人眼花繚亂的特性和功能。因而,做出正確的存儲產品選擇需要取決于您企業工作負載的具體需求,以確保您企業典型的存儲問題能夠成功得到緩解。
在虛擬服務器和桌面平臺領域,最為突出的前五大存儲問題包括:
虛擬機蔓延(VM sprawl):較之過去采購、部署和調試物理服務器所需花費的時間和精力而言,虛擬機能夠相對很容易的創建。能夠按需增加虛擬機,提高了企業業務的靈活敏捷性,但這是在價格上實現的。孤立的虛擬機(與虛擬機管理程序無關),或是不再使用的虛擬機(無論是被接通電源卻什么也不做的所謂的“僵尸”機器,或是關閉的和未使用的機器)消耗存儲資源是很容易的。
效率:如果缺乏精心的管理,虛擬機存儲資源可以不受控制地肆意生長。人們總會有為每臺虛擬機部署盡可能多的存儲容量的愿望,因為這樣做可以減少未來需要調整虛擬機的可能性(具備潛在的影響)。但是,使用模板部署的危險在于過度分配的資源最終會落得從未被使用。
性能:較之物理服務器的部署,虛擬化逆轉了LUN(邏輯單元號,logical unit number)的作用。其中每臺服務器將接收一個或多個LUN,虛擬化將產生較大的LUN,并用它們來存儲多臺虛擬機。VM存儲工作負載在LUN層面,因此在性質上通常是隨機的,因為跨多臺活躍的共享相同物理存儲的虛擬機預測I/O活動是不可能。這個問題在VDI(虛擬桌面基礎設施)的環境中尤為普遍,能夠在I/O中看到非常高的峰值(例如,所謂的“啟動風暴”)。
成本:多年來,存儲成本(每千兆字節)一直在不斷下降。然而,這僅僅適用于基于磁盤的系統,特別是那些使用大容量驅動設備的系統。較之磁盤,閃存存儲肯定是不便宜的,雖然我們已經看到混合系統已經開始將成本推向1美元/千兆字節。成本是虛擬機部署的一個重要因素,因此,為存儲選擇合適的成本/性能配置是必不可少的。
數據保護:虛擬機需要被保護,但傳統的備份/恢復方法不能滿足虛擬環境的需求。硬件的整合在虛擬化環境形成了節約成本的基礎意味著在每臺虛擬機部署代理均需要進行備份,而這恰恰不是一個可行的解決方案。困難在于需要確保虛擬機和應用程序的備份都是一致的,而不影響虛擬機的性能/可用性,并同時提供全面細化的文件或應用程序數據訪問。
因此,以上這些是在設計存儲和虛擬化時企業所面臨的主要問題,但我們如何應對呢?有沒有什么類似于“靈丹妙藥”的解決方案,能夠有針對性的解決每個問題呢;或者說是否能夠通過實施一套有效的實踐方案,并通過借助一系列的硬件和軟件解決方案來搞定呢。
虛擬機蔓延:解決孤立和僵尸/未使用的虛擬機的最佳做法在于虛擬機的跟蹤和管理。孤立的虛擬機可以通過使用腳本提取VM列表,并將其與在磁盤上的虛擬機文檔結構進行比較來識別和跟蹤。對于VMware ESXi,這意味著查看VMX和VMDK文檔;而對于微軟Hyper-V,這意味著需要查看VHD和VHDX文件以及定義一臺虛擬機的XML文件。
有了合理的命名標準和所有權的詳細信息,僵尸/無效的虛擬機可以追溯到其所有者,并驗證該虛擬機是否仍然需要。VMware vSphere和Hyper-V均提供對于簡單腳本的PowerShell(及其他)工具包的支持;這兩款平臺均能夠提供詳細信息的補充說明,如虛擬機的所有權信息。
效率:有許多可以用來實現存儲效率的措施,包括使用自動精簡配置(包括在管理程序和外部存儲上),壓縮和重復數據刪除技術。存儲容量可以通過使用鏈接的克隆被優化,其維持了虛擬機主圖像與克隆所產生的增量之間的差異。
使用所有這些技術可以帶來明顯的成本節約,其中虛擬機是基于相同或非常相似的圖像來制備。使用精簡配置時必須非常小心,以確保虛擬機內的正常創建/刪除的數據不會消耗在邏輯上由虛擬機釋放的物理資源。這意味著需要運行清理任務,例如“sdelete”(偶爾整理)收回所謂的“死角”。
性能:性能問題可以通過一系列的技術來解決。諸如PernixData公司的FVP、Infinio公司的加速器和Atlantis Computing的USX等軟件產品都通過在服務器中采用本地DRAM緩存和Flash閃存讓I/O接近CPU。這些加速產品減少了I/O延遲,提高了性能,尤其是具有高水平的冗余數據的環境,可重復數據刪除。性能可以通過將虛擬機部署到混合系統和全閃存解決方案得以改進,如借助Tegile和Pure Storage的產品。
成本:全閃存解決方案肯定會改善I/O性能,但較之基于磁盤的系統,會付出了相當的代價。大多數虛擬環境都是活躍和非活躍虛擬機的混合搭配,所以閃存可能適用于虛擬機應用程序工作負載的一小部分。內置的虛擬機管理程序工具,如存儲IO控制和SDRS,可以部分地被用來幫助虛擬機分配到最合適的位置。然而,這些工具受到使用范圍的限制。作為替代方案,諸如VMTurbo的操作管理器軟件等解決方案可用于檢查和優化虛擬環境下所有資源的使用,而不僅僅是存儲。
數據保護:在虛擬環境中,確保備份的傳統方式是通過使用快照,無論是在虛擬機管理程序或存儲陣列的水平。此技術的問題在于快照圖像的一致性。虛擬機管理程序的VADP等功能提供了一致的快照,但在虛擬機管理程序創建快照會影響虛擬機的性能。
諸如Veeam的備份和復制工具以及惠普的StoreOnce RMC能夠在系統管理程序和存儲之間同步快照過程,采用與物理陣列的性能管理程序一致性來實現快照對生產工作負載的最小的影響。在采用RMC的情況下,該設施也可以用作為一種能夠以測試/開發為目的產生虛擬圖像的工具。
雖然我們在上文中強調了一些用以虛擬機的存儲問題的比較明顯的解決方案,也市場上也有其他的相關產品:
可感知虛擬機的存儲技術(VM-aware storage)–諸如Tintri的VMstore等產品能夠感知一臺虛擬機的文件組成,可以滿足應用程序的性能和容量要求。
服務器端存儲–這包括來自VMware的VSAN以及其他產品,如Maxta MXSP和Springpath HALO,提供在虛擬機基礎設施內的虛擬存儲設備。
VVOLs - 對于VMware vSphere,供應商已經開始引入VVOLs支持了,其將虛擬機文件封裝到一個單一的實體。這將為個別虛擬機和卸載到外部陣列的管理提供應用服務水平的能力(性能,容量)。