云计算系统测试技术基础

1.什么是云计算

云计算是云计算(Grid Computing )、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机技术和网络技术发展融合的产物。它旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能力的完美系统,并借助 SaaS、PaaS、IaaS等先进的商业模式把这强大的计算能力分布到终端用户手中。从狭义上说,云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源。从广义上说,云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务。总的来说,云计算具有以下特点:

资源池:服务提供商的资源被池化,并通过多租户模式为客户提供各种服务,并根据客户的需求动态提供物理或虚拟化的资源。这些资源是位置独立的,因为用户并不确切的知道服务提供商的资源在那里,但是客户可以指定较高层次的位置,例如国家、州或数据中心。这些资源包括存储、处理能力、内存、网络带宽和虚拟机。

按需自助服务:客户可以按需、自动地获取计算能力,例如服务器计算时间和网络存储,而不需要和服务提供商进行人为交互。

快速弹性:服务可以快速、弹性的获得,某种情况下是自动化的,规模可以快速扩大或缩小。对于客户来说,供应能力似乎是无限的,可以任意购买,随时购买。

广泛的网络接入:计算能力可通过网络,并通过标准机制进行访问,使得各种瘦(或胖)客户端(例如移动电话、便携式电脑或PDA)平台均可以使用。

按使用量计费的服务:云系统对服务(存储、处理能力、带宽、活动用户帐户)进行适当的抽象,并提供服务计量能力,以自动控制和优化资源使用情况。资源的使用可以检测、控制、统计,为客户和服务商提供透明的服务使用量。

2.云计算典型系统

1)Google云计算平台

Google公司有一套专属的云计算平台,这个平台先是为Google最重要的搜索应用提供服务,现在已经扩展到其他应用程序。Google云计算基础平台主要包括3个部分:Google File System 文件系统、Map/Reduce编程模式、大规模分布式数据库BigTable。

Google File System 文件系统

为了满足Google迅速增长的数据处理需求,Google设计并实现了Google文件系统(GFS,Google File System),它是开发的基于Linux的专有分布式文件系统。GFS专门为Google的核心数据即页面搜索的存储进行了优化。

MapReduce分布式编程环境

为了让内部非分布式系统方向背景的员工能够有机会将应用程序建立在大规模的集群基础之上,Google还设计并实现了一套大规模数据处理的编程规范Map/Reduce系统。这样,非分布式专业的程序编写人员也能够为大规模的集群编写应用程序而不用去顾虑集群的可靠性、可扩展性等问题。

分布式大规模数据库管理系统BigTable

由于在Google的数据中心存储PB级以上的非关系型数据时候,比如网页和地理数据等,为了更好地存储和利用这些数据,Google构建了弱一致性要求的大规模数据库系统 BigTable。BigTable不是一个关系型的数据库,它也不支持关联(join)等高级SQL操作,取而代之的是多级映射的数据结构,并是一种面向大规模处理、容错性强的自我管理系统,拥有TB级的内存和PB级的存储能力,使用结构化的文件来存储数据,并每秒可以处理数百万的读写操作。

2)亚马逊弹性云EC2

亚马逊(Amazon)将他们的云计算平台称为弹性计算云(elastic compute cloud,简称EC2),是最早提供远程云计算平台服务的公司。Amazon将自己的弹性计算云建立在公司内部的大规模集群计算的平台上,而用户可以通过弹性计算云的网络界面去操作在云计算平台上运行的各个实例(instance)。用户使用实例的付费方式由用户的使用状况决定,即用户只需为自己所使用的计算平台实例付费,运行结束后计费也随之结束。这里所说的实例即是由用户控制的完整的虚拟机运行实例。通过这种方式,用户不必自己去建立云计算平台,节省了设备与维护费用。

3) 微软Azure 平台

Windows Azure Platform 是一个运行在微软数据中心的云计算平台。它包括一个云计算操作系统和一个为开发者提供的服务集合。开发人员创建的应用既可以直接在该平台中运行,也可以使用该云计算平台提供的服务。相比较而言,Windows Azure platform延续了微软传统软件平台的特点,能够为客户提供熟悉的开发体验,用户已有的许多应用程序都可以相对平滑地迁移到该平台上运行。另外 Windows Azure Platform还可以按照云计算的方式按需扩展,在商业开发时可以节省开发部署的时间和费用。Windows Azure platform包括Windows Azure、SQL Azure和Windows Azure platform AppFabric。Windows Azure可看成一个云计算服务的操作系统;SQL Azure是云中的数据库;AppFabric是一个基于Web的开发服务,它可以把现有应用和服务与云平台的连接和互操作变得更为简单。 AppFabric让开发人员可以把精力放在他们的应用逻辑上而不是在部署和管理云服务的基础架构上。

