企業級虛擬基礎架構通常都會使用共享存儲。這是個不爭的事實,即如果你想使用VMware vSphere和Microsoft Hyper-V的高級特性,所有的主機都需要訪問虛擬機(VM)的各種文件。雖然VMware VMotion和Microsoft Live Migration的最新版本并不強制要求使用共享存儲,但絕大多數的特性就需要使用,比如VMware vSphere高可用性和微軟故障切換集群,可能以后也會是這樣。
為了使虛擬基礎架構(以及你的關鍵應用)運行良好,其必須配置虛擬CPU、虛擬內存以及虛擬磁盤I/O。隨著hypervisor各項統計功能及監控工具越來越智能,監控虛擬CPU和內存也變得簡單了。但是,虛擬基礎架構的存儲性能監控在很大程度上還缺乏科學的方法。當然也有存儲性能的科學統計分析方式,不過不同的是對于hypervisor和物理服務器環境,存儲時屬于外部的。因此,hypervisor(以及你的虛擬化性能監控工具)并不能洞悉存儲內部發生的事情(不過這點正在發生改變)。
盡管如此,你仍可采取一些方法來改善虛擬服務器的存儲性能。這里列出10項技巧可以幫你改善虛擬機的存儲系統性能。
1、了解IOPS
簡單來說,虛擬服務器存儲調優的學問就是“進入的IOPS和流出的IOPS”。每個LUN中的驅動器每秒能夠提供一定數量的I/O,服務器和存儲之間的通道亦具備一定的吞吐量,而應用程序則會要求更多。雖然這個問題可以簡化成“是否足夠或想要更多?”但是答案并不簡單。以下技巧中談到的許多工具、技術和解決方案可以幫助你獲取更多的I/O量或降低I/O需求(通常這會要求對應用的深入了解以及和應用所有者或開發者的協作)。
在虛擬基礎架構中,理解虛擬機和數據存儲I/O情況的最佳途徑是使用專為虛擬化技術定制的性能分析工具。每樣工具都可以幫你“了解你的IOPS”。
這些工具可以是內置的VMware esxtop CLI工具,vCenter中的性能制表(其中可以通過disk.numberRead.summation和disk.numberWrite.summation計數器反應IOPS),也可以是第三方提供的收費工具。由于vCenter需要根據產生IOPS的抽樣時間分段統計,這種方式更適合于估算。而第三方工具(或者VMware vCenter Operation Manager)費用更高,但也更易于使用,更為智能。
注意,LUN配置和RAID類型選擇可能會對I/O性能產生巨大的影響。
2、了解應用程序
雖然存儲和虛擬化管理員有許多工具來炮制更多的I/O,但通常他們在降低I/O需求方面能做的事情都非常有限。同樣,許多IT經理更樂于花精力在建設多如雜草的數據中心基礎架構上,而完全忽略了其中運行著的應用程序。
如果你并不了解哪些應用程序是最為I/O密集的、運行在哪些虛擬機上、所承載的服務器集群以及所使用的存儲都有哪些,你很難真正了解存儲性能。你的應用程序對讀操作敏感還是寫操作?弄清這些問題可以引導你達到更高效地存儲調優。通過理解這些應用程序,并且和應用所有者或開發者協同工作,你或許能夠降低I/O工作負載,為公司省下一筆原本要去采購新存儲陣列或增加高性能驅動器上的開銷。
假如應用程序已經是虛擬化的,你可以使用上述工具來了解其通常的I/O負載和讀寫操作的敏感程度。假如應用程序沒有虛擬化,你可能想要創建應用程序虛擬化的概念驗證,在實際負載環境下測試這種虛擬應用,基于測試對生產工作負載進行建模。也可能是,假如生產應用已經使用了SAN環境,你可以在虛擬化之前通過SAN供應商提供的性能工具來測量物理服務器的I/O負載。
3、最大限度地利用現有存儲
改善存儲性能的方式之一是確保你使用到已有的絕大部分存儲。有一部分特性你可能都沒用到,也可能有些特性能夠降低成本。你甚至要考慮重新配置你的存儲LUN或RAID組來為虛擬基礎架構獲取更好的性能。I/O工作負載一直在變,而已有的LUN部署和RAID組或許已經有很長一段時間,不再適用。通過在不同的LUN中重新平衡工作負載,或者改變某一LUN的RAID類型,你也許可以為虛擬化基礎架構和物理服務器改善性能。很多情況下,管理員通常會尋找一些“華而不實”的方法來改善性能,而其實是虛擬化基礎架構的存儲性能問題通常在傳統物理服務器上。
4、VAAI或ODX
VMware的陣列集成應用接口(vStorage APIs for Array Integration,VAAI)允許vSphere hypervisor將部分存儲相關的工作交給存儲完成。比如,虛擬機的克隆操作可以不經過hypervisor,而在存儲上直接完成。VAAI通過使用硬件加速的方式也明顯降低了磁盤加鎖的時間。所以要確保你的存儲支持VAAI,這樣才能保證虛擬基礎架構能從存儲交付中獲益。
在Microsoft Hyper-V環境中,卸載數據傳輸(OfflOAded Data Transfer,ODX)和VAAI相似。如果你正使用Hyper-V,你肯定想要你的存儲能夠支持ODX。
要檢查存儲是否支持VMware VAAI,你可以在VMware兼容性列表中尋找SAN和NAS的支持名稱。而要獲悉是否兼容支持ODX,你可以直接詢問廠商其產品是否通過Microsoft ODX認證。隨著時間的推移,越來越多的廠商會在其企業級存儲陣列中增加VAAI和ODX的兼容認證。
5、限制快照數量
虛擬化之中最有用的功能之一就是能夠對虛擬機進行快照。這種時間點的虛擬機內存和虛擬磁盤的照片在應用程序或操作系統升級出錯或需要測試配置變更時十分有用。快照在虛擬化備份和虛擬磁盤變更時復制應用程序,避免宕機時也會用到。不過,過多的快照是不可取的,它會占用磁盤空間,引起備份應用性能下降以及VMotion和其它存儲相關功能的性能問題。快照應當只是臨時使用,然后就刪除。
6、傳統存儲自動配置與自動精簡配置
通過自動精簡配置的虛擬磁盤創建虛擬機的功能十分有用。我在實驗室環境中總會應用到自動精簡配置。然而,在虛擬層和物理存儲陣列上的自動精簡配置必需慎重規劃和管理。自動精簡配置最大的問題就是會用光所有的存儲。不過,如果你的存儲不支持VAAI,自動精簡配置后的虛擬磁盤需要增加容量時也會造成性能的下降。在這種情況下,你可能就需要為虛擬機磁盤使用傳統的存儲自動配置(建立磁盤時一次性給足),而在你的存儲陣列上使用自動精簡配置。
7、虛擬化認知存儲
一些新的存儲陣列被稱為具備“虛擬化認知”的特性。這意味著存儲可以和VMware vCenter通訊,這樣存儲就能夠了解上面運行的虛擬機和SAN/NAS上虛擬機磁盤文件(VMDKs)的通訊路徑。虛擬化管理員和存儲管理員可以從中獲益頗多。舉例來說,你可以找出哪個虛擬機產生大量IOPS,或者哪個虛擬機正處于嚴重的存儲延遲中。一些虛擬化認知的存儲系統甚至提供單個的虛擬機快照和克隆。你并不必要將存儲陣列替換成這樣一臺虛擬化認知的設備,不過未來可以考慮,或者你應當訊問目前的存儲供應商以了解其是否有規劃在新版本中發布類似的特性。
8、分區隊列
在之前的虛擬機操作系統中并不會計算分區隊列的數量,這可能會引起性能問題。然而,在Windows Vista、Windows 7和Windows 2008(或之后的版本,比如Windows 8和Windows 2012)中并沒有這樣的問題。一些虛擬化認知的存儲可以自動化排列VMDKs而無關操作系統。但是假如你的企業使用早先的操作系統,你應當核實VMDKs是否與虛擬機文件系統(VMFS)和SAN LUN一致。
有許多工具可以幫助你驗證Windows Vista和Windows 2008操作系統之前的分區隊列,其中包括免費的UberAlign或商業化產品vOptimizer Pro。
9、存儲I/O控制
在多臺虛擬化主機共享同一存儲時,需要確保存儲不會被消耗大量I/O的應用獨占,或者更關鍵的應用程序無法獲取足夠I/O。VMware的vSphere Storage I/O控制可以做到這點,只需要在VMFS數據存儲中通過單選框激活即可。
10、存儲分布式資源規劃(SDRS)
就像VMware為處理器和內存進行的分布式資源規劃一樣,SDRS為存儲提供類似的功能。SDRS會在某個數據存儲處于高延遲或高磁盤空間利用率時,從一個數據存儲中遷移更多的虛擬機磁盤(不需宕機)到另一個上(甚至是一臺陣列到另一臺)。確保你的存儲可以通過VASA 的VMware vStorage APIs和vCenter通訊,這樣vCenter可以識別存儲的SDRS功能,以防止其存儲使用過度。
假如這一切都不能奏效……
雖然存儲對任何人來說都不夠,不過你可能確實得花點錢來購置一臺新存儲系統以獲取虛擬化基礎架構所需的高性能。虛擬化基礎架構中每塊磁盤LUN上可能都有超過50個虛擬機,和之前一對一的服務器和磁盤LUN映射的I/O負載有著天壤之別。新存儲除了提供更高的性能以外,你還可以獲取諸如虛擬化認知存儲、混合存儲、VAAI、VASA等更多特性。
數據中心的虛擬化是一種全新的思維模式;隨著虛擬機的整合,存儲必需重新加以考量并重新配置。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:改善虛擬服務器的存儲性能的10項技巧