Xen虛擬機器在CentOS系統中的安裝和使用方法_Xen

來源:互聯網
上載者:User

一、原理講解

    虛擬化的概念:將伺服器實體資源抽象成邏輯資源,讓一台伺服器變成幾台甚至上百台相互隔離的虛擬伺服器,我們不再受限於物理上的界限,而是讓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

AMD全虛擬化支援標識 - SVM

  # cat /proc/cpuinfo | grep flags  flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8legacy 3dnowprefetch ts fid vid ttp tm stc 100mhzsteps

 三、初始Xen

    1、配置本地光碟片yum

     CentOS系統只把光碟片掛載便可以使用本地源。

    2、安裝Xen

  #yum install xen kernel-xen xen-lib virt-manager python-virtinst –y

    3、作用理解

        kernel-xen:可以跑 Xen 的 Linux 核心

        xen:主要的 xen 套件,包括設定檔、啟動指令碼和一些函數庫

        xen-libs:Xen 所需要的函數庫

        python-virtinst:提供終端安裝的軟體

        virt-manager:用於圖形介面管理xen

        查看/etc/grub.conf

        選擇帶有xen的核心,並改為使用的核心 

        #init 6

        重啟之後,查看核心

        #uname –r

        2.6.18-274.12.1.e15xen

        #xm list

        Domain-0 

四、安裝Xen(圖形化)

1、開啟“應用程式” CentOS <wbr>Xen <wbr>安裝及使用

2、開啟“系統工具”,選擇“虛擬系統

3、選擇“localhost”,滑鼠右擊“建立”  

4、點擊“前進” 

5、虛擬機器命名 

6、選擇系統架構,多數由CPU決定

7、選擇引導模式(ISO、PXE)

8、指定位置

9、指定硬碟大小(allocate entire virtual disk now 使用整個硬碟)

10、指定網路

11、指定記憶體大小

12、虛擬機器全部資訊

13、開始“建立”

14、安裝後台

五、常見錯誤描述及解決辦法

   1、通過http或NFS安裝客戶機作業系統出現 Unable to retrieve 錯誤:....

  多數原因是防火牆造成的,如果使用http安裝方式時可以先停止防火牆,也可以採用以下方式解決:
通過iptables  -L命令查詢是否有開啟80連接埠或者netstat tunlp | grep httpd
開放連接埠

  iptables –I INPUT –s 192.168.0.2/24 -p tcp --dport 80 -j ACCEPT  service iptables save

  2、出現類似下面的錯誤:

  POST operation failed: xend_post: error from xen daemon: (xend.err 'Error creating domain: I need 262144 KiB, but dom0_min_mem is 262144 and shrinking to 262144 KiB would leave only 244672 KiB free.')

  說明新增的虛擬機器主機記憶體設定過高,再記憶體調小點即可。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家學習或者使用Xen虛擬機器能有所協助,如果有疑問大家可以留言交流。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.