准备条件

  1. 查看电脑的cpu是否支持虚拟化:输入命令 cat /proc/cpuinfo | grep flags ,查看结果中有没有 pae ,若有则支持半虚拟化,再看有没有 vmx(intel) 或 svm((amd) ,若有,则支持全虚拟化。这个要在 xen 安装之前做,安装后默认就看不到 vms/svm 了。
  2. 确认 BIOS 里虚拟化开关打开。

安装Xen

安装 xen 有两种方法,一种是做安装系统选择 package的时候,选择 virtualization。这样在系统安装完成后, xen也自动安装好了。 另一种是在安装完系统后,输入命令:

yum –y install kernel-xen xen

命令执行完成后, /boot/grub/menu.lst 自动就会有 xen 的启动项了,修改它为默认启动项。安装完成后,使用命令 uname –a 查看内核版本有没有Xen字样。如:输入 xm list 查看有没有 Domain-0。

安装虚拟机

如果需要 VNC 安装,则修改xen配置文件以支持vnc,Xen的配置文件 /etc/xen/xend-config.sxp 默认监听 vnc 的 ip 要改成 0.0.0 .0 ,否则只能在本机连接上去安装系统。(一般服务器是没有 XWindows 的)

如果需要虚拟出 windows系统,那么必须使用全虚拟模式;如果仅仅是需要虚拟 linux 系统可以使用半虚拟模式。本虚拟的运行效率相对全虚拟要快很多。

一、全虚拟

virt-install-v –n vm01 –r 2048 –f /var/lib/xen/images/vm01.img –s 40 –c/var/lib/xen/images/centos55.iso –m AA:BB:CC:DD:EE:FF –vnc
-v 全虚拟 ( 半虚拟用 -p)
-n 要创建的虚拟机名称
-r 内存,单位 MB
-f 指定虚拟机硬盘位置
-s 指定虚拟机硬盘大小,单位 GB
-c 指定安装镜像位置
-m 指定虚拟机 MAC 地址
–vnc 使用 vnc 远程连接安装

注意:-m 后面的mac字符串中字母大写,如果没有关闭 SELinux ,最好把 img 文件和安装镜像 iso 文件都放在 /var/lib/xen/images 文件夹下。在物理机上执行 x m list 查看一下新建的 guest host 机器的 id 。 如果使用 vncviewerl 连接主机 IP:5901 ,这里 ID 是多少,就连接多少。完全虚拟化安装要使用 VNC ,半虚拟化可以使用也可以不使用。

二、半虚拟

半虚拟安装可以使用 http 、 ftp 、 nfs 来做为安装源,这里采用 nfs 方式。
配置 nfs
挂载 centos 的镜像
mount –o loop /var/lib/xen/images/centos57.iso /mnt
编辑 /etc/exports
/mnt * (ro)
启动 nfs
service nfs start

执行命令:

virt-install -p –n vm01 –r2048 –f /var/lib/xen/images/vm01.img –s 40 –l nfs:10.247.0.220:/mnt –mAA:BB:CC:DD:EE:FF –vnc

这里跟全虚拟不同的是 -v 变成了 -p ,然后 -c 变成了 -l ,接下来使用 vnc 安装跟全虚拟的步骤一样,如果直接在物理机上安装,则执行 xm console vm01 命令。
注意 : 在安装过程中,定制 linux 的软件包时,只需要留一个 base ,不要有其他的包,否则会出 bug 。

配置Xen

使用vncviewer远程连接安装完成后,就会在 /etc/xen/ 下生成 vm01 这样跟你指定虚拟机名字一样的配置文件,修改配置文件,可修改 cpu 个数,内存大小, mac 地址等。最重要的,把 vnc = 1 改成 vnc = 0 。这样就不可以远程 VNC 连接了。

克隆虚拟机

克隆前必须关掉被克隆的虚拟机。
virt-clone –n vm02 –o vm01 –f/var/lib/xen/images/vm02.img –m AA:BB:CC:DD:EE:FF
-n 新虚拟机名称
-o 源虚拟机
-f 新虚拟机硬盘文件
-m 新虚拟机 MAC 地址

克隆完成后,可在物理机中使用 xm console name 来进入到这个虚拟机中。修改
Vi /etc/hosts 修改 hostname
Vi /etc/sysconfig/network 修改 hostname
Vi/etc/sysconfig/network-scripts/ifcfg-eth0 修改 ip

Xen基本管理命令

Xm –help 查看帮助
Cd /etc/xen
Xm create vm01 启动 vm01 虚拟机
Xm shutdown vm01 关闭 vm01
Xm destroy vm01 删除 vm01 服务器
Xm reboot vm01 重启 vm01
x m list 查看所有虚拟机

自动启动 vm01
ln -s /etc/xen/vm01/etc/xen/auto/
添加软链接
这样就行了。虚拟机的配置文件:
On_poweroff = “restart”
这个要注意,否则虚拟机关机后,只能到母机上去 xm create vm01 这样开机了。

还有 nfs 的安装配置。这个要在半虚拟化时候要用。

/usr/sbin/virt-install–paravirt –name=node1 –file-size=5 –ram=1024 –vcpus=2–file=/xen/node1 –location=nfs:123.125.162.7:/mnt –extra-args=”ip=123.125.162.45netmask=255.255.255.192 gateway=123.125.162.1 dns=202.106.0.20″ –networkbridge=xenbr0 noipv6(作者:李辉)