如果你已经实施了服务器虚拟化,你一定意识到整合的重要性,整合是虚拟数据中心最重要的考虑因素,简单地说,整合增加了可用的计算机资源,允许在同一物理服务器上运行更多虚拟机,但即使目前最强大,最适合做虚拟化的服务器,整合也是有局限的,过度整合并不是好事,虚拟环境中的管理员必须考虑数据中心过度整合产生的影响。
整合已经无处不在,以至于我们差点忘了整合的本质意义:整合可以产生经济效益–省钱。在传统非虚拟化环境中,一台服务器通常只运行一个应用,服务器很少使用超过10%的计算机资源,每个新的服务或应用都会需要一定的服务器硬件、网络、电力、制冷和维护等成本。
虚拟化将多个工作负载封装到一台物理服务器,允许管理员使用更多的CPU、内存和I/O资源,需要的物理服务器数量就更少,因此电力和制冷成本也随之下降。
此外,工作负载可以使用实时迁移在物理服务器之间移动,允许实时工作负载平衡,最小化因硬件维护或修理造成的停机时间,Windows Server 2008/R2数据中心版授权计划使在相同服务器上托管虚拟机变得更具性价比。整合可以大大提高计算效率,并可以为企业节省更多成本。
服务器过度整合
正所谓物极必反,服务器整合本是一件好事,但过度整合不仅没有帮助,反而有害,对数据中心和用户来说都不是好事,不过现实中许多组织却会明知故犯,问题在于虚拟化太容易了。
过去,要运行一个新的应用,意味着需要昂贵的服务器和人力成本开支,必须接受财务部门的审核和监管,这个过程可能会持续数周,甚至数月。虚拟化彻底改变了这个现状,现在在物理服务器上创建一个虚拟机只需要几分钟,不涉及购买和安装新硬件,成本只包含操作系统和应用程序许可费,IT决策和响应速度更快,按需分配计算资源已成为时尚。
有些组织常常让服务器的负载过重,他们的目标是100%地榨干服务器的计算资源。Technology Navigator的总裁Todd Erickson说:"如果我购买了四路服务器和Windows Server数据中心版授权,那么我能在它上面创建多少虚拟服务器呢?"显然,这个问题没有统一的答案。
过度整合首先影响到的是性能和稳定性,虚拟机相互抢夺有限的计算资源,应用程序也会打起架来,如备份,灾难恢复和其它数据保护工具都是资源消耗大户,它们是资源争夺的重要参与者。虽然少数极端应用不会产生大的损害,但极端应用太多,虚拟机可能会崩溃,甚至整个服务器都会崩溃,大多数管理员都明白这一点,这与业务收入、客户满意度、数据安全都紧密相关。
托管了大量虚拟机的宿主主机发生故障会影响到所有虚拟机,这些虚拟机必须重新启动,或留在原服务器,或转移到数据中心其它服务器,恢复过程会给整个虚拟环境带来巨大的压力。
过度整合也会伤害到实时迁移功能,虽然大多数管理员不允许自动迁移,但按需转移工作负载是虚拟化的优点毋庸置疑。不过,要想在服务器负载达到其极限时才转移工作负载几乎是不可能的,想象一下服务器出现故障时会发生什么,你不能在其它服务器上启动受影响的虚拟机,因为已经无计算资源可用,只有等服务器修复好后再重新启动。
许多专家建议服务器整合要适度。一般来说,服务器资源利用率达到60-70%即可,真正的百分比还得看你的业务情况,但最终目标是要保留一定比例的计算资源闲置,因为重启虚拟机是很占资源的,此外,保留的资源可用于在服务器之间迁移虚拟机、平衡工作负载或支持维护等工作。
预防服务器过度整合
预防服务器过度整合最简单的办法是从一开始就实施正确的IT最佳实践,Erickson指出了过度消耗服务器计算资源的危害,他提出了一个自动精简配置的解决办法,例如vSphere和XenServer都支持内存过量使用功能,允许管理员供应比物理服务器内存还多的内存。
Erickson说:"没有人把自动精简配置作为最佳实践,如果你正在实施自动精简配置,你很可能已经触及整合的极限,最大的问题是这会影响虚拟机的性能或稳定性。"
很多公司都喜欢在物理服务器上塞满虚拟机,美其名曰资源利用最大化,例如一台物理内存只有48GB的服务器分配了52GB内存给虚拟机,过量使用了4Gb内存,虽然这个范围是可接受的,但服务器已经整合过度了,随时间推移,面临的风险也越来越高。
合适的管理工具可以帮助识别过度整合的服务器,允许管理员在问题变糟之前解决,IT部门不应该等到资源被用光时才采取措施。
康涅狄格州South Windsor镇信息技术主管Scott Roberts说:"你应该每天都打开管理控制台看看资源使用情况,不要等到前方用户反馈问题才去查看"。
管理控制台提供的信息还可以帮助完成其它重要的任务,如工作负载平衡和容量规划、分析虚拟机的分布情况以及它们需要的资源,然后生成建议,这些工具有时可以发现草率或低效的工作负载部署,容量规划需要评估随时间推移资源使用的变化情况,确保资源可满足将来的需要。
分摊费用,防止滥用
限制虚拟机增长过快的另一个方法是考虑或重新评估组织扣款策略,扣款在很多组织中是一个很棘手的问题,在少量服务器上整合多个虚拟机只会使问题复杂化,组织可以将成本分派到使用这些计算资源的各个部门上,只有付费才能使用,部门才能体会到它的价值,也才不会滥用计算资源。
实现虚拟机生命周期管理也有助于预防虚拟机蔓延导致的资源浪费,VMware Lifecycle Manager(生命周期管理器)可以识别可能并不需要的虚拟机,移除这些虚拟机可以为其它虚拟机腾出更多的资源。不仅可以节省内存和CPU,移除不必要的虚拟机也可以节省存储空间,消除多余的备份需求,说不定还可以推迟购买新服务器的时间,从而节省组织IT开支。
最后需要考虑的是新硬件在虚拟服务器整合中的作用,良好的硬件更换周期固然很好,但也容易陷入服务器过度整合的陷阱。此外,在考虑硬件更新时,也要考虑升级网络的最佳时机,如10GbE或FCoE,因为高度整合的虚拟服务器必须要有更多网络带宽支撑。
延伸阅读之一:何时应该避免整合
虚拟化平台在过去几年取得了长促的进步,来自VMware、微软和思杰的虚拟化产品几乎可以支持任何类型的工作负载。一般来说,所有现代应用程序都可以在虚拟机上运行,但在制定转移到虚拟平台的规划时,IT管理员应小心谨慎。
旧应用程序在转移到虚拟平台上时可能会遇到问题,特别是那些定制或需要特殊硬件支持的程序,因为虚拟化在应用程序和底层硬件之间强制增加了一个抽象层,那些需要访问特殊硬件的应用程序可能会发生故障或遭遇不可接受的性能问题。
一个解决办法是使用新的编程语言重写应用程序,改造成与硬件无关的版本,但这种方法的成本很高,而且也很耗时。第二个办法是购买可以自己修改的商业产品替换定制的应用程序,但需要的时间和成本也很高,说不定和修改现有定制应用程序的时间和成本相差无几。
现实中,最简单的办法就是让这些应用程序还是运行在非虚拟化的物理服务器上。此外,如SQL Server或Exchange Server耗资源的应用程序是可以放在虚拟机上运行的,但如果在相同物理服务器上还部署了其它虚拟机,则会存在性能问题。因此,资源密集型应用程序应最低限度地实施整合。
测试是整合过程重要的组成部分,应该脱离生产环境搭建起专用的实验室环境,通过测试验证应用程序是否适合部署到虚拟环境中,确定其需要的资源、性能表现和在虚拟环境下的互操作性。
延伸阅读之二:跟踪整合和性能
不管你要怎么整合服务器,都应该使用基准测试工具或其它工具得出性能报告或计算资源水平,这样用数字展示出应用程序性能或用户体验的效果会很佳。
在收到警报或用户投诉时查看基准测试报告,通过基准计数器差异可以很快确定问题的根本原因,管理员可以观察资源使用的变化情况,得出是否需要升级或新购服务器,还是重新平衡工作负载或做出其它容量规划决策。
总之,服务器上托管的虚拟机越多,对服务器做任何调整受影响的应用也就越多,幸好三大主要虚拟平台都已经有对应的基准测试和报告工具,也有许多第三方工具可供选择,如Novell的PlateSpin Recon和VK ernel Capacity Analyzer。