4) IBM“蓝云”计算平台

IBM的“蓝云”计算平台是一套软、硬件平台,将Internet上使用的技术扩展到企业平台上,使得数据中心使用类似于互联网的计算环境。“蓝云”大量使用了IBM先进的大规模计算技术,结合了IBM自身的软、硬件系统以及服务技术,支持开放标准与开放源代码软件。“蓝云”基于IBM Almaden研究中心的云基础架构,采用了Xen和PowerVM虚拟化软件,Linux操作系统映像以及Hadoop软件(Google File System以及MapReduce的开源实现)。“蓝云”计算平台由一个数据中心、IBM Tivoli部署管理软件(Tivoli provisioning manage)、IBM Tivoli监控软件(IBM Tivoli monitoring)、IBM WebSphere应用服务器、IBM DB2数据库以及一些开源信息处理软件和开源虚拟化软件共同组成。“蓝云”的硬件平台环境与一般的x86服务器集群类似,使用刀片的方式增加了计算密度。

3.云计算系统故障事件

云计算的核心思想,是将大量用网络连接的计算资源统一管理和调度,构成一个计算资源池向用户按需服务。它为用户提供了一个高性能计算环境,高可伸缩的弹性的可计算平台,准确、安全、可靠而稳定的计算资源和存储资源。然而,近年来国际主流的云计算系统和应用均暴露出不同程度的可靠性和安全性问题,例如:

1)Google应用引擎平台宕机

2009年7月3 日,Google App Engine遭遇“数据仓库操作延迟增加、错误率上升等故障。” 这次故障持续了约6小时更糟糕的是,在Google更新Google Groups上的消息时,App Engine Status网页却因这次故障而完全无法访问。据悉,这次Google App Engine故障不仅造成用户的经济损失,甚至影响到了Mac版Chrome浏览器的开发。2010年02月25日,Google支持第三方网络应用的 App Engine平台再次发生宕机故障,所有存放的第三方应用陷入瘫痪,殃及绝大部分网络应用。整个平台瘫痪时间超过两小时。

2)Google Gmail和日历服务中断

2010年2月23 日,Google Gmail出现故障,持续时间长达两个半小时,这次故障导致全球数以百万计的用户在几小时内无法访问账户,经济损失无法估量,由于此次服务器故障,Google将针对企业的Google Apps高级版订户的付费时间延长十五天。2010年10月12日到2010年10月19日,Google的日历服务中断了8天。这起事故让0.2%的 Google日历用户中断了多天的访问。

3)Google Voice服务宕机

2010年11月23日,Google Voice网络电话服务再发生宕机事故,部分Google Voice用户无法拨出或接听电话。这次宕机事故只是近期Google Voice多个问题中的一个。2010年11月2日和5日都发生了类似的宕机事故。

4)亚马逊S3服务故障

Amazon的云存储平台Simple Storage Service(S3)在2008年7月出现了服务故障,故障持续了8个小时之久,依赖S3进行文件存储的在线公司因此蒙受了损失。S3在2月份的时候也出现过一次类似的故障,当时该故障持续了两个小时。

5)亚马逊EC2云计算服务遭到僵尸网络攻击

2010年4月,亚马逊基于云计算的EC2(弹性计算云)服务在一个星期内接连发生了两起故障,一起是僵尸网络引起的内部服务故障,另一起是在弗吉尼亚州的一个数据中心发生的电源故障。

云计算代表IT 领域向集约化、规模化与专业化道路发展的趋势,是一种面向Internet的IT资源交付和试用模式,但它在整合IT资源、提高资源利用率的同时,其性能、安全可靠性问题备受关注。这些问题都很大程度上制约了云计算产业的发展,成为实现大规模云计算的障碍。因此,专业性的云计算系统测试是解决目前云计算故障问题的一个重要手段之一。但云计算系统的复杂性和对于用户的不透明性也决定了第三方测试的难度,那么如何来对云计算系统进行测试呢?将在下节谈谈我对云计算测试的看法。

4.云计算系统测试

云计算系统中大量融入了面向服务的体系结构,用户可以通过该体系结构来实施、部署、执行和管理自己所提交的作业,可以说云服务是构成云计算系统的基本功能单元。云服务测试也成为云计算系统测试的基础部分。同时,云计算的目的是提供实现高性能计算、可靠、稳定而安全的计算环境,云计算的性能测试和安全可靠性测试也是云计算软件测试的重要内容。

