CentOS 安装Xen虚拟机教程

海外服务器 (715) 2015-11-16 09:32:25

1.安装Xen前的准备工作

首先我这里介绍下安装Xen机器的配置:

CPU

速龙 64X2 5000+

内存

威刚 DDR2 800 2GB

主板

昂达 N61P

硬盘

希捷 IDE 40G

系统

CentOS 5.6x86_64

 

 

速龙CPU是基于64位架构的,性价比非常高,是一款我非常喜欢的CPU;硬盘我这里用的是以前淘汰下来的一块老IDE硬盘,大小只有40G;由于盘上已有WindowsXP SP3的系统,所以我这里特的划分了18G Free空间准备安装CentOS 5.6 x86_64。

在安装Xen之前我们先检查一下CPU是否支持Xen虚拟化,命令如下:

egrep '(vmx|svm)' /proc/cpuinfo

如果什么结果都不显示,则表示CPU是不支持Xen虚拟化的,结果显示如下:

flags: fpu tsc msr pae cx8 apic mtrr cmov pat clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm cr8_legacy misalignsse

flags: fpu tsc msr pae cx8 apic mtrr cmov pat clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm cr8_legacy misaligns

2.Xen的安装过程

我们可以用以下命令来安装Xen软件:

yum -y install kernel-xen xen

顺利安装完CentOS 5.6后,我们要修改下/etc/grub.conf文件,让其采用新的内核。

/etc/grub.conf文件内容如下:

# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE:  You have a /boot partition.  This means that

#          all kernel and initrd paths are relative to /boot/, eg.

#          root (hd0,6)

#          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00

#          initrd /initrd-version.img

#boot=/dev/hdb

default=0

timeout=5

splashimage=(hd0,6)/grub/splash.xpm.gz

hiddenmenu

title CentOS (2.6.18-238.12.1.el5xen)

root (hd0,6)

kernel /xen.gz-2.6.18-238.12.1.el5

module /vmlinuz-2.6.18-238.12.1.el5xen ro root=/dev/VolGroup00/LogVol00

module /initrd-2.6.18-238.12.1.el5xen.img

title CentOS (2.6.18-238.el5)

root (hd0,6)

kernel /vmlinuz-2.6.18-238.el5 ro root=/dev/VolGroup00/LogVol00

initrd /initrd-2.6.18-238.el5.img

title Other

rootnoverify (hd0,0)

chainloader +

3.安装Xen虚拟机

下面我们准备安装Xen虚拟机。安装前我们做点准备工作,搭好httpd环境,因为等会我们需要httpd服务。

yum -y install httpd && service httpd start

另外,记得建一个目录以供Xen安装虚拟机使用,我这里是vm;我准备安装两个Xen虚拟系统,一个系统为CentOS 5.6 x86_64,另一个为CentOS 5.0 i386,所以我们将其光盘文件分别用cp -a分别拷至/var/www/html/centos56和/var/www/html/centos5下。如果只有iso文件,我们可以直接在CentOS下用mount命令挂载,命令如下: 

mount -t iso9660 -o loop,user download.iso  /isoimage

1)首先我们安装CentOS 5.6 x86_64 Xen虚拟机,安装命令为

virt-install -n vm0 -r 256 -f  /vm/vm01.img -s 4 -nographics -p -l http ://192.168.1.119/centos56

2)安装完vm0的Xen虚拟机后,我们再接阗安装一个名为vm1的Xen虚拟机,命令如下:

virt-install -n vm1 -r 256 -f  /vm/vm02.img -s 4 -nographics -p -l http ://192.168.1.119/centos5

发现i386系统也很顺利就安装成功了,我们可以用 xm list命令来查看一下

Name                                      ID Mem(MiB) VCPUs State   Time(s)

Domain-0                                   0     1193     2 r-----    114.0

vm0                                        3      256     1 -b----      7.6

vm1                                        2      511     1 -b----     18.

3.Xen虚拟机常用的命令为:

xm list    查看当前机器里的全部虚拟机列表

xm create xxxx 启动名字为xxx的虚拟机

xm shutdown xxx

xm reboot xxx

xm pause xxx

xm resuem xxx

需要管理登入的时候:

xm console xxxx

就可以像在本机一样操作虚拟机了,如果要退出到Domain-0,按住Ctrl+] 就行。

第三部分 Xen虚拟机的优势所在

我以前玩虚拟化时有一个误区,就是我一直想用一个虚拟机能够完美的虚拟我需要的所有系统,比如说Windows Server2003、FreeBSD8、还有CentOS和Debian,所以我一直都是研究VMware ESX系列;后来我发现这种思想是错误的,这也是我决定花时间和精力在Xen上面的原因。Xen的优势所在有如下三点:

一、FreeBSD下的jail(ezjail)的性能出乎我的意料之外,它的使用范围很小,只能虚拟出FreeBSD系统,但这点应付工作就足够了;而我以往玩Xen,总觉得Xen虚拟出的Windows系列很慢,其实完全没有必要,为什么要用Linux的Xen去虚拟Windows呢,在工作中我们完全可以用Linux的Xen只虚拟Linux,满足工作即可;

二、现在我用Critrix XenServer用得非常多,XenServer的优秀性能也给我很深的印象。大家都知道,XenServer系列是基于Xen的基础发展而来的;

三、最近一段时间跟我另一个朋友——卧底兄学习他的Xen在生产环境下的应用。Xen利用模板功能,5分钟就能克隆出一台Xen虚拟机出来,而且在大规模的虚拟机集群部署上,Xen也非常的方便,短时间类就能部署200以台上的Xen虚拟机集群。

以上的一些原因也让我对虚拟化有了更深的认识,也坚定了我继续学习Xen虚拟机的决心。

THE END