再高效的存儲配置和維護也并非易事,而虛擬服務器環境下的存儲管理更是一個挑戰。加上存儲陣列掛到物理服務器(主機)上,虛擬化管理程序做虛擬化并協調分配物理資源到各個虛擬機(vm),對于物理存儲組件來講,虛擬機使用虛擬存儲資源的能力變得尤為復雜。
不使用特殊工具的情況下,為運行在帶有直連式存儲(das)的物理機上的某個特定應用程序診斷和識別存儲性能問題的根本原因,是一個相對簡單的任務,但在虛擬化環境下根本不是這樣。在某主機上運行著某虛擬機,該虛擬機與其他虛擬機訪問某一san上同一存儲池,而這個san為搭載虛擬化管理程序的其他類似的主機提供著存儲。解決這樣一個vm上運行的某應用程序的性能問題,就需要利用高效的管理工具。虛擬機存儲管理復雜性的罪魁禍首是虛擬服務器和應用程序訪問抽象共享物理資源的大量組合,以及其他各種遷移組件,包括從提供若干路徑的多路徑選擇,到支持動態存儲分層即將數據塊打亂在不同存儲層的附加存儲。
虛擬機存儲管理工具
高效的管理工具,能提供存儲內視圖和從虛擬機到磁盤轉軸的存儲監控,也使系統管理員能夠克服這種交錯紛雜,是虛擬服務器環境的一個關鍵組成部分。
在功能和管理維度有所不同,管理虛擬機的存儲可以使用以下三種工具:
由虛擬化管理程序提供的管理工具
由存儲系統廠商提供的基本管理器和工具
第三方存儲管理工具及應用
虛擬化管理程序api使與存儲系統和存儲api進行交互成為可能,像全球存儲網絡工業協會(snia)的存儲管理倡議規范(smi-s)描述了工具和應用程序如何與存儲系統交互,這樣便模糊以上三類間的界限,使比較市面上各種存儲管理方案和產品的功能和特性,變得更具挑戰性。舉例來講,一個存儲陣列供應商支持smi-s的程度直接影響依靠smi-s管理存儲資源的第三方管理工具的管理能力。同樣,一個存儲陣列對虛擬化管理程序api的支持級別也決定著vm存儲可以管理的水平和粒度。換句話說,管理虛擬服務器存儲需要對虛擬化管理程序、存儲系統和管理工具的組合進行分析,并跟給定環境強耦合。
虛擬管理程序端存儲管理工具
即使沒有存儲陣列的集成,在某種程度上虛擬管理程序也能夠執行存儲管理任務。一旦分配給虛擬管理程序一個卷或lun,它就能夠接管所分配的數據存儲,如從數據存儲到虛擬機的精簡配置存儲。如果下層存儲陣列與虛擬管理程序沒有進一步的集成,其關聯虛擬化資源與物理存儲陣列的能力,便只能停留在已分配的數據存儲水平上。
如果多個vm棲身于這個數據存儲,將vm所用的存儲與物理存儲組件相關聯就不會太容易,比如磁盤與控制器。解除這種限制的一種方法就是配置許多小的luns或卷,但是這也會帶來一系列新的挑戰。除了會加重存儲團隊的負擔之外,虛擬管理程序的特點,尤其是來自vmware軟件的虛擬管理程序,會促進形成大型的存儲池,這將由vm與多個vmware主機共享。vmware虛擬機文件系統(vmware集群文件系統)進行存儲虛擬機磁盤文件以及快照、storage vmotion將vm從一個數據存儲轉移到另一個而沒有引起停機的時間以及storage distributed resource scheduler對存儲資源進行負載均衡,這些都需要它們在大型數據存儲配置方面達到最高潛力,而大型數據存儲承載著許多虛擬機,并被多個vsphere主機共享。
為了克服虛擬管理程序與物理存儲之間的連接障礙,虛擬管理程序供應商研制了能夠使虛擬管理程序與物理存儲相互作用的api。首先,用于array integration的vmware vstorage api(vaai)使特定的存儲任務從vmware虛擬管理程序卸載到存儲陣列中,比如復制與轉移數據及自動精簡配置。用于storage awareness的vmware vstorage(vasa)允許存儲陣列與vmware vcenter進行管理功能方面的聯合,通過插件(稱作提供器)給予vsphere管理員存儲能力,即vcenter能接受來自下層盤陣的容量、健康狀態、配置信息,并且能夠在vcenter用戶界面上進行展示。
與vmware vaai類似,microsoft將卸載數據傳輸(offloaded data transfer)引入windows server 2012,從而可以以卸載的方式進行對存儲陣列的復制和移動操作。為了完成管理與第三方存儲的深度聯合,windows server 2012中新的微軟存儲管理api與系統中心虛擬機管理器(scvmm)2012現在都能夠支持smi-s與存儲管理包(smp)。總之,scvmm 201現在既能管理兼容smp與smi-s的陣列,又能管理san存儲。微軟支持的smi-s不僅僅提升了標準(標準的支持一直發展的很慢),而且也使得大量支持smi-s管理(包含scvmm 2012)的存儲系統不需要存儲系統廠商的支持,而另一個專有api與所有的vmware api情況類似。
為了保證管理及與第三方存儲的深度集成,windows server 2012中的windows存儲管理api以及系統中心虛擬機管理器(scvmm)2012現在都能夠支持smi-s與smp。
存儲廠商提供的基本管理器及工具
所有的存儲廠商都會提供基本管理器或者其他管理工具對配置、容量及操作進行管理。他們的管理工具涵蓋存儲系統所有的配置方面,甚至如果將類似于分配的配置任務移交給第三方存儲存儲管理工具或者虛擬管理控制臺,通常會要求基本管理器限于非常特殊而且使用次數更少的任務,比如配置系統參數、壓縮、重復數據刪除及自動精簡配置,同樣也適用于不需要使用api集成的管理任務,如smi-s。總之,基本管理器與其他工具與存儲陣列結合是最多樣化的存儲工具,但是它們的設計是針對于特定的存儲系統,而且存儲專家更傾向使用它們。
為了克服這些限制并且將特定存儲管理任務擴展到虛擬管理程序控制臺與第三方管理工具(能夠提供額外的容量與異構存儲系統支持),存儲廠商為他們的陣列提供插件與提供器,以便支持多種api,比如smi-s、smp、vaai 與vasa。盡管所有的存儲供應商都意識到與vmware和不斷增加的hyper-v的緊密集成的重要性,但他們的提供器顯現出來存儲管理能力以及他們所支持的虛擬管理程序還是有所不同。
emc為vmware環境提供一系列的集成及自動化選項,并為任務(如存儲發現)提供與scvmm 2012集成的smi-s提供器。netapp既帶有支持vmware的虛擬存儲控制臺(virtual storage console),又帶有支持microsoft與system center 2012集成的oncommand插件,將精簡配置、克隆、調整大小以及監控等存儲任務擴允到虛擬服務器管理員。通過使用支持vcenter的插件程序hp insight control storage module,hp使得vmware管理員能夠管理和監控vm、vmware esx server以及hp存儲之間的物理或虛擬關系,而且就像其他產品一樣,hp與scvmm 2012的集成也通過smi-s提供器來實現。ibm并沒有能夠管理來自vcenter的存儲系統的vasa插件;然而,ibm存儲部門主管justin youngblood說,“通過vcenter,vasa插件將能夠保證近乎理想的存儲配置和性能監測”。dell支持vaai與vasa,盡管它的vasa提供商目前缺少自動支持,而且是通過smp提供到scvmm的集成。
第三方存儲管理工具
在某種程度上,第三方存儲管理工具和存儲資源管理(srm)程序能與虛擬化管理程序端的管理工具相提并論,但他們也有很多共同之處:
皆能夠管理異構存儲資源
他們依賴于api,并與存儲系統集成
以“single-pane-of-glass”管理范式工作
it管理軟件提供商solarwinds的副經理sanjay castelino說:“我們最大的競爭者是microsoft系統中心虛擬機管理器(microsoft system center virtual machine manager)和vmware vcenter。”重要不同點之一在于,目標用戶不同。虛擬管理程序的管理工具目標人群是管理服務器的it團隊,而srm工具主要針對的是存儲系統管理員。
而且,虛擬管理程序中管理工具的存儲管理能力通常受限于與特定虛擬管理工具的vm有關的任務,而srm工具可以管理虛擬化和物理服務器的存儲;后者同時也提供了更為強大和完備的存儲管理特性集。
毫無疑問,服務器虛擬化帶來超復雜的存儲管理任務,但是至今大多數srm工具都能夠完成關聯vm與物理存儲資源的存儲任務。舉例來說,hp storage essentials能夠在不需要代理的情況下發現vmware虛擬管理程序、vm以及vm存儲。它也能夠使使用者看到vm存儲網絡拓撲,管理和報告虛擬管理程序或虛擬機的能力,而且能夠對虛擬管理程序分配存儲。在ibm tivoli storage productivity center及其他現代srm工具中也能夠發現類似功能的集成。
復雜環境闡述
服務器虛擬化增加了存儲管理的復雜性,并對存儲的管理方式產生了影響。一方面來講,虛擬管理程序的存儲管理能力已經變得更為重要,而且許多公司就是選擇簡單地將基于虛擬管理程序的存儲管理與基本管理器相結合。但是srm工具仍然在由存儲系統、物理服務器、虛擬服務器混合構成的異構存儲系統環境中占有一席之地;而且,那些srm工具通常能夠提供基于虛擬管理程序的存儲管理所不能提供的附加特色與功能。