安装Xen虚拟机1. 确认CPU支持虚拟化 首先需要确认CPU是否支持虚拟化扩展,可以通过 /proc/cpuinfo 文件查看。执行以下命令: cat /proc/cpuinfo | grep -E svm|vmx 如果显示类似以下内容,则表示CP
          首先需要确认CPU是否支持虚拟化扩展,可以通过 /proc/cpuinfo 文件查看。执行以下命令:
cat /proc/cpuinfo | grep -E "svm|vmx"
如果显示类似以下内容,则表示CPU支持虚拟化扩展:
flags : ... svm ...
或
flags : ... vmx ...
如果不显示,可以在BIOS中启用虚拟化扩展(一些厂商默认关闭),或者使用不支持虚拟化扩展的软件虚拟化。
2. 安装Xen在CentOS系统中安装Xen,可以使用yum命令进行安装。执行以下命令:
yum install -y xen
修改 /boot/grub/grub.conf 文件,添加如下内容:
title Xen 4.9.0 / XenLinux 4.9.0
    root (hd0,0)
    kernel /xen.gz dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all
    module /vmlinuz-4.9.0-xen root=/dev/sda1 ro console=hvc0
    module /initramfs-4.9.0-xen.img
修改 /etc/sysconfig/network-scripts/ifcfg-eth0 文件,添加如下内容:
DEVICE="eth0"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Ethernet"
BRIDGE="xenbr0"
并创建新文件 /etc/sysconfig/network-scripts/ifcfg-xenbr0,添加如下内容:
DEVICE="xenbr0"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Bridge"
DELAY="0"
执行以下命令,启用Xen服务:
systemctl enable xendomains.service
systemctl start xendomains.service
执行以下命令,创建一个10GB的虚拟磁盘:
dd if=/dev/zero of=/var/lib/xen/images/vm1.img bs=1M count=10240
创建虚拟机配置文件 /etc/xen/vm1.cfg,添加如下内容:
name = "vm1"
memory = "512"
disk = ['file:/var/lib/xen/images/vm1.img,xvda,w']
vif = ['bridge=xenbr0']
vcpus = 1
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'
其中,name为虚拟机名称,memory为分配给虚拟机的内存大小,disk表示虚拟磁盘配置,vif表示网络配置,vcpus表示分配给虚拟机的CPU个数。
执行以下命令,启动虚拟机:
xm create -c /etc/xen/vm1.cfg
以创建一个名为VM的虚拟机为例说明:
- 在CentOS系统中安装Xen,在终端中执行以下命令:
yum install -y xen
- 修改系统GRUB配置文件,添加如下内容:
title Xen 4.9.0 / XenLinux 4.9.0
    root (hd0,0)
    kernel /xen.gz dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all
    module /vmlinuz-4.9.0-xen root=/dev/sda1 ro console=hvc0
    module /initramfs-4.9.0-xen.img
- 配置网络,修改 /etc/sysconfig/network-scripts/ifcfg-eth0文件,添加如下内容:
DEVICE="eth0"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Ethernet"
BRIDGE="xenbr0"
并创建新文件 /etc/sysconfig/network-scripts/ifcfg-xenbr0,添加如下内容:
DEVICE="xenbr0"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Bridge"
DELAY="0"
- 启用Xen服务,在终端中执行以下命令:
systemctl enable xendomains.service
systemctl start xendomains.service
- 创建一个名为VM的虚拟机,在终端中执行以下命令:
dd if=/dev/zero of=/var/lib/xen/images/vm.img bs=1M count=10240
此时创建一个名为vm.img大小为10GB,为VM虚拟机使用。
- 在终端中创建虚拟机配置文件 /etc/xen/vm.cfg, 添加如下内容:
name = "VM"
memory = "512"
disk = ['file:/var/lib/xen/images/vm.img,xvda,w']
vif = ['bridge=xenbr0']
vcpus = 1
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'
- 启动名为VM的虚拟机
xm create -c /etc/xen/vm.cfg
在VM中挂载一个新的磁盘,以/dev/sdb为例:
- 在虚拟机VM的配置文件/etc/xen/vm.cfg中添加以下内容:
disk = ['file:/var/lib/xen/images/vm.img,xvda,w', 'file:/var/lib/xen/images/newdisk.img,xvdb,w']
其中,newdisk.img为要挂载的新磁盘。
- 在虚拟机VM中执行以下命令:
fdisk /dev/xvdb
按顺序执行以下操作:
- 输入n,创建一个新分区;
- 选择默认的分区编号1;
- 设置默认的起始扇区编号;
- 设置默认的结束扇区编号;
- 
输入 w,保存分区信息并退出fdisk。
- 
格式化新磁盘,执行以下命令: 
mkfs.ext4 /dev/xvdb1
- 挂载新磁盘,执行以下命令:
mkdir /mnt/newdisk
mount /dev/xvdb1 /mnt/newdisk
现在,新磁盘就挂载到了虚拟机VM中的/mnt/newdisk目录下。
