一、原理講解
虛擬化的概念:將服務器物理資源抽象成邏輯資源,讓一臺服務器變成幾臺甚至上百臺相互隔離的虛擬服務器,我們不再受限于物理上的界限,而是讓CPU、內存、磁盤、I/O等硬件變成可以動態管理的“資源池”,從而提高資源的利用率,簡化系統管理,實現服務器整合,讓IT對業務的變化更具適應力--------這就是服務器的虛擬化。
XEN是目前Linux上的最佳的虛擬化解決方案,特別適合于服務器應用,如用于將多個服務器合并到一臺物理服務器上,以節省運營成本(機房空間、電力消耗);或者是出于安全角度的考慮,需要將不同的應用進行分區,以便降低安全風險等。
1、名詞:
完全虛擬化(Full Virtualization):full virtualized
半虛擬化(Para Virtualization):paravirtualized
2、XEN的運行環境:Domain-0與Domain-U
Domain-0即虛擬母機或稱為宿主機,與Linux主機為同一系統,以XEN的Linux內核啟動的主機,負責管理和控制客戶機。
Domain-U即虛擬客戶機或稱VPS,在Domain-0上可以建立多個虛擬客戶機。
Domain-0與Domain-U的區別就是Domain-0是虛擬機,Domain-U是虛擬機上的操作系統。用過Windows上VMWare的可以把Domain-0理解為VMWare軟件,Domain-U則是運行在VMWare上的操作系統。
3、XEN的運行方式:
XEN分成多個層級 (layer) 執行。它將Linux的核心修改后,再使用修改過的核心開機,而開機后先載入XEN的監控器 (Hypervisor) , 并且啟動第一個操作系統,稱為domain-0。在Xen上面所謂的一個domain就是指一個虛擬機。
Domain-0之所以要先被載入是因為Domain-0含有其他虛擬機啟動所必須的控制指令,并且domain-0也是控制虛擬裝置的重要主控系 統。在domain-0上最重要的就是一個xend的常住進程,其他的domain都是由這個xend來管理的。至于命名方面,除了domain-0之外 的其他虛擬機就依序被稱為domain-1, domain-2等等, 我們統稱為domain-U。
Domain-0是很重要的,因為它直接控制Xen的監控器(Hypervisor),而且掌握了真實的Linux驅動程序 (drivers)。而其他的虛擬機(domain-U)則是透過Xen監控器來與真實的硬件以及domain-0進行交互。為了讓domain-0能夠 與Xen結合,我們必須要修改domain-0的核心才能順利運行。并且需要使用domain-0的核心來開機才可以。domain-0是所有虛擬機的基 礎,所以它可以盡量簡潔,其他的個別服務則可以放置到不POP時尚資訊網同的domain中。xend可以管理domain-0與其他domain之間的啟動與交互,提供一個終端控制 (console) 界面來讓 domain-0 登入其他的 domain。
二、必要條件
1、硬件說明:
請在服務器BIOS設置中打開關于CPU的虛擬技術;由于品牌、型號不一樣請仔細查找。
2、系統查看CPU不否支持虛擬化
查看CPU對虛擬化的支持程度:
Intel和AMD的半虛擬化支持標識 - PAE
# cat /proc/cpuinfo | grep flags flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss nx constant_tsc pni ssse3
INTEL全虛擬化支持標識 - VMX
# cat /proc/cpuinfo | grep flags flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc up pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm
新聞熱點
疑難解答