Xen简介

RHEL 5 是一个安全性和稳定性都很高的新型系统。Xen 是一个开放源代码虚拟机监视器,由剑桥大学开发。它打算在单个计算机上运行多达128个有完全功能的操作系统所以RHEL 5 Xen的完美组合现在出现了。

Red Hat 在新版操作系统中首次大量采用Xen服务器虚拟化技术。不同的是RHEL 5 Xen实现演进的程度大大超过了《NetworkWorld》在SUSE 10中看到的东西,尽管它还缺少全面的工具。

我们可以很轻松地让RHEL 5 Xen管理程序(hypervisor)运行起来,并且随后迅速构建修改的(所谓的“Xen主机)内核。客户操作会话可以迅速地在这些实例上建立,并且随后通过Virt-Manager监测。Virt-Manager是红帽公司在RHEL5中内置的开源Xen工具。不过,RHEL5利用Xen方式上存在的问题在于,它们没有从管理角度集成在一起,并且依赖于一种经验主义的”Xen管理应用程序,而不是直观地、按顺序地使用不同的标准开源工具。

当《NetworkWorld》对比SUSE 10测试RHEL5原生内核(native kernel)的性能时(一如既往,这里采用安装操作系统时选择的缺省设置),在LMBench测试结果(参阅链接文章如何测试RHEL5”)中没有发现这两种操作系统最新版本之间存在什么显著差别。

RHEL5 能够支持多核CPU和多路服务器,这也提高了操作系统的性能。在《NetworkWorld》的测试中,RHEL5很轻松检测到了Polywell 2200S机器中的双Athlon CPU,并且同样很快检测出了4 路双核Athlon 64 CPUHP 585。事实上,除了在Dell PowerEdge P280HP DL140普通服务器上遇到的奇怪的显卡几何学问题外,没有出现其他的检测错误,而且前面提到的问题也属于微不足道的小问题。与原生RHEL5测试结果相比,将Xen的管理程序引入后的RHEL5内核受到的影响只是延时略有增加。

NetworkWorld》测试了Xen对性能的影响,发现管理程序层和引入XenRHEL5内核插入损失微不足道的:性能没有受到多大影响。在测试中,这里生成了两个客户“domU”(客户机操作系统在Xen行话中的叫法)实例,并在每个OS客户实例中同时运行LMBench3。性能随添加的实例线性下降。

为了向硬件厂商提供更加一致的编程实践,RHEL 5 Xen修改了它的驱动程序模型。可能的成果之一是一种开源iSCSI驱动程序。这种驱动程序使OS实例可使用通过驱动程序连接外部存储设备(如iSCSI管理的SAN设备)的能力所提供的虚拟存储。驱动程序使外部iSCSI存储设备可以像“SAN”那样被操作系统所访问,从而减少了服务器硬件的数量。它还为系统设计人员提供了灵活的存储选择如果他们必须以更条理的方式维护虚拟OS实例的话。

与微软和苹果在他们的操作系统中增加了大量华丽的GUI改进不同,在RHEL5服务器和客户机版中没有获得重大改进的是GUIRHEL 5 Xen用户界面中确实没有什么新东西,它仍使用Gnome 7.1,不过,它增加了对高性能显卡的支持并增加AIGLX库。后者模仿了一些竞争性GUI特性的图形视觉效果,这些特性包括漂亮的最小化、透明/半透明、淡出和窗口操作特性。

在其他显著的变化方面,安装时间支持选择增加了,RHEL5在检测和防火墙操作方面增加了对IPv6的更复杂、更全面的支持。
一、Xen是一款虚拟化软件,支持半虚拟化和完全虚拟化。它在不支持VT技术的cpu上也能使用,但是只能以半虚拟化模式运行。
二、半虚拟化的意思是需要修改被虚拟系统的内核,以实现系统能被完美的虚拟在Xen上面。完全虚拟化则是不需要修改系统内核则可以直接运行在Xen上面。
三、VMware是一款完全虚拟化软件。完全虚拟的弱点是效率不如半虚拟化的高。半虚拟化系统性能可以接近在裸机上的性能。
四、 Xen是由一个后台守护进程维护的,叫做xend,要运行虚拟系统,必须先将它开启。它的配置文件在/etc/xen/xend-config.sxp,内容包括宿主系统的类型,网络的连接结构、宿主操作系统的资源使用设定,以及vnc连接的一些内容。(如果你想增加一个虚拟网络设备的话,是需要在这里设定的)
五、/etc/xen/auto 的含义是如果你想让被虚拟系统随着宿主系统一同启动的话,就把虚拟系统的配置文件放到这个目录下面来。
六、/etc/xen/scripts 是些脚本文件,用于初始化各种虚拟设备,比如虚拟网桥等。(如果要增加一个虚拟网络设备,同样需要在此处调节)
七、在/etc/xen下面会有些配置文件,这就是虚拟系统引导时所必须的些文件,里面记录了引导和硬件信息。
八、Xen的配置工具有许多,我使用的是virt-manager(GUI)、virt-install和xm。第一个用于管理和安装系统,第二个只用于安装系统,第三个用于启动系统。
九、安装半虚拟Linux有两种方法,一种是利用Linux的网络安装方式安装,http、ftp、nfs方式都是可以的(特别注意:半虚拟环境下安装Linux是不支持本地光驱或者iso镜像安装的!),并且RHEL5会自动生成配置文件。第二种是先建立镜像文件,并格式化,然后挂载到本地文件系统上来,将虚拟系统需要用到的文件拷贝进去并修改,然后手工创建配置文件并启动。
十、虚拟网络设备有三种模式:bridge桥模式、router路由模式和nat模式。其中桥模式是默认模式,在这种模式下,虚拟系统和宿主系统被认为是并列的关系,虚拟系统被配置IP或者dhcp后即可联通网络。
十一、原来的iptables无法对桥模式下的数据包做处理,RHEL5的iptables中增加了一个physdev的模块,可用iptables -m physdev -h查看帮助