網路城邦
上一篇 回創作列表 下一篇   字體:
主機虛擬化技術-Xen
2013/12/08 10:25:25瀏覽512|回應0|推薦0

主機虛擬化技術-Xen

「Xen」為實現主機虛擬化技術的公開程式碼(Open Source), 能夠讓1台主機分割成複數台(Linux、Windows等不同的OS)主機使用。「Xen」開始是由英國的劍橋大學的電腦研究所,成立 「XenoServer project」針對廣域分散主機進行開發研究下,所誕生出來。目前受GNU General Public License(GNU GPL)的保護,公開出原始碼(Source Code)、各種程式以及相關技術,持續著進行開發。另一方面,在2005年Xen的研究團隊,成立XenSource公司提供以Xen為Base的企業 版解決方案(Enterprise Solution)。2007年被美國Citrix Systems公司所併購。想要取得「Xen」,可以從公式網站下載 (http://www.xensource.com)。目前最新的企業版為「Citrix XenServer 5」的版本。

主機虛擬化發展的背景

「Xen」原本為了有效並且安全的使用高價的主機的資源,所發展出的VMM(Virtual Machine Monitor)軟體。後來隨著主機CPU的性能提升、Memory的價格的下降等原因,造成主機的資源利用率跟著下降,加上低廉的PC主機抬頭,企業擁 有的主機數量增加,造成營運成本的提高,將1台主機虛擬化分割成複數台(Linux、Windows等不同的OS)主機的需求性日漸增加。

一般PC主機的CPU的使用率約在15~20%左右,將主機寄放在DC(Data Center)的空間使用、電力、維護等費用又相當高,因此主機虛擬化有助於降低企業的成本。即使主機虛擬化即使尚存在一些課題,「導入主機虛擬化伴隨出的成本如果計算下去,整體的成本未必減少」的諸論說出現,並沒有減少系統廠商對主機虛擬化支援的趨勢,反而有增加的趨勢。

就「Xen」而言,相繼被美國Novell所提供的SUSE Linux Enterprise Server(SLES)、美國Red Hat所提供的Red Hat Enterprise Linux(RHEL)等商用Linux版本所採用。美國的甲骨文(Oracle)以Oracle VM的產品,Sun Microsystems以xVM Server的產品推出。「Xen」在主機虛擬化軟體中,變成最受系統廠商的支持。


Xen的架構

Xen為採用「Hyperhypervisor型」以及「VMM(Virtual Machine Monitor)型」的架構。上述提及到MMV的功用在於有效率又安全的控制主機的CPU、Memory等資源。那「Hyperhypervisor型」 又是甚麼?一般主機虛擬化軟體分為「Host OS型」和「Hyperhypervisor型」兩種,「Host OS型」的虛擬化層安裝在Winows、Linux等OS的上面,虛擬化層的上面再安裝其他的OS,虛擬化層下面的OS稱為「Host OS」,上面的OS稱為「Guest OS」。而「Hyperhypervisor型」是直接安裝在主機上面,其他的OS安裝在它的上面,省掉「Host OS」所需要的資源,性能的表現較佳,CPU、Memory、Network、Storage等的資源管理也較容易。

Xen採用的「Hyperhypervisor型」又分為,「準虛擬化」(Para-Virtualization)和「完全虛擬化」(Full- Virtualization)兩種。「準虛擬化」的「Guest OS」必須要做修正,像開放程式碼的Linux等OS,可以針對Xen做些修正和調整,減輕負擔以及提升效能。「完全虛擬化」的「Guest OS」完全不能做修正,適合像Windows的安裝,不過最近「Intel Virtualization Technology(Intel VT)」和「AMD Virtualization(AMD-V)」有支援虛擬化的功能,使用這種CPU的主機上也可以在「準虛擬化」環境直接安裝Windows。另外也有 Windows在「準虛擬化」環境上執行的驅動程式。

在 Xen管理虛擬主機時,使用「Domain]的單位做管理,「Domain]又分為兩種類型,其中一種為管理用的「Domain0],扮演像「Host OS」的角色,有Xen的控制AP,管理另一類型的「DomainU]。「DomainU]的領域上安裝有「Guest OS」和AP,在使用物理上的資源時,必須透過「Domain0]代為處理,不能直接呼叫硬體的驅動程式。

導入Xen的注意點

主機為何需要虛擬化?首先導入虛擬化的目的必須很明確。虛擬化有哪些風險存在?有何優缺點?也必須去瞭解和分析。上述有提到「Xen」為公開程式碼(Open Source),可以自由下載使用下載。不過它和其他的公開程式碼(Open Source)一樣,無論是安裝或解決問題都要自己來,甚至自己要修改程式碼。建議先從開發環境或者測試環境開始。

過去在建置開發環境或者測試環境時,每遇到環境不同就必需打掉重建新環境,有時也要利用舊的正式主機或新增主機來對應。有了Xen這種主機虛擬化的 軟體,企業不僅可以省下不少成本,技術人員既可以省掉不少重複建置的時間,亦可以累積相關的技術和經驗。等到駕輕就熟後,才來考慮建置正式環境較為適宜。

如果企業經費足夠,建議採用商用企業版,並且請顧問公司或系統廠商協助導入和維護。不僅可以減少風險,也可以從中學習到導入時的「最適化」的設計,以及導入後很重要的「調整」等Knowhow。不過要注意支援的範圍和整體費用的評估。當然除了「Xen」之外,還有像「VMware」、「Windows Server Virtualization」等主機虛擬化的解決方案,也一起評估最為適宜。

引用至:http://www.chou-it.com/info/trd/vm/xen01.html
( 知識學習其他 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=allya&aid=9158248