XEN 是一个基于X86架构、发展最快、性能最稳定、占用资源最少的开源虚拟化技术。Xen可以在一套物理硬件上安全的执行多个虚拟机,与 Linux 是一个完美的开源组合,Novell SUSE Linux Enterprise Server 最先采用了XEN虚拟技术。它特别适用于服务器应用整合,可有效节省运营成本,提高设备利用率,最大化利用数据中心的IT基础架构。
XEN 是英国剑桥大学计算机实验室开发的一个虚拟化开源项目,XEN 可以在一套物理硬件上安全的执行多个虚拟机,它和操作平台结合的极为密切,占用的资源最少。编写文档时稳定版本为XEN3.0。支持万贯虚拟化和超虚拟化。以高性能、占用资源少著称,赢得了IBM、AMD、HP、Red Hat和Novell等众多世界级软硬件厂商的高度认可和大力支持,已被国内外众多企事业用户用来搭建高性能的虚拟化平台。
Xen 是一个开放源代码的para-virtualizing虚拟机(VMM),或“管理程序”,是为x86架构的机器而设计的。Xen 可以在一套物理硬件上安全的执行多个虚拟机;Xen是基于内核的虚拟程序,它和操作平台结合的极为密切,所以它占用的资源最少。
我的测试环境都是在Xen环境中,非常方便。国内外很多vps用到的技术就是Xen,如 Linode
一、检查cpu是否支持虚拟化
cat /proc/cpuinfo | grep flags
flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc nonstop_tsc pni cx16 popcnt lahf_lm cmp_legacy svm extapic cr8legacy abm sse4a misalignsse 3dnowprefetch osvw ibs ts ttp tm stc 100mhzsteps hwpstate
有显示vmx结果,表明支持intel-vt 虚拟化;
有显示svm结果,表明支持amd-vt 虚拟化。
二、预安装Xen和管理工具
yum -y install xen kernel-xen virt-manager virt-viewer httpd
修改启动项
sed -i 's/default=1/default=0/g' /boot/grub/grub.conf
重启服务器
sync; reboot
三、Xen安装
挂载系统光盘,配置好httpd.conf
# 在httpd默认目录下建立centos目录
mkdir /var/www/html/centos
# 临时挂载光盘ISO镜像到httpd下的centos目录
mount /dev/cdrom /var/www/html/centos
# CentOS 6下启动httpd
service httpd start
# CentOS7下启动httpd
systemctl start httpd
尝试访问:http://192.168.1.110/centos/如果OK则可以进行下一步。
制作客户机主要磁盘
# 新建目录/data/xen
mkdir -p /data/xen
# 创建一个空文件linux1.img
dd if=/dev/zero of=/data/xen/linux1.img bs=2k seek=4096k count=10
制作客户机swap交换区
# 创建一个空文件linux1_swap.img作为swap交换区
dd if=/dev/zero of=/data/xen/linux1_swap.img bs=2k seek=512k count=10
控制台界面开始安装Xen
virt-install -n linux1 -r 512 --vcpus=1 --nographic -f /data/xen/linux1.img -l http://192.168.1.110/centos/ "ip=192.168.1.111 netmask=255.255.255.0 gateway=192.168.1.1"
virt-install参数详解
- -n 后面接虚拟机名称,配置 /etc/xen 底下
- -r 后面接分配的内存大小,至少需要 256MB 才能够执行
- –vcpus 分配多少个cpu
- -f 后面接新建的磁盘文件!
- –nographics 不使用图形化安装;
- -p 半虚拟化的方式
- -s 虚拟机磁盘映像的大小,单位GB
- -l 后面接安装源。写法为:
- NFS : nfs:主机IP:目录
- WWW : http://主机IP/目录
- FTP : ftp://主机IP/目录
四、Xen管理
ls /etc/xen #xen配置文件目录 xm list #显示虚拟机运行状态 xm shutdown linux1 #关闭linux1虚拟机 xm console linux1 #连接虚拟机linux1控制台,连接到虚拟机上面可以用组合键 ctrl + ] 键切换到物理机 xm pause linux1 #暂停虚拟机linux1 xm resume linux1 #恢复被暂停的虚拟机linux1 virt-clone -o linux1 -n linux2 -f /data/xen/linux2.img xm create linux2 #开启虚拟机linux2 xm console linux2 sed -i 's@HWADDR=@#HWADDR=@g' /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i 's@IPADDR=.*$@IPADDR=192.168.1.112@g' /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i 's@HOSTNAME=.*$@HOSTNAME=linux2@g' /etc/sysconfig/network
(END)