目前虚拟化技术主要关注于虚拟化,即在一个宿主计算机上提供多个独立操作系统。本文将探索虚拟化背后的思想,然后讨论实现虚拟化的一些技术。我们还将了解现有的其他一些虚拟化技术,例如
Linux 上操作系统的虚拟化。
一、 Linux下虚拟机的重要性和主要用途:
支持使用旧版本操作系统的应用程序。例如某个应用程序只能使用在2.4 内核的Linux 系统(Redhat Linux
6.2)中,你可以在宿主操作系统为Linux 2.6(Redhat Linux
9.0)的物理计算机中安装虚拟机软件,然后在虚拟机中安装2.4 内核的Linux 系统(Redhat Linux
6.2),从而运行此应用程序。
培训。如果你是一个培训人员,你可以使用虚拟机来构建你的培训场景,这样,通过一台计算机,你就可以模拟多个培训场景。 内容来自"岁月联盟"
测试服务器应用程序。当企业需要部署某个服务器应用程序时,你可以在虚拟机中对它进行测试;虚拟机可以完美的虚拟多个(种)真实的服务器环境,从而让你很 轻松的完成部署测试;虚拟机不仅仅在于它可以方便简洁的模拟出一个虚拟的机器环境以供工作使用,而且在于在对OS有部分有影响的操作如网络攻击、破坏性实 验等,如果采用虚拟机将非常非常,因为虚拟环境的影响仅仅是对一个数据文件的影响,不会真正对host主机硬件设备软件程序产生其他问题。生产系统上面的 系统调整在没有经过测试数据的证明,贸然的直接上线将暗含巨大的风险,如果软件开发或者系统管理人员使用虚拟机将非常适合进行此类的测试和研究。
提高服务器利用率。许多企业中不同部门或者不同的分公司具有不同的操作系统或应用程序需求,因此具有不同的服务器,但是这些服务器的利用率往往不高。通过 虚拟机,你可以将这些不同的服务器需求通过虚拟机来实现,从而将它们整合到一台物理服务器中,提高服务器的利用率。而对于具有这些服务器需求的用户来说, 他们不会感觉到在虚拟机上运行的服务器和物理计算机上运行的服务器具有多大的区别。
应用程序移植。许多企业中具有要求使用不同版本服务器操作系统的服务器应用程序,你可以在Linux上运行虚拟机,然后在虚拟机中安装Solaris来运行此应用程序,从而完成应用程序的移植。 SYUE.COM
网络测试。不管是Linux还是建立的虚拟机,都可以实现仅有宿主计算机的网络,也就是宿主计算机与虚拟机之间的局域网。因此,进行网络方面的实验无需像 物理联网那样到处连接网线和调试计算机。联网不仅仅局限在宿主计算机和虚拟机之间,也可以在多个虚拟机之间。例如,只要在或Linux系统上建立了 FreeBSD和Windows XP客户操作系统,就可以观测在FreeBSD下运行的Web Server如何伺服在Windows XP下的Internet Explorer网页访问的全过程。 信息来自"岁月联盟"
二、 什么是OpenVZ
OpenVZ 是开源软件,是基于Linux 平台的操作系统级服务器虚拟化解决方案。OpenVZ 采用SWsoft 的Virutozzo. 虚拟化服务器软件产品的内核,Virutozzo 是SWsoft 公司提供的商业虚拟化解决方案。OpenVZ 在单个物理服务器上创建隔离、的虚拟专用服务器(VPS 或虚拟环境,VE),从而提高服务器利用率并确保应用程序之间不会相互干扰。每个VPS 的运行都和独立的服务器完全一致:VPS 可以独立重起,具有根访问权限,用户、IP 地址、内存、处理器、文件、应用程序、系统库和配置文件等。OpenVZ 软件同时为用户提供工具,协助自动化管理虚拟服务器。基于模板的应用程序部署可以在几分钟内用简单的方法创建新的虚拟服务器并投入使用,而且与其他的虚拟 化技术相比,OpenVZ 可以在每CPU 上运行几倍于其他虚拟化服务器技术的虚拟化服务器。OpenVZ则支持 X86,AMD64,Itanium(IA64),PowerPC,UltraSPARC等CPU。
技术特点:
OpenVZ将单个Linux操作系统实例分割成成百上千个独立的虚拟环境。虚拟环境中可安装和运行各种应用程序,使用起来和物理服务器完全一致。通过共 享软硬件资源,不仅充分利用服务器资源,降低了总体TCO;而且实现了瞬间部署服务器、动态资源分配回收、服务器集群管理、用户自助重启、“零宕机”迁 移、快速备份恢复等管理特性。现在VPS主机已经成为和虚拟主机、独立主机三足鼎立的主机服务主流形式。
[来源"岁月联盟"]
VPS具备与独立服务器一样的功能
共享硬件、许可证和管理资源
完全隔离,防DoS攻击
几秒钟完成虚拟服务器的部署
服务器间零宕机迁移
命令行管理工具
三、 OpenVZ VPS 基本功能和应用程序
动态实时分区? 将物理服务器分成数十个VPS,每个都具有独立服务器的功能。
资源管理? 分配和控制VPS资源参数并实时进行资源的重新分配。
集中管理 ? 通过统一的方式管理多台物理和虚拟专用服务器。
1. OpenVZ 应用程序
OpenVZ为Linux主机服务提供以下服务:
在单台物理服务器上拥有数以百计客户,每个客户拥有独立的全功能虚拟专用服务器;
为每个客户提供服务质量(Qos)保障;
无需手工配置,可以透明地将客户及其使用环境在不同服务器之间迁移。
如果您在企业中管理大量的Linux独立服务器,每个服务器运行特定的应用服务,您可以使用OpenVZ来讲这些服务合并与同一台计算机,不会损失任何有价值的信息也不会损害任何性能。虚拟专用服务器运行和独立服务器完全一样: "岁月联盟"
每一个VPS拥有其独立的过程、用户、文件并提供完全ROOT访问权限;
每一个VPS可以拥有独立IP地址、端口号码、表单、以及过滤和规则;
每个VPS可以拥有其自己的系统配置文件并能够装载应用程序,同时拥有自己的系统库。在VPS内可以独立的安装和定制软件包,不受其它VPS
或底层硬件节点系统影响。
多种不同的Linux发行包可以运行在同一个Linux服务器上。OpenVZ可以快速部署到大部分情景:网络主机托管、企业服务器合并、软件研发/测试,用户培训等。
四、 OpenVZ的技术特性
OpenVZ的虚拟专用服务器的概念有别于传统的虚拟机概念,因为VPS一直运行在和底层硬件节点相同的操作系统内核上(Linux VPS 运行在Linux平台,Windows VPS在Windows 平台)。这种单内核实现技术允许VPS 运行时几乎零处理损耗。因此, OpenVZ 的VPS提供了比传统的虚拟化技术高出一个量级的效率和易管理性。
1.操作系统虚拟化
从应用程序和VPS用户的角度来看,每个VPS是完全独立的系统。这种独立性由位于系统内核之上的虚拟化层来提供。注意仅有极小的CPU
资源消耗在虚拟化过程中(大约
1-2%)。以下是OpenVZ虚拟化层实现的主要特性:
VPS看起来像一套普通的Linux系统。它具有标准的启动脚本、软件厂商提供的科可以
运行在VPS内部的软件而无需为OpenVZ做特别的修改或调整;
用户可以修改任何配置文件和安装其他软件;
VPS相互之间完全隔离(包括文件系统,进程,内部进程通讯(IPC),sysct1
变量);VPS不会绑定在一个CPU上,可以使用所有的CPU资源。属于某个VPS的进程可以运行在所有可获得的CPU之上。