服務器虛擬化技術使得創建虛擬機變得如此簡單,以至于很多組織發現自己很難跟上虛擬機蔓延的趨勢。手動管理虛擬服務器的問題在于隨著虛擬服務器數量的逐漸增長,最終手動管理方式會變得不切實際。幸運的是,虛擬服務器環境可以采用多種方式解決這個問題,而自動化就是其中一種。
虛擬機所在宿主服務器
關于自動化,你需要首先關注的事情就是虛擬機所在的宿主服務器。你的hypervisor需要足夠智能,使得虛擬服務器可以運行在大多數合適的宿主服務器上。
System Center 2012 R2 Virtual Machine Manager嘗試從一開始就規定虛擬機所在的宿主服務器。當管理員創建新的虛擬機時,虛擬機創建向導將會詢問用戶將虛擬機存放在哪臺宿主服務器上。向導會根據虛擬機運行的適宜程度,對每臺宿主服務器按照星級進行評定。如圖A所示:
圖A. Virtual Machine Manager嘗試引導管理員選擇最為合適的宿主服務器
星級評定基于虛擬機的硬件需求。如上面的例子所示,界面中存在“Expected Utilization(預期利用率)”按鈕,通過更改其中的參數,可以讓Virtual Machine Manager更好地了解你對于新虛擬機的負載預期,這樣Virtual Machine Manager就可以更好地判斷哪臺宿主服務器更加適合運行這臺虛擬機。
盡管虛擬機的初始位置非常重要,但是虛擬服務器并非是靜態的。而虛擬機為了應對不斷變化的需求,其資源消耗可能隨著時間而改變。此外,虛擬機在其生命周期內,很有可能被數次遷移。正是這些因素推動著自動化不斷發展。
最初選擇在最合適的宿主服務器上創建虛擬機是非常重要的,但是隨著需求不斷發生變化,確保虛擬機能夠運行在最合適的宿主服務器上甚至更加重要。這時候就需要使用動態優化技術了。
動態優化是一種Virtual Machine Manager特性,可以允許虛擬機根據宿主服務器的可用資源變化來動態實時遷移虛擬機。動態優化是一種宿主機集群技術,但是被配置在宿主機群組層面,而不是通過Failover Clustering Manager進行配置。
動態優化特性,如圖8所示,通過周期性檢測系統資源的使用情況來實現特定功能(默認10分鐘一次)。這種特性會將每臺主機上的可用資源(比如CPU、磁盤I/O以及內存等)和一組預定義的閥值進行比較。如果運行在一臺宿主服務器上的所有虛擬機當前消耗的總資源已經超過了之前定義的閥值,那么一臺或多臺虛擬機將會被實時遷移到其他宿主服務器上。你可以將這種特定理解為故障轉移集群內的虛擬機負載均衡功能。
圖B. 動態優化特性可以實現虛擬宿主服務器間的負載均衡
負載整合
動態優化技術幫助將虛擬機合理分配到集群當中的所有宿主服務器上,而功率優化特性所完成的事情卻恰好相反。在工作量較低的時段(比如深夜),功率優化特性會將所有虛擬服務器都整合到幾臺宿主機上,這樣就可以關閉其他宿主服務器以節省用電。
關于這種特性,還有一些其他重要事情必須理解。首先,必須首先啟用動態優化特性。其次,由于動態優化工作在集群級別,因此集群必須擁有足夠數量的宿主機以保證即便關閉一些結點之后,集群仍然能夠正常工作。最后,使用功率優化需要物理硬件擁有主板管理控制器,以實現帶外管理。你可以從微軟的TechNet在線資源當中獲取關于動態優化和功率優化的更多介紹。
創建虛擬機
對于創建虛擬機來說,宿主機位置并不是唯一的考慮因素。確保虛擬機在創建過程中完全符合企業的安全策略也是十分重要的。如果用戶使用自助服務界面來創建自己的虛擬機,那么更加值得注意。對于這些情況來說,可以通過使用虛擬機模板來實現虛擬機創建流程自動化。
自動備份
你應該考慮的另外一個自動化流程是虛擬機備份。盡管這并非是一種“虛擬機自動化”技術,但是備份操作仍然應該能夠應對虛擬機創建和遷移這些變化。新創建的虛擬機應該能夠進行自動備份,而不需要管理員手動將其加入到備份列表當中。現有的虛擬機應該繼續進行備份,即便是它們已經被遷移到其他宿主服務器上。
如你所見,你的基礎架構在許多方面都可以從自動化當中受益。盡管這篇文章以Hyper-V為例,但是VMware也提供了類似的自動化功能。