1)云计算系统功能和标准符合性测试

云计算系统软件的发展与应用与其相应的技术标准或规范是分不开的,衡量一种云系统是否能够符合用户需求,从很大意义上讲就是在衡量它们所提供的服务的正确性以及是否符合技术标准或规范。然而,目前云计算相关标准不是很统一,各有说法百家争鸣,但就云计算特征和主要功能来说,各家还是比较统一的,如分为三个层次:SaaS、PaaS和 IaaS,要实现资源池及其调度管理、任务的分解、调度和执行、按需自助服务、服务计费、工作流管理、虚拟化平台以及门户应用等一些主要功能。如果就 SaaS来说,可以测试的是Web服务测试,一个很重要的方面就是测试其是否符合规范,包括UDDI,XML,SOAP,WSDL等,只有符合这些规范, 才能向用户提供正确的Web服务,因此Web服务测试所使用的方法和技术可以被云服务测试所借鉴和引用。云计算服务测试的目标是确保云服务为给定的请求传递期望的应答.然而对于大多数云计算服务,准确预测客户端将会发送什么类型的请求、列举所有可能的请求是不可行的,因为请求输入的范围空间可能非常大。因此,验证云计算服务是否可以处理范围广泛的请求类型和参数非常重要。

2)云计算系统性能测试

云计算性能测试的目标是验证在各种负载情况下云计算服务的性能。进行性能测试的最佳方式是使得多个测试客户运行完整的云服务测试,包括请求提交和应答验证。性能测试不仅通过指定的并发请求数目来监视服务器的响应速率,还要测试各类负载是否导致云服务功能性故障。因此,要求云服务性能测试工具能够设置或者定制性能测试场景(主要是指定负载等级、负载分布等)来执行云性能测试套件。根据高性能计算系统常见的应用场景,云计算系统性能测试可设置的场景主要包括bell曲线、缓冲区测试、线性增加和稳定负载。这样,通过使用不同的测试场景来使用不同的测试用例,同时还应支持跨越远端的云服务器分布虚拟用户,从而模拟极限测试与压力测试。

3)云计算系统安全可靠性测试

云计算系统安全可靠性测试采用主要是以系统评估为主,测试为辅的方法。因此,也需要对现有的云计算系统进行提炼,总结出普遍适用的云计算模型,进而能通过云计算模型得到云计算的安全可靠性模型,在这个模型下对云计算系统的安全可靠性进行评估。云计算系统的安全可靠性模型主要是由一些评价指标构成,这些指标要能完整地描述系统可靠性要求的各个方面,指标之间应减少交叉,防止相互包含,要具有相对独立性。模型的结构也决定了指标之间的组合关系,这些关系与云计算系统的应用类型有关。测试人员通过测试或评估收集这些指标值,这些指标值通过模型提供的结构组合在一起,它与其他测试的结果最终构成了对云计算系统的安全完整得评价。

本文作者:English0523

来源:51CTO

时间: 2024-12-02 17:29:16

云计算系统测试技术基础的相关文章

云计算支撑技术:英特尔硬件虚拟化盘点

从上个世纪80年代开始,我们便为软件.硬件系统的可扩展性伤透了脑筋.数量繁多的硬件种类.软件平台,使得我们不得不进行多种系统之间的移植工作:而后来随着网络技术的发展和PC的发展,我们对本地计算处理速度和轻便性的要求也越来越高.在诸多可解决我们应用矛盾的技术中,云计算是目前最直接.最理想化的技术之一.云计算是虚拟化.公用计算.IaaS,PaaS.SaaS等概念混合演进并跃升的结果,而虚拟化则是云计算的技术基础. 虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模

视频会议新格局确立 云计算开启技术叠加时代

随着计算机.通信.互联网以及云计算.大数据等技术的飞速发展,曾经"遥不可及"的视频会议正由专业领域.大型企业等高端用户向中小企业以及普通个人用户拓展.方便性.快捷性.易用性成为未来视频会议发展的大趋势.在新的技术浪潮下传统视频会议已被云视频会议所取代,并向着多元化方向发展未来将有更多新技术被叠加,视频会议将进入加速创新时代. 传统视频会议消亡倒计时 云视频技术能否建立新格局? 根据思科可视化网络指数显示,视频在互联网总流量的占比从2008年的35%增长到目前的75%,预计在2020年,

云计算软件技术:为云计算服务提软件支撑的软件技术

