解读开源Xen虚拟服务器

2018-06-11    来源:

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

一、Xen 起源

  Xen VMM(virtual machine monitor)是由剑桥大学计算机实验室开发的一个Open Source 项目,目前稳定版本为Xen3.0,主要目的是为了建立更多的虚拟机器。XenSource 的创始人Ian Pratt表示,Xen 2002年前诞生于英国的剑桥大学,这家新创公司有意把Xen虚拟功能变成标准的计算机功能。「我们第一部是在Linux系统上普及化。」他说。 Xen 这类能将一台计算机划分为多个不同分割区的方法依赖一种被称为虚拟化(virtualization)的概念,它们使软件能够仿真真实的硬件来作执行。在VMware中,这一基础被称作是虚拟机器(virtual machine) VMwareXen 之间的差异点在于:前者完全仿真计算机,因此理论上操作系统可不需更动就直接在虚拟机器上执行;Xen 则使用了被称为「paravirtualization」的技术,Pratt表示,它的效能更快,但需要对操作系统进行适当的修改。不过较高阶的软件并不需经过修正,VMware Xen 之间的差异点在于:VMware 完全仿真计算机,因此理论上操作系统可不需更动就直接在虚拟机器上执行;Xen 则使用了被称为「Paravirtualizatio」的技术,它的效能更快。

  200512Xen开发组发布了Xen 3.0,这是第一款支持芯片辅助技术的免费hypervisor软件。有了VT-xAMD-V的硬件支持,Xen 3.0能支持任何没修改过的操作系统。XEN 3.0 所采用的虚拟技术为半虚拟化(Paravirtualization),与VMware所采用的完全虚拟化的差异,在于对底层硬件的控制效率接近实机操作,包括中断控制(IRQ)等,以及等同于实体处理器的运作效能,但也因此对硬件的支持度并不高。由于半虚拟化(Paravirtualization)技术需要对操作系统进行适当的修改,所以目前Xen 只能够在一些Linux-based 的系统上运作,也陆续受到一些信息大厂的支持,Xen 并不是第一个提出半虚拟化的软件,但执行Xen 时,消?系统资源非常少,大约占3%,所以Xen 可算是技术上的突破。半虚拟化必须修改系统的内核,不过如果处理器能支持虚拟化,所就内核就无需异动了,例如Intel VT AMD Pacifica 处理器都将包括这种支持。AMD CPU 只有Opteron 支持AMD-V 技术,而INTEL则有Intel Core 2 Duo Xeon 系列才支持VT 技术。

二、Xen支持的操作系统

  主机操作系统即(Host Operating System) 在物理计算机(宿主机)上运行的操作系统,在它之上运行虚拟机软件。客户操作系统 (Guest Operating System) 运行在虚拟机中的操作系统。注意,在此它不等于桌面操作系统(Desktop Operating System)和客户端操作系统(Client Operating System),因为虚拟机中的客户操作系统可以是服务器操作系统。表1 Xen 3.0支持的主机操作系统和客户操作系统。

  表1 Xen 3.0支持的主机操作系统和客户操作系统

 

 Xen Enterprise 3.2明显扩大了支持范围,新增了对Windows 2000的支持。另外,可以使用对称多处理(Symmetric Multiprocessing SMP)技术支持Windows Server 2003Windows XP操作系统,使得ExchangeSQL Server可以运行地更好。客户操作的支持还增加了Red Hat的企业版Linux服务器RHEL 5NovellSUSE Linux企业服务器10 SP1。另外Linux的两个最成功的商业版,红帽企业版Linux 5.0NovellSuse Linux 10.0企业服务器版都集成了Xen

三、Xen的原理和体系结构

  虚拟化CPUguest OS(客户操作系统)提出了几个要求。因为hypervisor插在操作系统的下层违背了惯常的关于操作系统在整个系统中特权最高的假设。为了保护hypervisor不会受到操作系统不正确行为的影响(domain不受另一个domain的影响)guest OS就必须被改造为能够运行在较低的特权级上。很多处理器体系结构只是提供了两个特权级。在这些情况下,guest OS和应用程序共享较低的特权级。同时,guest OS运行在单独的地址空间中以保护自己不会受到应用程序执行的影响。guest OS通过hypervisor设定虚拟的特权级和改变当前的地址空间来间接地和应用之间进行控制传递。另外,如果处理器的TLB支持地址空间标记,那么也就可以避免TLB刷新带来的高昂代价。在x86架构上有效地实现特权级的虚拟化是可能的,因为x86架构在硬件上支持四个不同的特权级。x86架构的特权级往往用圈(ring)来表示,从ring 0(最高特权)ring 3(最低特权)。操作系统的代码运行在ring 0这个特权级上,因为再没有其它的ring能够执行那些特权指令。ring 3通常用于执行应用代码。就我们所知,自OS/2起到现在的各个知名的x86 架构上的操作系统都还没有利用ring 1ring 2这两个特权级的。那么,任何遵循这个通常的安排的操作系统就都可以移植到Xen上来。这个移植过程只需要做一些改动使操作系统改为运行在ring 1特权级上。这就防止了guest OS会直接执行特权指令,也保证了操作系统与运行在ring 3上的应用程序之间相隔离的安全性。图1Xen Ring 关系图。图2 Xen的体系结构。

 

