安装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
3. 配置Xen
3.1 修改系统GRUB配置
修改 /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
3.2 配置网络
修改 /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"
3.3 启用Xen服务
执行以下命令,启用Xen服务:
systemctl enable xendomains.service
systemctl start xendomains.service
4. 使用Xen创建虚拟机
4.1 创建虚拟磁盘
执行以下命令,创建一个10GB的虚拟磁盘:
dd if=/dev/zero of=/var/lib/xen/images/vm1.img bs=1M count=10240
4.2 创建虚拟机配置文件
创建虚拟机配置文件 /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
示例1: 创建VM(虚拟机)
以创建一个名为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
示例2:在虚拟机中挂载磁盘
在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
目录下。