一.xen的简介
Xen是一个开放源代码虚拟机监视器,由剑桥大学开发。它打算在单个计算机上运行多达128个有完全功能的操作系统。
在旧(无虚拟硬件)的处理器上执行Xen,操作系统必须进行显式地修改(“移植”)以在Xen上运行(但是提供对用户应用的兼容性)。这使得Xen无需特殊硬件支持,就能达到高性能的虚拟化。Xen的架构如图:
Xen虚拟机的组成:
Xen Hypervisor:
虚拟化技术通过在现有平台(机器)上添加一层薄的虚拟机监控程序(Virtual Machine Monitor,简称 VMM)软件而实现对系统的虚拟化,如虚拟处理器,虚拟内存管理器(MMU)和虚拟 I/O 系统等。虚拟机监控程序又被称之为监管程序(Hypervisor)。Domain(Dom0,DomU):特权虚拟机:Dom0;特权域为Xen提供控制工具的;直接驱动IO硬件设备;与DomU交互;
Linux-2.6.37内核开始直接运行在Dom0上;
其他普通虚拟机:DomU;非特权域Linux-2.6.24+内核开始支持Xen的虚拟化实现方式:
Type-I型:二级虚拟化技术;直接在硬件上安装hypervisor,直接接管硬件资源,运行在其上的系统都是虚拟机;
管理方面给彻底;必须让hypervisor驱动硬件,出现的问题是必须开发驱动程序?解决方案:Xen只是驱动CPU和内存,不驱动IO设备当系统启动时,硬件设备加载后加载hypervisor,hypervisor拥有访问硬件权限,hypervisor加载完成后启动一个虚拟机,虚拟机有自己的内核和用户空间,这个虚拟机是 特权虚拟机,为底层hypervisor提供管理程序,能功能是为hypervisor提供IO设备硬件驱动 程序的;我们新建的虚拟机调用IO设备硬件时,是通过特权虚拟机驱动程序连接硬件实现;更加详细的说明请参考博文:http://www.uml.org.cn/embeded/201303201.asp
xen虚拟化实现在CentOS 6.6上安装所需要的条件:
1).需要在物理机上安装CentOS 6.6操作系统
2).安装Xen软件包3).安装3.7.10的内核,可以使Xen运行在Dom0上4).配置好grub,然后启动Xen5).在用户空间上安装虚拟机Guest OS即可;注意:最新版本的xen在CentOS 6.6平台上是只有DomU可以使用,Dom0是不能通过CentOS 6.6的原有内核实现,我这里是安装的xen-4.2.5版本的xen,还有将内核版本更新到了3.7.10;
简单介绍一些XEN和KVM:Xen:CentOS4-CentOS5是支持的;后续就是xen了,但是在内核版本Linux 2.6.37将xen收录进内核,CentOS7收录进内核;可以实现内核直接运行在Dom0上;
KVM:2006才出现;CentOS5.8开始支持;但是不稳定,红帽的收购造成了KVM的发展; CentOS6.6的内核为2.6.32,不直接支持内核运行Xen的Dom0特权域;可以支持直接运行在DomU
红帽为了支持KVM这个亲儿子的发展,将xen给赶出家门了。 -_-! 后来意识到XEN的使用率还是很高,所以又在后来收录进内核。二.xen的安装及Dom0的配置
1.配置xen的yum源
# vim /etc/yum.repos.d/xen4.repo[xen4]name=Xen4 For CentOS6baseurl=ftp://172.16.0.1/pub/Sources/6.x86_64/xen4centos/x86_64/gpgcheck=0进行清理yum缓存操作# yum clean all
2.安装xen-4.2.5版本的软件,更新内核版本到3.7.10
新闻热点
疑难解答