2008年(8065)
分类: 服务器与存储
2008-12-14 15:28:19
是什么将虚拟化推到了当今IT界的风头浪尖呢?实际上,服务器虚拟化之所以受到IT界的普遍关注,并非是某些技术发烧友的头脑发热,而是源于如下的几个要素。首先,PC服务器的强壮性日益增强,原来感觉不登“关键应用”大堂的PC服务器已开始日益“侵蚀”原来只有高端Unix服务器才可担当的重任,而PC服务器的低成本和易于使用等特性,让大家逐渐提高了对PC服务器的信任度,PC服务器不断攻城略地,不断获得越来越大的重视。
如何选择合适的虚拟化产品来支撑下一代的数据中心?哪些虚拟化的特性是数据中心必需的呢?笔者认为,数据中心级的服务器虚拟化产品必须具有如下7大特点:
1. 数据中心的虚拟化方案需获得企业级用户的广泛验证
要将虚拟化的技术引入到数据中心级的环境中,我们必须首先考察该产品的用户情况。如果该产品的用户数量很少,没有在各种复杂的环境中获得实际验证,即使可以提供很漂亮的演示,仍然不能在数据中心这些关键的环境中获得大量使用。因为数据中心环境往往十分复杂,数据中心用户对应用的在线时间等都有严格要求,引入不成熟产品可能后患无穷。
到今天,大家可以看到许多不同的服务器虚拟化产品,目前最成熟的是9年前最先扎进PC服务器虚拟化VMware,全球财富100强企业全部采用了VMware的虚拟化解决方案。同时,VMware的虚拟化解决方案也在超过20000家的企业级用户环境中获得了验证和好评。虽然进入中国市场不久,但已经建立了大量的中国用户群,VMware已经成为企业级数据中心首选的服务器虚拟化品牌。
要进入数据中心应用,虚拟化的产品必须能满足各种复杂环境的需求。数据中心设备种类繁多,型号复杂,这就对虚拟化产品提出了苛刻的要求。虚拟化产品不仅是能够安装在PC服务器上就万事大吉了,由于虚拟化往往涉及到IT的整个架构,所以虚拟化产品还要保证和存储设备、网络设备等无缝兼容,获得各个硬件厂家的支持和认可。另外,虚拟化还涉及相应的操作系统和应用层,也要和数据中心运行的各种X86平台的操作系统和应用良好兼容,确保互操作性。因此,选择虚拟化的过程中,要通过IT架构的各个层面来考察它的兼容和互操作能力,而不能仅仅从服务器方面简单判定了事。
目前,将虚拟化的兼容性当作重要考虑因素的VMware已经和业界各种软、硬件的平台供应商达成了广泛的合作,形成了广泛的支持平台。这构成了VMware虚拟化方案的生态系统,确保基于VMware打造的虚拟化企业级数据中心能够获得快速、及时、广泛的支持。
3. 数据中心的虚拟化方案要具有强大的可靠性和扩展能力
服务器虚拟化正在迅速改变着IT的架构,所以一旦部署,虚拟化产品的可靠性和扩展性对数据中心来说就变得至关重要、生死攸关。因此,要从可靠性和扩展性能力面综合考察虚拟化产品。为了达到可靠性的要求,数据中心虚拟化只能选择裸金属架构的虚拟化架构,如下图所示。
对于这种架构,虚拟化层的稳定性相当关键,因此为了达到可靠性的要求,虚拟化层往往是专门设计的虚拟化内核而不是通用的操作系统,从而可以提高可靠性。当然,对于可靠性和扩展性的最好的验证不是理论,而是用户的实际应用。如下图所示的就是用户使用VMware ESX Server的实际数据,通过虚拟化层的增强,确保了PC服务器运行超过950天而没有任何停机现象。
而大量用户案例也验证了VMware ESX Server卓越的扩展能力,很多国内外的用户已经在4路CPU的PC服务器上成功部署并可靠运行了30多个虚拟机。而管理工具VMware VirtualCenter更是在各数据中心的复杂环境中表现出众,已经可以轻松管理数千台虚拟机,成为虚拟化管理中心,是数据中心虚拟化环境管理的不二选择。
4. 数据中心虚拟化对性能也提出了很高的要求
性能是数据中心追求的一个重要指标,因此虚拟化对性能的消耗也是考察的一个要素。一款优秀的虚拟化产品本身要能尽可能少占资源,可以让更多的资源来运行用户的应用。同时也要很好的调度不同虚拟机之间的资源,来确保运行在虚拟化平台上的所有的应用都高速可靠运行。为了达到这一要求,虚拟化产品要实现对CPU和内存等资源精密控制,比如CPU要控制到MHz、内存控制到MB,确保服务器里的资源最大限度利用,同时,尽可能简化虚拟化层所带来的负载。当然CPU的一些特性也要能很好的支持,如:多线程、多核、虚拟化等。如下图所示,是在VMware ESX Server上对一台运行IBM Notes的虚拟机进行配置,其中的CPU多线程、MHz的配置都简单方便,最大限度利用了CPU资源,从而达到了最优化的性能。
当然,资源的有效调度也是性能的重要指标,通过如下的Reservation(保留值)、Limit(最大值)和Shares(份额)的管理,很好的调度了系统的关键资源,确保了系统资源的高效利用。可以只分配最基础的资源,通过Shares来引入虚拟机的优先级和资源竞争机制,一旦多台虚拟机同时争用某一资源,根据他们的Shares来进行分配,确保高优先级的虚拟机最先获得这些资源。同时又能保证这些资源空闲的时候,其他虚拟机也可以使用。
另外,虚拟化的性能也可以从虚拟环境和物理环境的比较来决定虚拟化的对资源的占用情况。下面是在香港的某一用户现场,对VMware ESX 3.01和物理机性能进行对比的测试结果,采用的测试工具是SPECcpu INT2000。你可以看到虚拟化对服务器的性能影响很小,影响基本都小于6-7%,对不同的应用影响略有差异。
5. 数据中心虚拟化方案要能支持企业级的应用负载
数据中心的应用千差万别,某些应用的负载可能会比较高,如何支持这些高负载的应用,对虚拟平台是一个挑战,如下图所列的应用。为此,进行虚拟化选择的时候要看该产品对负载的支持能力,否则将会使得数据中心很多应用没法享受到虚拟化的好处,最后不得不实现分组管理,增加了数据中心的复杂性。VMware ESX 3.x上的每个虚拟机都可支持到16GB的内存和4个虚拟CPU,可以轻松运行各种大负载的应用,完全满足数据中心对高负载应用的支持能力。
6. 数据中心虚拟化要提供灵活的资源调度和动态负载调整能力
在构建基于虚拟化的数据中心时,享受到服务器利用率提高的同时,也要考虑到维护的方便性。比如,当一个物理服务器上运行20-30个虚拟化的后,如果不能进行有效架构设计和提供资源动态调度能力,就会使得这台物理服务器的维护变得举步维坚。因为在传统模式下,每台服务器只承载一个应用,通常可以申请停机来维护该服务器,此时只会影响一个应用。部署了服务器虚拟化平台后,服务器硬件的停机就会影响数十个应用,使得停物理服务器成为奢望。因此,虚拟化的平台必须提供虚拟机动态迁移能力,在需要进行服务器维护时,将该物理服务器上的虚拟机动态在线迁移到其他物理服务器,从而使得维护无后顾之忧。其实,目前虚拟化的领头羊VMware就在Virtual Infrastructure 3产品中提供了VMotion的功能来实现虚拟机的动态在线迁移,如下图所示。
当我们要维护左边的服务器时,我们只要将其上运行的Windows和Novell虚拟机通过VMotion技术,在线迁移到右边的物理服务器上。之后开始对左边的物理服务器进行维护,甚至更换成全新的服务器。VMotion技术使得数据中心用户可以轻松实现停物理服务器而不停应用的神话。
当然,如果能根据虚拟机负载大小,进行虚拟机的动态分布,将会使得数据中心虚拟化获得更多回报,让用户能更灵活控制他们的服务器资源和应用分布。这需要虚拟机在线迁移特性的支持,没有虚拟化的在线迁移功能,虚拟机的动态分布就成为空中楼阁了。其实,VMware通过DRS(Distributed Resource Scheduling)功能,已经可以根据物理服务器负载的分布情况进行动态负载的分布调整,确保了所有的物理服务器资源都能获得最大限度的利用,从而避免了一台服务器资源紧缺而另外一台服务器资源空闲的情况,这也间接提高了服务器的利用率,降低了服务器硬件的投资成本。
7. 数据中心虚拟化方案要提供出色的管理能力
一旦部署了虚拟化,整个数据中心的管理就很大程度上依赖于虚拟化的管理。因此,虚拟化的管理一定要精细、准确、方便。这也是选择虚拟化产品的重要考量之一。当然,出来考虑虚拟化管理软件本身,还要注意虚拟化管理软件和第三方软件的集成能力,以及虚拟化产品本身是否提供简便易用的SDK和API,方便进行二次开发。
VMware为此提供了目前业界最成熟的Virtual Center来管理数据中心的虚拟化环境,在享受虚拟化带来的巨大好处的同时,不增加用户管理的负担,反而降低了数据中心服务器管理的难度。
数据中心虚拟化正在势不可挡地迅猛发展,无论您承认与否,到2009年超过50%的新购PC服务器都将默认进行虚拟化。而通过综合考虑以上的7大要素,您就可以轻松定夺数据中心虚拟化产品的最佳选择。而基于充分考虑和选择的虚拟化解决方案,才能满足数据中心对可靠性、稳定性、兼容性、性能、管理性等各个方面的要求,才能真正享受到虚拟化带来的好处。