虚拟计算系统的自动化测试平台的制作方法

文档序号:6336998阅读:533来源:国知局
专利名称:虚拟计算系统的自动化测试平台的制作方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种虚拟计算系统的自动化测试平台。
背景技术
计算系统虚拟化是指将一台物理计算机系统虚拟化为一台或多台虚拟计算机系 统,每个虚拟机都拥有自己的虚拟硬件(如CPU,内存,设备等),来提供一个独立的虚拟机 执行环境。虚拟机中的操作系统认为自己仍然是独占一个系统在运行。虚拟化技术具有一 系列特有的自身优势1)封装性虚拟机快照是将运行中的一个虚拟机的某个时间点的状态抓取下来,就像抓拍一 张相片一样。虚拟机克隆就是从一个虚拟机的执行环境复制出一个或多个相同的虚拟机。 虚拟机的挂起,暂停一个运行中虚拟机,将其运行环境保存在磁盘上。优秀的封装性使得虚 拟机的保存更容易,从而在灾难恢复中发挥更大的作用。虚拟机的快照和克隆等使得部署 各种软件运行环境更容易,使得软件开发的测试和调试更为快捷方便。2)多实例在一个计算机上运行多个虚拟机使得资源的调度更加优化。不同的虚拟机有不同 的繁忙和空闲时段,忙闲交错使得单个计算机的系统资源利用率大大提高。产业界大力推 广的服务器整合(server consolidate),将多个物理服务器合并到少数几个计算机上,作 为虚拟机来运行。这样可以用更少的服务器获得同样的整体性能,并大大提高计算机性能 的利用率。伴随着处理器性能的不断提升,特别是多核时代的到来后,虚拟化服务器整合比 也在不断提高。由于虚拟化技术拥有高效,节能省电和节省空间等多种优势,无论是大型 企业数据中心整合还是中小型企业的经济型服务器选型,虚拟化都在其中扮演着重要的角 色。事实上,实施服务器虚拟化可以让客户获得更大的效益。虚拟化技术能够为公司节约 大量的成本,降低了系统管理成本,节约人力,提高旧业务系统的性能,还降低了新系统的 开发部署成本。3)隔离性如果一个虚拟机的操作系统由于故障或受到恶意破坏崩溃了,其他虚拟机中应用 程序仍然可以继续正常运行,故障或破坏被天然地隔离在一个虚拟机内。这种隔离性支持 多个用户在同一台物理服务器上对不同的应用程序进行独立的操作。4)硬件无关性虚拟化是资源的逻辑表示而不受物理限制的约束。由于虚拟化层的抽象,虚拟机 与底层的硬件没有直接的绑定关系。因此,尽管目前的计算机体系结构呈现很大的异构性, 但是只要另一台物理机上提供相同的虚拟硬件抽象层,一个虚拟机就能无缝地迁移过去。 有了虚拟机的迁移技术,计算机需要硬件维护时,可以将其上运行中虚拟机暂时迁出,等维 护结束后再迁回。虚拟化技术实现了资源的逻辑抽象和统一表示,在服务器,网络及存储管理方面都有着突出的优势,大大降低了管理复杂度,提高了资源利用率和运营效率,有效地控制了 成本,有利于节能环保,对大规模数据中心的管理有重要意义,同时也是实现云计算、绿色 计算的支撑技术。由于VMM(Virtual Machine Monitor)作为新生事物,专门针对它的性能评测工具 开发尚在早起阶段。基于传统操作系统的性能评测方法,即通过在虚拟机上运行传统操作 系统的性能评测工具,尽管并不能完全反映VMM的性能,但是通常情况下,它在一定程度上 还是反映了 VMM的某方面性能。而且,基于传统操作系统性能评测工具普遍被大家所熟悉, 运用起来简单方便。虚拟环境下的时间虚拟化,尤其是对完全虚拟化下的客户机时间虚拟化本身就存 在种种挑战。利用Benchmark进行性能评测时,必须注意到有客户机的时间虚拟化不准确 而造成的误差。另外由于虚拟环境下的客户机处理器事实上靠分时共享物理处理器资源实 现,因此对于评测工具中甚短的(例如几个或几十个毫秒)任务所花费时间的测量具有很 大的颠簸性,如果在这段甚短任务的执行中客户机处理器被调度出去,它被测量到的延迟 就会很大,反之可能很小。若果一个评测工具主要依靠测量甚短任务的吞吐量或者延迟来 衡量,这个评测工具对虚拟环境的性能评测具有很大的随机性,因而也是不可靠的。当前虚拟机的测试方法较少而且分布零散,难以进行系统、准确的测试。一般使用 测试脚本或者手工执行,操作繁琐,耗时耗力,效率较低,需要花费测试人员大量的时间和 精力,而且不利于测试过程重复执行。手工命令行执行测试,无法便捷得监控待测机器测试 过程中性能变化。也缺乏对测试结果直观和可视化的呈现。测试结束后,测试脚本和测试 结果文件零散地分布在各个待测机器上,不利于对测试结果整合,进行对比,叠加分析。测试工作不是在一定规则的指导下进行,不便于执行批量,定时测试,缺乏对测试 类型的分类和总结,不能对历史的测试结果数据进行对比分析。缺少对于待测主机的统一 管理,以及测试访问权限的控制,不能对测试过程进行集中化管理。不能对测试脚本统一管 理,按照测试目标制定测试计划,自动向待测机器分发脚本,可以对测试脚本重复使用。性 能监控模块不够完善,缺乏可以实时性能监测多个虚拟机的系统。另外目前测试软件,配置 安装过程十分复杂,操作难度大,有较高的入门门槛;而且收费高昂,一般机构难以承受。