1Xen Ring 关系图

 

 图2 Xen的体系结构

在完全虚拟化环境下需要仿真现有的硬件设备,而Xen不同于此。Xen给出了一套清楚、简单的设备抽象。这就使得我们能够设计一个接口以有效地满足我们对保护性和隔离性的需求。为了做到这一点,I/O和各个domain之间的数据传递都是要经过Xen的,可以使用的方法有共享内存,异步缓冲区描述符环等。这些方法能够在Xen有效地执行确认检查的同时,为在系统中的竖直方向上传递缓冲区信息提供了一个高性能的通信机制。图3Xen网络接口结构。图4 是逻辑网络接口连接dom1dom0示意图。

 

 3 Xen的网络接口结构

  讲到Xen,不能不提Xensource公司,它由原Xen项目组主要成员创立,坐落在美国硅谷的Palo Alto市。Xensource是一个典型的将学校研究成果转化为生产力的创业型企业。200611月,XenSource对外发布了他的第一个正式产品XenEnterpriseXenEnterprise基于Xen 3.0.3。在此之前,Red Hat在他的Fedora Core 4.0Fedora Core 5.0中已经集成了XenNovellSUSE Linux 10.1SLES 10中也已经集成了Xen。同时Redhat他的企业版Linux中即RHEL5.0中也集成Xen

 

4 逻辑网络接口连接dom1dom0示意图

-2xen家族产品参数

性能参数

XenEnterprise XenServer

Multi-OS

Windows XenExpress

Virtualization

Virtualization On-Ramp to Xen

物理内存

无限制

 

8GB 最大

 

4GB最大

 

物理CPU

最大32

 

最大2

 

最大2

 

共享存储

ISCSISAN

不支持

不支持

Windows 客户机类型

 

Windows Server 2003 Windows Server 2003 R2Windows XP SP2

Windows 2000 SP4

 

Windows Server 2003 Windows Server 2003 R2Windows XP SP2

Windows 2000 SP4

 

Windows Server 2003 Windows Server 2003 R2Windows XP SP2

Windows 2000 SP4

 

Linux 客户机类型

 

RHEL 3.6–5.0 RHEL 3.6–5.0

SLES 9.2–10.1 SLES 9.2–10.1

Debian Sarge Debian Sarge

其它标准虚HVM

不支持

RHEL 3.6–5.0

SLES 9.2–10.1 SLES 9.2–10.1

Debian Sarge Debian Sarge

其它标准虚HVM

动态移植

支持

不支持

不支持

Qos支持

支持

不支持

不支持

用户定位

OEM用户

Windows IT Pro

 

IT研究人员

Vlan支持

支持

不支持

不支持

64-bit 客户机支持

 

不支持

不支持

不支持

管理特性

一个管理终端可以多个Xen host

一个管理终端可以多个Xen host

一个管理终端可以一个Xen host

费用

每客户端需 $1,000 USD

 

每客户端需 $1,00 USD

免费

  另外全球应用程序供应基础架构领导厂商 Citrix Systems完成收购企业级虚拟化基础架构解决方案领导商 XenSource 。透过这项合并, Citrix 成为业界最完整的虚拟化技术供应商,提供业界唯一完整涵盖应用系统、服务器及桌面虚拟化技术的端对端应用供应 基础架构。根据 Citrix 预估,该市场在未来四年将成长至近 50 亿美元的规模。随着 XenSource 的加入, Citrix 推出 Citrix XenServer Citrix XenDesktop 两款全新的虚拟化解决方案,分别专攻服务器及桌面虚拟化市场,也配合 Citrix 原有的应用系统虚拟化产品,打造出业界最完整的端对端虚拟化产品。

  总结:Xen的超虚拟化(paravirtualization)是另外一种流行的虚拟化技术,它与完全虚拟化有一些类似。这种方法使用了一个 hypervisor 来实现对底层硬件的共享访问,还将与虚拟化有关的代码集成到了操作系统本身中。这种方法不再需要重新编译或捕获特权指令,因为操作系统本身在虚拟化进程中会相互紧密协作。通常通过虚拟化(Virtualization)将同一硬件上的应用程序和系统彼此隔离开来。从硬件模拟到完全硬件虚拟化,Linux 支持很多种不同形式的虚拟化。在不断增加的虚拟化技术列表中,Xen 是近来最引人注目的技术之一,它由剑桥大学开发。Xen 值得您关注,因为它具有空前的性能与安全性。

标签: linux 安全 标准 代码 服务器 美国 企业 通信 网络 用户

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:一周电脑病毒及木马播报

下一篇:商业周刊:AMD新推巴塞罗那 英特尔立即反击