本節書摘來華章計算機《vsphere性能設計:性能密集場景下cpu、記憶體、存儲及網絡的最佳設計實踐》一書中的第1章 ,第1.3節,[美] 克裡斯托弗·庫塞克(christopher kusek) 著 呂南德特·施皮斯(rynardt spies)姚海鵬 劉韻潔 譯, 更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。
你已經搭建了一個vmware vsphere叢集并且建立了esxi伺服器的能力基準。現在你可以準備開始複制它了,對嗎?完全錯誤。
現在重要的是,要確定你的架構以及模闆是為應用程式設計的,而非解決方案。不能僅僅基于架構進行設計,因為應用程式所有者會要求得到該解決方案所支援的最大能力。換句話說,即使隻需要一個不超過4gb ram的32位伺服器,但如果應用程式所有者知道能獲得一個1tb ram和64tb磁盤空間的32位vcpu伺服器,他們也會想要得到。這樣一來需求就會永無止境,系統将因效率低下而崩潰。
這時最重要的就是确定應用程式以及衡量它們的工作負載。你是正在部署一個web伺服器?一個高性能的資料庫伺服器?一個通用伺服器?還是開發一個appdev vapp?性能特點能否預測?以及模闆标準化的期望值?這些都很重要。
剛開始,人們總會建立一個提供給終端使用者服務的目錄,類似之前提到的。然後根據使用者對cpu、記憶體、網絡和存儲的需求,建立分目錄,滿足使用者最可能的需求特點。必要時,一些工作量還會分裂成小、中、大或定制的子集,例如:
小:1個 vcpu,2gb的ram
中:2個vcpu,4gb的ram
大:4個vcpu,8gb的ram
定制:最大為64 個vcpu,1tb的ram
衡量應用程式和工作負載的規則不是一成不變的,但是應該經過你的設計考慮而決定。使用vmware capacity planner、microsoft assessment and planning toolkit、 vmware vcenter operations manager等工具,以及一些本機工具如vcenter performance tab and perfmon,可以使你不再迷茫和困難。
記住,如果你低估了虛拟機和應用程式的大小—不管是因為不确定工作負載,還是因為系統使用者數量增多而需要更多的資源—隻要關閉系統并增加額外資源就可以更正。我們拜訪過一個向我們訴苦的app所有者。我說:“我注意到你的應用程式表現不佳,可以通過使用額外的記憶體或者vcpu來解決。我可以關閉你的伺服器給你提供更多的資源嗎?”如果無法立刻更改,他們通常會抓住機會建立一個硬性的停機視窗,進而進行改變。
通過這樣通路應用程式所有者并改造配置設定的vcpu,他們就再也不用關閉系統,也不會再來電求助。是以,你可能想要為所有虛拟機都熱添加資源。但是,不是所有作業系統都支援cpu和記憶體的熱備份,還需要考慮許多注意事項,在第4章和第5章會相應講到。