发明内容
本发明提供了一种虚拟计算系统的自动化测试平台,该平台可以对虚拟机性能自 动测试,对测试过程中的各个元素集中管理,工作效率高。一种虚拟计算系统的自动化测试平台,包括连接各虚拟计算系统的控制节点以及 嵌入虚拟机算系统实时采集其性能参数的采集模块,所述的控制节点包括监控模块,实时接收所有虚拟计算系统的性能参数;分发模块,将测试脚本分发给待测的虚拟计算系统;收集模块,收集所有虚拟计算系统运行测试脚本后得到的结果;分析模块,对收集的结果进行分析。所述的性能参数包括CPU利用率、内存利用率、网络通信流量和磁盘IO状态。上述测试平台还包括绘图模块,根据监控模块接收的性能参数绘制成性能变化曲 线,能够实时直观检测。
相对于现有方法,本发明平台支持自动化完成包括建立、部署、执行测试活动,收 集、分析、表现测试结果在内的整个测试流程;支持在测试过程中实时显示性能变化;通过 对测试流程和测试数据的抽象,支持可视化友善地表现测试结果;同时具有较强的通用性 和可扩展性。


图1为本发明测试平台的结构示意图;图2为本发明测试平台工作流程图。
具体实施例方式如图1所示,一种虚拟计算系统的自动化测试平台,主要包括两大部分,一是设置 在虚拟计算系统内部的采集模块,二是外部的连接各个虚拟计算系统的控制节点,控制节 点包括监控模块、绘图模块、分发模块、收集模块以及分析模块。采集模块(agent)主要用于实时采集计算机系统的常规性能参数,如CPU利用率、 内存利用率、网络通信流量和磁盘IO状态等,监控模块主要是用于收集采集得到的常规性 能参数,通过绘图模块显示输出。分发模块主要是将测试脚本分给相应的虚拟计算系统,虚拟计算系统运行后将测 试结果传回给控制节点,控制节点的收集模块收集后并进行存储、管理,分析模块主要是对 测试结果进行分析,得出分析结果并输出。该平台的最大优点在于可以集中对虚拟计算系统进行自动化测试,其测试流程如 图2所示,首先人为设定测试场景,它表示测试主机、测试方案和测试程序的集合,接着新 建测试活动,同时发出信号启动监控模块,监控模块接收agent采集的常规性能参数,输出 给绘图模块(图中未示出)如在一台物理机上安装并启动两台虚拟机,物理机配置具体为IntelQ66004核 处理器,主频为2. 4GHz, 2级Cache为4MB ;内存4G ;物理机上使用Xen 3. 3. 1和Linux内核 2. 6. 2 。2台虚拟机配置均为1个VCPU,内存大小为1GB,并将虚拟机分别绑定到2个共享Cache的逻辑核CPU2 和CPU3上,将Cache按照3 7的比例进行划分,虚拟机1限制使用Cache的前30%,虚拟 机2限制使用Cache的后70%。新建测试活动后,按照要求分发模块分别将负载bzip2和mile在虚拟机1和虚拟 机2中运行,收集模块收集负载bzip2和负载mile的执行完成时间。测试结果如下〈result〉capal-401. bzip211. 0capa2-433. mile 17. 9capal_12_lines_in 1585capal_12_rqsts 19020capa2_12_lines_in 5456
capa2_12_rqsts 32569分析模块得出负载bzip2的执行完成为11. Os,负载mile的执行完成时间为 17. 9s,并对两个虚拟机做出性能评价。由此可见,上述平台可以轻易对一组虚拟机系统进 行自动测试,并且可以自由选择方案,结果也是自动输出,便于操作。
权利要求
一种虚拟计算系统的自动化测试平台,其特征在于包括连接各虚拟计算系统的控制节点以及嵌入虚拟机算系统实时采集其性能参数的采集模块,所述的控制节点包括监控模块,实时接收所有虚拟计算系统的性能参数;分发模块,将测试脚本分发给待测的虚拟计算系统;收集模块,收集所有虚拟计算系统运行测试脚本后得到的结果;分析模块,对收集的结果进行分析。
2.根据权利要求1所述的自动化测试平台,其特征在于所述的性能参数包括CPU利 用率、内存利用率、网络通信流量和磁盘IO状态。
3.根据权利要求1所述的自动化测试平台,其特征在于还包括根据监控模块接收的 性能参数绘制成性能变化曲线的绘图模块。
全文摘要
本发明公开了一种虚拟计算系统的自动化测试平台,包括连接各虚拟计算系统的控制节点以及嵌入虚拟机算系统实时采集其性能参数的采集模块,所述的控制节点包括监控模块实时接收所有虚拟计算系统的性能参数的监控模块;将测试脚本分发给待测的虚拟计算系统的分发模块;收集所有虚拟计算系统运行测试脚本后得到的结果的收集模块;对收集的结果进行分析的分析模块。本发明平台支持自动化完成包括建立、部署、执行测试活动,收集、分析、表现测试结果在内的整个测试流程;支持在测试过程中实时显示性能变化;通过对测试流程和测试数据的抽象,支持可视化友善地表现测试结果;同时具有较强的通用性和可扩展性。
文档编号G06F11/22GK101986280SQ20101056397
公开日2011年3月16日 申请日期2010年11月29日 优先权日2010年11月29日
发明者何钦铭, 叶可江, 李星, 陈建海, 陈虒鼎 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1