Linux上的虚拟化技术:Xen 初学者指南
Linux上的虚拟化技术 Xen 初学者指南
1、什么是Xen
Xen是一个开放源代码的para-virtualizing虚拟机(VMM),或“管理程序”,是为x86架构的机器而设计的。Xen可以在一套物理硬件上安全的执行多个虚拟机;Xen是基于内核的虚拟程序,它和操作平台结合的极为密切,所以它占用的资源最少。
什么是虚拟机呢?可能大家知道VMWARE吧,是的,Xen就是类似这样的程序,比如我们可以在Fedora上虚拟安装和使用Slackware、Debian、Gentoo … …等发行版。因为Xen是基于内核的,相对VMWARE来说,它占用的系统资源也就是VMWARE的百分之几左右。Xen是不是更有优势呢?只有您实践了才知道。
1.1 Xen的特性
虚拟机的性能更接近真实硬件环境)
在真实物理环境的平台和虚拟平台间自由切换)
在每个客户虚拟机支持到32个虚拟CPU,通过VCPU热插拔)
支持PAE指令集的x86/32, x86/64平台
通过Intel虚拟支持VT的支持来用虚拟原始操作系统(未经修改的)支持(包括Microsoft Windows)
优秀的硬件支持.支持几乎所有的Linux设备驱动
1.2 Xen的应用范围
服务器整合:在虚拟机范围内,在一台物理主机上安装多个服务器,用于演示及故障隔绝;
无硬件依赖:允许应用程序和操作系统对新硬件的移值测试;
多操作系统配置:以开发和测试为目的,同时运行多个操作系统;
内核开发:在虚拟机的沙盒中,做内核的测试和调试,无需为了测试而单独架设一***立的机器;
集群运算:和单独的管理每个物理主机相比较,在VM级管理更加灵活,在负载均衡方面,更易于控制,和隔离;
为客户操作系统提供硬件技术支持:可以开发新的操作系统,以得益于现存操作系统的广泛硬件支持,比如Linux
◆2、Xen的一点理论基础
基于Xen的操作系统,有多个层,最底层和最高特权层是Xen程序本身。Xen可以管理多个客户操作系统,每个操作系统都能在一个安全的虚拟机中实现。在Xen的术语中,Domain由Xen控制,以高效的利用CPU的物理资源。每个客户操作系统可以管理它自身的应用。这种管理包括每个程序在规定时间内的响应到执行,是通过Xen调度到虚拟机中实现。
当Xen启动运行后,第一个虚拟的操作系统,就是Xen本身,我们通过xm list,会发现有一个Domain 0的虚拟机。Domain 0 是其它虚拟主机的管理者和控制者,Domain 0 可以构建其它的更多的Domain ,并管理虚拟设备。它还能执行管理任务,比如虚拟机的体眠、唤醒和迁移其它虚拟机。
一个被称为xend的服务器进程通过domain 0来管理系统,Xend负责管理众多的虚拟主机,并且提供进入这些系统的控制台。命令经一个命令行的工具通过一个HTTP的接口被传送到xend。
◆3、Xen的安装; Xen的当前最新版本是xen-3.0.1,它基于的内核版本是2.6.12.6的。您可以根据自己的操作系统的情况来选择一种安装方式,适合您的就是最好的;
3.1安装Xen的准备工作;
拥有GRUB引导的Linux做为安装平台,还要编译工具,比如gcc、binutils及make和automake等;开发库有zlib和python-dev等; 由于Xen用Python开发的,所以Python当然也是必不可少的。如果您是新手,我建议您用自己所用的操作系统软件包管理工具来安装这些软件包。
松鼠 发表于: 2010-01-24
我要回答相关推荐
-
XP安装桌面虚拟化客户端报错
使用恩杰的桌面虚拟化,win7及以上系统无报错,但在XP客户端安装 citrix receiver […]
-
xen上配置npiv问题
请问有人在xenserver上配置成功过npiv吗?虚拟出的vport如何只给某个虚拟机使用?还是只能把存储中 […]
-
虚拟化到底学xen还是kvm?
虚拟化到底学xen还是kvm,网上看了一堆对比,都没说个说法,各大云厂商都是用的xen,但是kvm又是redh […]
-
如何可以用CentOS 6.6 + Xen + Heartbest 3 建立高可用集群系统﹖
因为上司希望在公司内部用三台没有人用的Dell PowerEdge R610服务器上用CentOS 6.6 + […]
-
来说说你为啥喜欢Linux虚拟化?
现在各大厂商都支持Linux虚拟化,而且越来越大势, VMware、思杰、红帽和Ubuntu等大型软件厂商都选 […]