Xen基礎學習

 完整的Xen虛擬環境如下圖:

圖片來自Xen官方網站:http://www.xen.org/products/cloudxen.html
可以看到,整個Xen虛擬環境邏輯上分成四個部分:
Control Interface;
Domain 0;
Domai U;
Xen Hypervisor;
 
關於Control Interfaces:
包括XE Command Line Tool,用於控制Xen虛擬機和資源池。更多的,我們使用一些第三方的管理工具。官方列出的第三方工具:http://wiki.xen.org/wiki/XenManagementTools。
關於Domain 0(Dom 0):
它需要在其它 Domain U之前啓動。用於和系統上運行的其他虛擬機進行交互,和物理I/O資源直接通信。Domain 0內部又包含一些XAPI、XAPI Lib、Ctrl IF等組件。
關於XEN Hypervisor:
它是介於操作系統和硬件之間的一個軟件描述層。它負責在各個虛擬機之間進行 CPU 調度和內存分配,抽象出虛擬機的硬件,但不處理網絡、磁盤等I/O請求。
我們一般所說的Xen,指的就是Hypervisor(管理程序或虛擬層)。可以參考官方wiki中關於Xen 4.0的描述。
官方wiki:http://wiki.xen.org/wiki/Xen_4.0_Release_Notes。
關於Guest Operating Systems:
圖片右邊的Linux和Windows稱爲Domain U,Doamin U分爲PV Guest和HVM Guest。Linux就是Domain U PV Guest,Windows稱爲Domain U HVM Guest。
 
Xen_4.0_Release_Notes提到的相關知識(如無特別指明,下文提到的Xen一般指的是Xen Hypervisor。):
Xen對硬件的要求:
Xen主要是針對X86架構開發的,但目前的4.0版本也支持Intel IA-64。
Xen Doamin U PV Guest與硬件無關,但是HVM Guest(Windows)要求物理CPU支持虛擬化擴展(Intel VT或AMD-V)。另一方面,Xen對64位CPU的支持比32位CPU要好。
 Xen 4.0對硬件的所有要求同樣適用於Xen 4.1,同時Xen 4.1有其額外的一些要求。
 
查看CPU是否支持虛擬化:
  1. cat /proc/cpuinfo |egrep -o '(pae|vmx|svm)' 
如果看到輸出中有 pae,那麼cpu就支持半虛擬化,如果輸出中同時有pae和vmx/svm(注:vmx爲intel,svm爲amd),那麼cpu支持全虛擬化。
 
關於Intel VT(VT與HT是不同的兩個概念),參考:
http://publish.it168.com/2007/0608/20070608033501.shtml
http://baike.baidu.com/view/2236017.htm
 
對軟件的需求: 
  1. yum groupinstall "Development Libraries" "Development Tools" 
  2. yum install glibc-devel.i686 
  3. yum install transfig wget texi2html libaio-devel dev86 glibc-devel e2fsprogs-devel gitk mkinitrd iasl xz-devel bzip2-devel pciutils-libs pciutils-devel SDL-devel libX11-devel gtk2-devel bridge-utils PyXML qemu-common qemu-img mercurial libidn-devel 
整個Xen基礎環境的安裝分爲兩個部分:Xen Hypervisor和Domain 0
關於Domain 0:
官方建議,如果有可能,強力推薦使用Debian、Fedora等Linux發行版,這些發行版都提供了一個Xen Domain 0,具有易於安裝,與操作系統契合度高,安全的升級等優點。
各個Linux發行版中,官方首推RHEL5 / CentOS5。參考:http://wiki.xen.org/wiki/XenDom0Kernels。
 
Domain 0的安裝:前面說過,Domain 0是一個修改過的Linux內核,所以它安裝一般的Linux內核是一樣的。安裝過程可以參考官方文檔:
http://wiki.xen.org/wiki/Compiling_Kernel_2.6.32
http://wiki.xen.org/wiki/RHEL6Xen4Tutorial
中文文檔可以參考:
http://blog.csdn.net/philips123/article/details/6434747
想要省事,直接在Linux發行版中使用命令yum / apt-get kernel-xen!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章