现在这段时间"云计算"非常的火热,已经成为了IT界的时髦语!很多人说"云计算"是炒作,对此不屑一顾.但也有人认为这是未来发展的趋势.那么我的观点是什么呢?都要写"云计算概念大全",当然是云计算忠实支持者了! 云计算是什么? 要回答这个问题,首先得知道:在计算机里,只有程序和数据之分.因而,从程序和数据的角度来讲:云计算就是统一部署的程序.统一存储并由相关程序统一管理着的数据!这"统一"反映了"集中"&quo

发展“车联网”产业成都技术基础坚实

如同阿里巴巴.腾讯.京东.华为等互联网知名企业同样选择,乐视在成都悄悄地建成了其车联特殊技术研发中心.研发的全新生态互联产品ecolink欲比肩苹果CarPlay,未来计划搭载更多汽车产品. 互联网公司正在成为汽车业的"野蛮人".3月16日,乐视车联在北京举办"前所未见"战略发布会,首次向外界公开乐视车联的战略和组织,正式发布了两款"汽车可穿戴设备"--乐视行车记录仪和乐视轻车机套装. 最引人瞩目的是,本次发布会上,乐视车联隆重推出名为ecoli

云计算开源联盟新晋八家理事会员单位 —— 云计算开源技术产业链日渐完善

12月2日,云计算开源产业联盟(OSCAR)在北京民族饭店召开理事会,8家单位通过新晋理事会员选举,成功由全权会员转成理事会员,OSCAR理事会员数量从之前的14家增至22家.这标志着OSCAR影响力的进一步提升,同时也充分体现了我国企业对于云计算开源技术的重视,以及国内开源企业实力的快速提升. OSCAR是业界首个专注于云计算市场的开源产业联盟.OSCAR在工业和信息化部信息化和软件服务业司指导下,由中国信息通信研究院联合多家云计算开源技术公司发起,联盟旨在推进OpenStack等开源技术在中

围绕云计算 虚拟化技术又呈现新面貌

本文讲的是围绕云计算 虚拟化技术又呈现新面貌,[IT168 资讯]虚拟化技术的三项基本使命-即作为客户端技术,作为服务器技术和作为网络技术,如今正在围绕云计算理念相结合在一起. 起源于X86服务器的虚拟化技术已经快速扩展到存储和网络领域.如今虚拟化技术的应用范围已经涵盖桌面系统,在处理器,内存和交换机上也都可以看到虚拟化的身影.虚拟化技术正在向硬件和软件应用工具渗透,甚至延伸到了智能手机领域. 高科技咨询公司CIMI的首席执行官汤姆.尼勒将虚拟化的三项基本使命描述为客户端技术,服务器技术和网络技

浪潮信息:今年是云计算产品技术布局年

康书伟 浪潮信息(000977)总经理王恩东5月18日在第三届中国云计算大会上表示,2011年将成为浪潮云计算产品技术布局年,继相继推出8路服务器.海量存储.云海集装箱数据中心之后,国内首款自主云数据中心操作系统也即将面世,浪潮将成为国内在云计算软.硬件完成整体布局的厂商.随着浪潮重点打造的32路高端容错服务器推向市场,浪潮信息将形成与国际领导厂商在云基础架构层的比肩之势,为中国云计算实际落地应用提供完全自主化的战略级装备. 王恩东在发言中首次公开全面阐述了公司全面转型云计算战略的举措,并提出未

> 第二章 NGWS Runtime 技术基础(rainbow 翻译) (转自重粒子空

<<展现C#>> 第二章 NGWS Runtime 技术基础(rainbow 翻译)   出处:http://www.informit.com/matter/ser0000001/chapter1/ch02.shtml 正文: 第二章  NGWS  runtime 技术基础     既然你已经具有了C#全面的印象,我也想让你了解NGWS runtime的全貌.C#依靠由NGWS提供的运行时:因此,有必要知道运行时如何工作,以及它背后所蕴含的概念.    所以,这一章分为两部分--它

SEO技术基础一

第一部分:SEO基础 第二部分:SEO策略 第三部分:排名提高 第四部分:SEO赚钱 第一部分的内容 主要是讲影响搜索引擎排名的各种因素,以及关键点 第二部分主要是讲SEO策略 SEO策略比SEO技术还重要,能不能*SEO达到很好的营销效果,主要*SEO策略 第三部分:排名提高 网站优化好只是一个基础,要提高排名,还需要做很多工作,这一部分主要讲这方面的技巧 第四部分:SEO赚钱 如果不能够用SEO技术很好的赚钱,学了也是白学,这部分主要是和大家分享各种SEO赚钱的方法以及具体操作 今天在这里,