论文部分内容阅读
IaaS (Infrastructure as a Service)性能隔离性是指IaaS云计算平台中,虚拟机与虚拟机之间性能的相互影响。性能隔离性越差,表明虚拟机性能越易受其它虚拟机影响,这一方面无法保障虚拟机性能的稳定,难以吸引潜在用户;另一方面,不符合中国国家标准GB/T 31168-2014《信息安全技术云计算服务安全能力要求》对隔离性的要求。所以,有必要对IaaS性能隔离性进行测试。现有性能隔离性测试主要存在两点不足之处:(1)只是针对特定的虚拟化技术,例如Xen、KVM等等。然而,云计算技术不仅涉及到虚拟化技术,还涉及到多种技术,例如分布式资源管理、分布式数据存储、大规模数据管理、负载均衡等等。仅对虚拟化技术进行测试,无法准确测出云平台性能隔离性。(2)规模过小。现有的性能隔离性测试普遍采用3到4台虚拟机进行测试,而云计算的基本特征就是大规模性,伸缩性强。少数几台虚拟机对云平台的影响微乎其微,不足以准确测试云平台的性能隔离性。针对现有性能隔离性测试方法的不足,本文解决思路为:(1)将IaaS云计算平台作为黑盒进行测试,而不仅仅是针对云平台的虚拟化技术,避免云平台异构对测试的影响。虚拟机是IaaS云平台提供的主要产品,无法从虚拟机中获知云平台的系统架构,所以可以利用虚拟机进行测试。(2)根据对影响性能隔离性主要因素的分析,可在IaaS云平台创建大量虚拟机进行测试,弥补现有测试规模过小的问题。所以,本文提出了采用大量虚拟机相互协作的方式,共同完成对IaaS云平台计算、网络、存储等资源的性能隔离性测试。为减轻繁重的测试工作,实现自动化测试和对性能隔离性评估,本文主要内容为:(1)分析了影响性能隔离性的主要因素,以及现有测试方法的不足。(2)设计并实现了一个IaaS性能隔离性测试原型系统,该测试系统采用基于消息中间件的大规模分布式系统架构,可利用被测IaaS平台提供的租户信息自动创建虚拟机,构建测试网络拓扑,并能够灵活定制测试例,使得测试系统不局限于性能隔离性测试。基于消息中间件的分布式架构,使得该系统具备松散耦合、扩展灵活等特性,可适应云计算多租户、资源池化、伸缩性强的特性。(3)给出了测试计算、网络、存储资源的性能隔离性的详细方法。(4)对性能隔离性测试结果进行量化分析,分析是对云平台自身而言,而不是与其它云平台对比,具有一定的客观性。2016年5月完成了对安徽省某地级市电子政务云平台的IaaS性能隔离性测试。测试系统利用云平台提供的虚拟机,自动构建了测试网络拓扑,为测试节点分发了测试例,顺利实现了对被测云服务的CPU、内存、网络和外存(磁盘)的性能隔离性测试。测试结果验证了IaaS性能隔离性测试方法的可行性和测试系统的可用性。