Linux 虚拟化Xen初体验


Xen的虚拟化分为半虚拟化以及全虚拟化技术,其中半虚拟化主要是通过修改 Linux 核心来完成的虚拟化技术。Xen 的半虚拟化技术主要是用在相同发行版本的 Linux 上,如果你想要使用半虚拟化的方式启动多个虚拟机器,那么虚拟机器全部都必须是相同的操作系统,甚至要求相同版本与相同核心的 Linux 发行版本。如果你想要安装不同版本的 Linux 或者是其他的 OS ( Windows XP) 时,那就得要使用全虚拟化技术了。

全虚拟化技术必须满足以下条件:

  1. 硬件支持 Intel 的 VT 技术 (Virtualization Technology, Intel-VT);  
  2. 硬件支持 AMD 的 SVM 技术 (Secure Virtual Machine, AMD-SVM or, AMD-V)。  

下面来切实体验一下xen

 一、确定你的cpu是否支持虚拟化技术

  1. # cat /proc/cpuinfo |grep flags |egrep -o 'pae|vmx|svm' 
  2. pae 
  3. svm 
  4. pae 
  5. svm 

显示了PAE以及SVM,说明我的CPU支持全虚拟化技术。

二、安装Xen

1.安装Xen的基本程序

  1. # yum install -y xen* 

2.安装Xen的内核

  1. # yum install -y kernel-xen* 

3.安装Xen的虚拟管理程序

  1. # yum install -y virt-manager 

以上安装完毕,就来配置Xen的环境了

三、配置Xen环境

修改grub.conf文件,以Xen的内核来启动系统

  1. # grub.conf generated by anaconda 
  2. # Note that you do not have to rerun grub after making changes to this file 
  3. # NOTICE:  You do not have a /boot partition.  This means that 
  4. #          all kernel and initrd paths are relative to /, eg. 
  5. #          root (hd0,0) 
  6. #          kernel /boot/vmlinuz-version ro root=/dev/sda1 
  7. #          initrd /boot/initrd-version.img 
  8. #boot=/dev/sda 
  9. default=0 
  10. timeout=5 
  11. splashimage=(hd0,0)/boot/grub/splash.xpm.gz 
  12. hiddenmenu 
  13. title CentOS (2.6.18-238.12.1.el5xen) 
  14.         root (hd0,0) 
  15.         kernel /boot/xen.gz-2.6.18-238.12.1.el5 
  16.         module /boot/vmlinuz-2.6.18-238.12.1.el5xen ro root=LABEL=/ 
  17.         module /boot/initrd-2.6.18-238.12.1.el5xen.img 
  18. title CentOS (2.6.18-238.el5) 
  19.         root (hd0,0) 
  20.         kernel /boot/vmlinuz-2.6.18-238.el5 ro root=LABEL=/ 
  21.         initrd /boot/initrd-2.6.18-238.el5.img 

修改完毕,重启系统,shell界面就可以看到

  1. # uname -a 
  2. Linux Xen 2.6.18-238.12.1.el5xen #1 SMP Tue May 31 14:02:29 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux 

再看一下

  1. # xm list 
  2. Name                                      ID Mem(MiB) VCPUs State   Time(s) 
  3. Domain-0                                   0     1228     2 r-----    444.8

Xen的log所在地

  1. # ll /var/log/xen/ 
  2. total 44 
  3. drwx------ 2 root root  4096 May 10 05:30 console 
  4. -rw-r--r-- 1 root root  9653 Jun 10 15:07 domain-builder-ng.log 
  5. -rw-r--r-- 1 root root    36 Jun 10 14:53 xend-debug.log 
  6. -rw-r--r-- 1 root root 17855 Jun 10 15:07 xend.log 
  7. -rw-r--r-- 1 root root    36 Jun 10 15:07 xen-hotplug.log 
  • 1
  • 2
  • 3
  • 4
  • 下一页

相关内容