虚拟机的测试与负载分配

日期: 2008-05-03 作者:Anil Desai翻译:史静 来源:TechTarget中国 英文

管理性能是系统管理的关键任务。随着虚拟化(多个独立的操作系统竞争系统资源)的应用,衡量和监控你的应用中的实际工作性能更为重要。   但是说起来容易,做起来难。在这篇文章中,TechTarget中国的特约虚拟化专家Anil Desai将介绍有关监控物理机和虚拟机性能的细节和方法。

目的是帮助用户在虚拟化性能和负载分配上做出更好的决定。   监控实际工作性能   当你衡量性能时,牢记重要一点,实际工作的活动能够得到最好的预测。比如,如果你计划将一个生产业务线应用从物理服务器转移到虚拟服务器上,最好提供有关性能的资料,尽量详细地描述生产负载的信息。或者,如果你计划开发一个新的应用,预期的负载信息会有助……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

管理性能是系统管理的关键任务。随着虚拟化(多个独立的操作系统竞争系统资源)的应用,衡量和监控你的应用中的实际工作性能更为重要。

  但是说起来容易,做起来难。在这篇文章中,TechTarget中国的特约虚拟化专家Anil Desai将介绍有关监控物理机和虚拟机性能的细节和方法。目的是帮助用户在虚拟化性能和负载分配上做出更好的决定。

  监控实际工作性能

  当你衡量性能时,牢记重要一点,实际工作的活动能够得到最好的预测。比如,如果你计划将一个生产业务线应用从物理服务器转移到虚拟服务器上,最好提供有关性能的资料,尽量详细地描述生产负载的信息。或者,如果你计划开发一个新的应用,预期的负载信息会有助于做出更好的决定。很常见的是,系统管理员采取折衷的事后解决办法。他们说:“如果有性能方面的问题,用户投诉后,我们就加以解决。”但这就提出了一个如何收集实际的性能数据的问题。

  有些IT企业已经在集中性能监控工具上进行了投资,因此他们能够轻易地收集中央处理器(CPU),存储器,磁盘,网络以及其它的性能数据。总体来讲,这些信息被储存在中央存储器上,一旦需要,立刻就能得出相关报告。

  另一种办法是手动。因为大多数操作系统都提供能够在不同的时间获取性能数据的方法,因此需要做的是设置工具,用来收集相关信息。例如,表1列举出了使用微软的Windows Performance Tool随时间对服务器性能进行追踪。关键的性能数据,如CPU、内存、磁盘和网络利用率能够随时收集并进行分析。你所需要的就是对最高值和平均值予以密切的关注。

虚拟机的测试

  表1:使用Windows System Monitor工具获取性能数据

  运行压力测试(stress-testing)

  如果你计划将一个现有的应用迁移到虚拟环境中去,你可以在迁移之前对其当前的性能状况进行监控。但是如果你是考虑部署一个新的应用,那该怎么办呢?这个时候便需要压力测试。

  有一些应用把性能测试的功能作为源代码的一部分。不具备这项功能的应用可以选择市场上已有的多种负载测试工具。这些工具从免费或低价,到完整的企业性能测试套件,都有所选择。比如,微软提供的Application Center Test工具测试Web应用的性能,并且基于若干有用的测试指标提供报告。

  你可能通过在虚拟机上运行某个应用,并且基于各种不同的负载衡量常见操作的反映次数来预测大概的性能。你的目标首先是保证能够支持可预见的负载。其次,保证不会出现无法预料的稳定性或性能上的问题。

  使用基准程序(benchmark)测试

  众所周知,虚拟化解决方法会产生一定程度的开销,从而导致虚拟机性能的下降。额外的负载是因上下文转接和通过虚拟层重新引导请求的成本而产生的。遗憾的是,很难用一个数字或公式来预测应用在虚拟环境中的表现将会如何。

  复合性能基准(synthetic performance benchmark)测试可以提供帮助。这里的关键词是“复合”,也就是说这些测试不会提供实际的使用信息。相反,在预设的工作负载下,它们会给你硬件性能最大化的信息。基准程序测试工具的一个例子是SiSoft Sandra 2007(SiSoftware提供的一个免费版本)。其它的许多有用工具是第三方的厂商提供的。重要的是选择一种工具,并且坚持使用它,而不是总在不同的工具间进行转换,因为来自不同的产品(通常情况下是版本)的结果不能够进行精确地比较。

虚拟机的测试

  图表2:安装了SiSoftware’s Sandra 2007的物理磁盘基准程序产生的结果

  一般的解决办法就是在物理硬件和虚拟机内运行相似的测试。对于在相同或者相似的硬件配置中运行的测试,它们的比较相对可靠。表格1提供了一个例子,是通过在物理环境和虚拟环境中测试某个单独的操作系统和应用程序而获得的典型的基准测试结果。每一个子系统功能的量化比较可以帮助确定可预见的“虚拟平台开销”量。

虚拟机

  表格1:虚拟机和物理机运行数据比较

  分配虚拟机负载

  可移植性是虚拟化最重要的好处之一。通常来说,把虚拟机从一个主机服务器移动到另一个相当简单。理想的情况下,一旦规划好物理机和虚拟机,你就能够确定常用的资源配置要求。基于这些细节,你就可以在主机上混合搭配虚拟机,以便获得使用物理硬件的最好性能。

  表格2是一些假定的虚拟机负载的高级要求。理想情况下,这些负载将会被分配开来。例如,将CPU要求高的虚拟机安装在相同的磁盘集中的物理主机上。最后的结果就是根据每一种负载的需求,对虚拟机进行更有效的分配。

虚拟机

  表格2:比较不同的虚拟机工作负载的高层次信息

  做出更好的虚拟化决策

  总体来说,只有少数性能测试能够长期保证你的虚拟机在虚拟环境中运行正常。只有将实际工作中的性能测试数据与压力测试结果和复合基准程序相结合,你才能得到虚拟机最佳配置的方法。

作者

Anil Desai
Anil Desai

Anil Desai是独立顾问。他擅长基于微软技术的评估、执行和管理的解决方案。Anil Desai处理微软的Server产品和互联网发展平台,并且管理支持上千台虚拟机的数据中心环境。Anil获得了MCSE、MCSD和MCDBA认证,同时也是微软MVP。 Anil Desai写了很多技术书籍,主要关注微软Server平台、虚拟化、活动目录、SQL Server和IT管理。最近,他写了管理Microsoft Virtual Server的指南和Microsoft Virtual Server脚本指南。他作了许多会议报道,同时也是技术杂志的撰稿人。

相关推荐