虚拟化技术Xen及其应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虚拟化技术Xen及其应用
[摘要]Xen是一个开放源代码,基于x86 CPU架构的虚拟机监视器(VMM),借助于Xen 可以在单个物理硬件上同时实现多个操作系统的运行。
主要介绍Xen 的特点和结构,实例演示以及应用领域。
[关键词]Xen虚拟机半虚拟全虚拟
一、引言
随着服务器整合需求不断的升温,虚拟化技术正越来越受到关注。
而伴随着现代计算机不断增强的处理能力,利用虚拟化技术实现多个不同的操作系统在同一台计算机上的高性能运行将带来广阔的发展前景。
利用Xen 可以在一台计算机实现多个操作系统的同时运行,Xen可以广泛应用于服务器整合领域以及软件开发过程中。
二、Xen简介
Xen是一个开放源代码,基于x86 CPU架构的虚拟机监视器(VMM),借助于Xen 可以在单个物理硬件上同时实现多个操作系统的运行。
Xen支持x86/32, x86/64平台,其虚拟机的性能能够接近真实硬件环境,同时它实现了不同计算机间的虚拟机的动态迁移,即允许虚拟机操作系统以及其上的应用程序动态地在服务器间互相迁移,实现了服务器负载的均衡,最大限度的做到资源的合理应用。
Xen虚拟机能最大支持32个虚拟CPU(VCPU),并允许虚拟CPU的热插拔。
随着Intel和AMD在其CPU中增加辅助虚拟化技术(Intel VT和AMD-V),Xen已经实现全虚拟,即不用修改虚拟机操作系统即可实现对于系统的虚拟化,增加了Xen的应用范围。
从Xen3.0起Xen同时支持半虚拟(para-virtualization)和基于硬件的全虚拟(full virtualization)。
半虚拟化的Xen虚拟机主要为了实现系统的高性能,它需要通过修改客户操作系统来实现利用Xen提供的平台接口。
和半虚拟相比,全虚拟无须修改客户操作系统,但是它需要为客户操作系统提供一个完全虚拟化的平台。
三、Xen整体结构
Xen 可以同时实现管理多个虚拟机客户操作系统的独立运行,通过Xen对各个域(Domain)的合理调度可以实现高效利用CPU资源。
而各个客户操作系统则可以分别管理自身应用程序。
初始化域(Domain0)将在系统引导时自动创建并拥有特殊的管理权限。
通过Domain0可以创建其它的域,并管理虚拟设备。
当系统引导时,首先将创建一个Domain0,其可以使用控制接口。
控制接口可以提供创建和结束其他域的权限,并控制其它相关调度参数,物理地址分配以及访问硬盘、网络设备等的权限。
四、Xen实例
以下为全虚拟化Domain2的Xen配置文件,其中:builder = “hvm”表示该域为基于硬件的虚拟机(HVM);memory 表示Domain2指定的内存大小为256MB;vif 分别指定了Domain2的网卡物理地址,IP地址以及掩码;disk则定义了Domain2的物理分区映射点。
name = “winxp”
builder = “hvm”
memory = “256”
disk = [ …file:/home/Xen_Guests/winxp,hda,w‟, ]
vif=[…type=ioemu,mac=00:16:3e:48:1a:3e, bridge=xenbr0‟,]
uuid = “6d5f109d-cde9-aa57-65d8-48f824a06166”
device_model = “/usr/lib/xen/bin/qemu-dm”
kernel = “/usr/lib/xen/boot/hvmloader”
vnc=1
vncunused=1
apic=1
acpi=1
pae=1
vcpus=1
serial = “pty” # enable serial console
on_reboot = …restart‟
on_crash = …restart‟
五、Xen应用领域
服务器整合:在一台计算机上同时使用多个服务器,不仅可以整合利用率低的服务器,节省软硬件资源,而且可以大大降低维护和运行的费用。
同时由于Xen的动态迁移的特点,可以更加灵活的实现服务器负载的合理分配。
开发测试环境简化:在软件开发中在不同的操作系统上实现开发与测试的简化,例如在一台计算机上实现不同操作系统下的软件测试,或者也可以应用于内核开发,通过在虚拟机上进行内核测试即可免去架设测试计算机。
六、结论
由于Xen是开放源代码的,因此必定会吸引了更多的开发者。
同时,随着Intel和AMD的CPU对于虚拟化技术的支持,Xen已经实现了基于硬件的虚拟化,这将使其拥有更广阔的发展空间。
参考文献:
[1]P.Barham 等. Xen and the art of virtualization. 见:19th ACM Symposium on Operating Systems Principles, 2003.
[2]Xen3.0 User Manual.见:/xenwiki/,2005.
[3]Ian Pratt. The Xen Roadmap.见:/Xen.wiki/, 2006.。