使用该方法安装的是CentOS 5.4 默认自带的 Xen,安装时最好将内核切换到 5.4 默认的内核,我之前试过一次在另外的内核上操作此过程,安装正常,但是启动后出现了一系列的问题。
使用 yum 安装软件的优点是 yum 自动处理了软件包之间的依赖关系,不用手动一个一个安装相关包。
使用 yum 能够很方便的安装 CentOS 5.4 默认的 Xen;
(1) 制作本地yum源:
制作本地源的目的是使安装相对快一些。
将 CentOS 5.4 的DVD盘或者ISO镜像中的东西复制出来(可以 mount 出来),挂载ISO镜像的命令是 mount -o loop *.iso /*** ;
将目录放到 apache http 服务器的目录下或者在 http 服务器下创建到镜像目录的软链接,例如 在 apache http web 主目录 /opt/apache-httpd-2.2.14/htdocs 下创建一个指向存储了 CentOS5.4镜像的目录;
最后 http://10.10.97.6/mirror/centos/ 下是 CentOS 5.4 光盘中的东西;
安装 apache http 服务器见 Linux下Apache http 服务器安装配置
或者直接使用官方镜像 http://vault.centos.org/5.4/os/x86_64/
(2) 修改 yum 配置文件:
[root@gmnode14 ~]# vim /etc/yum.repos.d/CentOS-Base.repo
--------------------------------------------------------------
[base]
name=CentOS-$releasever - Base
baseurl=http://10.10.97.6/mirror/centos/
# 或者官方镜像 http://vault.centos.org/5.4/os/x86_64/
#或者使用本地目录 baseurl=file:///opt/mirror/centos/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#或者
#gpgkey=http://10.10.97.6/mirror/centos/RPM-GPG-KEY-CentOS-5
#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://10.10.97.6/mirror/centos/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
baseurl=http://10.10.97.6/mirror/centos/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://10.10.97.6/mirror/centos/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://10.10.97.6/mirror/centos/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
baseurl=http://10.10.97.6/mirror/centos/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
---------------------------------------------------------------
yum 设置完毕,可以安装xen了。
使用yum安装过程中,若出现相关错误,可以参考:yum使用过程中的常见错误
(3) 安装 Xen 工具包
[root@gmnode14 ~]# yum -y install xen* -y 表示所有选择 yes
......
Installed:
xen.x86_64 0:3.0.3-94.el5 xen-devel.i386 0:3.0.3-94.el5 xen-devel.x86_64 0:3.0.3-94.el5 xen-libs.i386 0:3.0.3-94.el5 xen-libs.x86_64 0:3.0.3-94.el5
Dependency Installed:
bridge-utils.x86_64 0:1.1-2 celt051.x86_64 0:0.5.1.3-0.el5 iscsi-initiator-utils.x86_64 0:6.2.0.871-0.10.el5 kernel-xen.x86_64 0:2.6.18-164.el5
kvm-qemu-img.x86_64 0:83-105.el5 libvirt.x86_64 0:0.6.3-20.el5 libvirt-python.x86_64 0:0.6.3-20.el5 log4cpp.x86_64 0:1.0-4.el5
python-virtinst.noarch 0:0.400.3-5.el5 qcairo.x86_64 0:1.8.7.1-3.el5 qffmpeg-libs.x86_64 0:0.4.9-0.15.20080908.el5 qpixman.x86_64 0:0.13.3-4.el5
qspice-libs.x86_64 0:0.3.0-39.el5
Complete!
(4) 安装虚拟机管理软件virt-manager
[root@gmnode14 ~]# yum -y install virt-manager
.......
Installed:
virt-manager.x86_64 0:0.6.1-8.el5
Dependency Installed:
gnome-python2-gnomekeyring.x86_64 0:2.16.0-3.el5 gtk-vnc.x86_64 0:0.3.8-3.el5 gtk-vnc-python.x86_64 0:0.3.8-3.el5
Complete!
(5) 安装虚拟机查看软件 virt-viewer
[root@gmnode14 ~]# yum -y install virt-viewer
(6) 安装 Xen 内核(即给当前内核打补丁)
[root@gmnode14 ~]# yum -y install kernel-xen*
......
Installed:
kernel-xen-devel.x86_64 0:2.6.18-164.el5
安装补丁完毕,检查 /boot 下的文件查看是否安装成功
[root@gmnode14 ~]# ll /boot/ | grep xen
-rw-r--r-- 1 root root 65547 2009-09-03 config-2.6.18-164.el5xen
-rw------- 1 root root 2741808 04-20 18:47 initrd-2.6.18-164.el5xen.img 刚生成的
-rw-r--r-- 1 root root 108127 2009-09-03 symvers-2.6.18-164.el5xen.gz
-rw-r--r-- 1 root root 1194532 2009-09-03 System.map-2.6.18-164.el5xen
-rw-r--r-- 1 root root 2029734 2009-09-03 vmlinuz-2.6.18-164.el5xen
-rw-r--r-- 1 root root 409051 2009-09-03 xen.gz-2.6.18-164.el5
-rwxr-xr-x 1 root root 961616 2009-09-03 xen-syms-2.6.18-164.el5
修改 /etc/grub.conf 文件选择新内核
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
# this kernel is built by yuanlin
title CentOS (2.6.18-164.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-164.el5
module /vmlinuz-2.6.18-164.el5xen ro root=LABEL=/ rhgb quiet
module /initrd-2.6.18-164.el5xen.img
title CentOS (2.6.34.7)
root (hd0,0)
kernel /vmlinuz-2.6.34.7 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.34.7.img
(7) 重新启动系统
进入系统,使用 Xen
[root@gmnode14 ~]# uname -r 查看系统内核,就是刚才我们选择的内核
2.6.18-164.el5xen
[root@glnode04 yum.repos.d]# rpm -q virt-manager
virt-manager-0.5.3-8.el5
[root@glnode04 yum.repos.d]# rpm -q xen
xen-3.0.3-64.el5
[root@glnode04 yum.repos.d]# rpm -q xen-libs
xen-libs-3.0.3-64.el5
[root@glnode04 yum.repos.d]# rpm -q kernel-xen
kernel-xen-2.6.18-92.el5
[root@glnode04 yum.repos.d]# rpm -q python-virtinst
python-virtinst-0.300.2-8.el5
[root@glnode04 yum.repos.d]# rpm -q python
python-2.4.3-21.el5
[root@gmnode14 ~]# xend
usage: /usr/sbin/xend {start|stop|restart}
[root@gmnode14 ~]# xend stop
[root@gmnode14 ~]# xend start
[root@gmnode14 ~]# xend status
[root@gmnode14 ~]# cat /var/log/xen/xend-debug.log (查看日志状况)
[root@gmnode14 ~]# xm list 查看虚拟机节点
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 7625 8 r----- 30.5
OK,我们看到了 Domain-0 ,其状态是运行状态,内存是 7625M, CPU数量是8,处于运行状态;
Domain-0 其实也是一个 Xen 虚拟机,它在我们启动系统时启动的,用于管理其它虚拟机;