免费论文查重: 大雅 万方 维普 turnitin paperpass

谈谈架构云计算架构与企业“云”运用研究

最后更新时间:2024-01-30 作者:用户投稿原创标记本站原创 点赞:6584 浏览:20984
论文导读:
摘 要:云计算是物联时代的热点话题,国内外知名的大企业都在进行云计算架构的相关研究。谷歌、微软、华为均在部署并架构自己的云计算平台,云服务无疑将成IT企业未来的赢利模式。文中主要对云计算架构进行技术分析与应用研究,并对构建企业“云”应用所面临的挑战加以分析,提出了应对方法与实践过程,以便为物联时代企业构建可靠、高效的云服务提供技术支持。
关键字:云;云计算;云存储;SaaS
2095-1302(2013)11-0064-04
0 引 言
云计算是近几年互联网的最热门话题,它是并行计算、分布式计算、网格计算等科学研究领域进入商业化阶段的必然结果。当初提出云计算概念时,主要是基于现有IT构建与使用中的基础投入不能充分利用的情况下,提出买IT设备不能租IT服务的想法,让企业、个人用户将自己数据、计算能力都放在“云”端,用户不管在全球任何地方只要连接上网,就能获取自己数据及计算结果。随着云计算的发展,知名大企业(例如谷歌、微软、华为)纷纷通过构建自己的“云”平台为外界用户提供服务,并出租服务给全世界用户。用户获取IT服务的方式如同目前电信、电网或煤气水电一样,可按照使用量多少付费,而不再通过购买IT产品来付费。
云计算根据服务用户的业务,可划分为基础设施业务服务(IaaS)、平台业务服务(PaaS)和软件业务服务(SaaS)。IaaS服务是指云服务的供应方(如亚马逊)整合自己的硬件与网络设施,并虚拟化此硬件,为企业或个人用户提供虚拟化的硬件服务,用户使用虚拟化的硬件来部署自己网站,实现自己的业务需求。PaaS服务目标是云服务商(如微软)在自己网络中提供虚拟平台(通常是操作系统)并提供应用开发的API,企业与个人用户无需关注平台功能具体实现与部署方式,只需关注如何去使用平台功能,布署自己业务应用即可。PaaS 可以认为是比IaaS高一个层次,提供公用业务服务,更容易实现用户业务。SaaS位于PaaS和IaaS上层,SaaS服务目标是云服务商(如360)主要为企业与个人用户提供云应用相关软件,用户仅仅需要租用这些软件,以完成自己需要的业务即可。或者用户可以从云服务商(如淘宝)建构自己的应用商店,获取云计算SaaS服务。
1 云计算构架研究
云计算层次构架可分为基础IaaS层、平台PaaS层和软件SaaS层,图1所示是其三层架构。
在IaaS层,主要技术是虚拟化技术,没有虚拟化(Virtualization)就没有IaaS层服务。云服务商通过对包括基础设施、系统和软件虚拟化后,让用户对计算机资源的访问和管理加以简化,用户租用的也是虚拟化以后的软硬件资源,利用这些资源提供标准的接口获取相关服务。虚拟化技术包括系统虚拟化,网络、内存、桌面应用、存储虚拟化。可以虚拟化的硬件如计算机的CPU、内存、磁盘空间、网络连接等基础设备,此外还有操作系统等基础软件。IaaS服务是虚拟化技术发展的产物,其计费方式通常以CPU、内存、存储空间和网络流量等方式收费
PaaS的主要技术是分布式并行计算和海量存储技术。其服务是在基础层之上提供中间件,让用户能够快速开发部署SaaS应用,例如,教育培训公司租用云服务商的云平台,并部署、实施自己的远程培训。由于云PaaS平台上层云应用复杂,SaaS层用户自身知识与素质层次不齐,并发访问流量不可预估,因此云平台PaaS层构架需要进一步细分层次,以适应大流量、高响应、可伸缩灵活性服务要求。云平台PaaS的分层如图2所示。
SaaS位于PaaS之上,是基于PaaS开发出来的云应用软件,并可利用IaaS基础设施与PaaS平台,为用户提供最终软件服务。服务对象是面向终端企业或个人客户,故构建企业“云”时,要针对IaaS、PaaS和SaaS特点设计构架。
2 “云”服务构架
“云”服务主要是个人可以将视频文件、照片直接存在租用的“云”存储空间里(如百度云里),不管走到哪里都可以随时浏览照片文件、转发音频并与网友共享视频等。可以通过互联网,利用多媒体语音、电子邮件、微博进行通信。企业不再需要购买大量机器和软件,而是租用“云”服务,降低成本,提升自己竞争力。用户像使用电、水一样,支付租金按需接入“云”,获取各种需要的服务。而且一旦被用户接受并使用“云”服务,用户访论文导读:ogle的Bigtable、Hadoop的HBASE)。最后是文件存储接口,云存储服务中大量采用文件来存储数据,很多时候用户都是以文件方式访问数据。网站上文件应用更普遍,分布式系统存储常常通过读写分离、同步写入来保障最终数据一致性。3.2云数据库存储架构云数据库存储采用的是分布式数据库存储。云存储海量数据时,单个数据库甚
问量和数据量都会呈现爆发性的增长,这就对“云”服务架构提出了更高的要求。 “云”服务架构必须考虑服务的高可用性,即为企业与个人用户提供7×24 h不间断服务,即使发生软件或硬件故障时,也能提供必要的服务。高配置性即按照个性化用户配置特别需求服务。高性能指为用户提供高效的业务处理请求。高扩展性即当负载增加时,能方便扩展以满足用户需求。
3 云存储构架
云计算主要面向大用户、高并发,所以云存储服务的数据量是海量的,而且随着用户量的增加,云存储的数据是积累增长的。因此,构建自己云存储首先要考虑的是日益增长的数据、累积数据的增加以及用户对数据的访问效率。灵活高效 、安全可靠是云服务商在构建云存储时最核心的诉求。

3.1 “云”文件存储构架

“云”中相当的海量数据是以文件系统来存储,譬如临时网页、静态网页、log 和虚拟机磁盘映像。如企业首页,一般是静态网页文件,更改很少,有成千上万用户访问,这个首页文件通常被复制数十份分别放到几十台主机上,用户访问企业首页时,可以去不同的机器上去取,从而极大提升访问效率,这是分布式文件系统在云存储中的典型应用。秉承这一理念,一般分布式文件系统的文件都分为多个备份存储,适合大规模并发读取操作,其效率明显高于传统存储。目前,在云计算中大量采用分布式文件系统是Google的GFS和Hadoop系统。无论是GFS还是Hadoop,虽然具体实现技术不同,但就总体构架来看是相同的,图3所示为GFS与Hadoop两类分布式源于:论文www.7ctime.com
文件的存储结构图。 图3 GFS与Hadoop两类分布式文件存储结构图
在具体的存储层,数据被分成一个一个块,Meta-data是描述具体数据块的定位信息,包含了备份数据块信息。这有点像文件系统的目录节点文件对文件块描述,此处Meta-data是数据存储的目录结构,以数据块为对象进行操作。数据块是数据存储真实场所,通常硬盘被分成许许多多的块,Meta-data对自体存储的信息定位。它分布式的块设备层,提供块设备驱动。
在存储层之上是数据处理层,主要目标是将块存储数据组合成用户需要的文件或对象,数据处理层通常用Map Reduce完成分布式数据处理,大大提升了对大量对象与大文件数据的访问效率。
数据存储通常有3种不同接口方式来实施。首先是较低层对象存储接口,用于程序对象直接存储。其次是NoSQL DB,提供数据库接口(通常都是NoSQL数据库来实施存储的,如Google的Bigtable、Hadoop的HBASE)。最后是文件存储接口,云存储服务中大量采用文件来存储数据,很多时候用户都是以文件方式访问数据。网站上文件应用更普遍,分布式系统存储常常通过读写分离、同步写入来保障最终数据一致性。

3.2 云数据库存储架构

云数据库存储采用的是分布式数据库存储。云存储海量数据时,单个数据库甚至数据库集群容量也不够。常见解决方法是进行分割,如按用户ID把海量数据分割成若干块,每块存储到不同的独立数据库里,数据采用分布式存储。但分布式存储系统也有缺限,如分布式系统不可能同时满足一致性、可用性、分区容错性,最多只能同时满足两个,这样系统在进行分布式处理时会大大增加系统处理的复杂程度,而实际应用中数据存储是需要同时满足一致性、可用性和分区容错性的。分布式存储中采用数据分割的做法大大降低了join操作的效率,也增加系统处理的复杂度。由于分布式存储的不成熟,世界知名大企业针对海量数据分布式存储开发了许多NoSQL数据库,如Google的Bigtable、耶鲁大学的HadoopDB、亚马逊的SimpleDB、DynamoDB等。而NoSQL成为了云计算的主流数据库,表1所列是NoSQL数据库与常用的关系数据库的比较。
与关系数据库存储及文件存储相比,分布式存储引入了NoSQL数据论文导读:4.2安全性由于互联网上用户的行为难以规范和控制,需要对系统和数据设定合理的、可靠的访问权限,防止非法用户闯入和的攻击上一页12345下一页
库和对象存储。分布式存储优势明显,支持大数据并发。对于云中海量数据的存储要进行具体分析,确定最终以文件、对象还是数据库方式来存储。通常情况下,音视频文档及网页数据用文件形式存储,而格式化数据适合以对象或数据库形式保存,对对象实例较多且需要查询的,大多使用数据库方式存储。一般情况下数据都是动态分布到所有节点存储,由于数据是随机存储的,因此数据存储在不同的区域,这样读取写入时花费的时间较多,故数据读写效率都不高。分布式存储提供数据域,存储时可以将数据统一到同一区域,分布式数据库可以将硬盘等分割成不同物理区域(同一区域),从而大大提升数据的访问效率。
表1 NoSQL数据库与关系数据库的比较
Bigtable NoSQL Data ModelRelational Data Model
使用多维排序map数据结构存储数据,每个map中的数值(value)是通过一个组合键值(key)来唯一确定,键值(key)可能组合如列、行、时标等多个因素只能用行和列两个因素唯一确定数据
每个行列可以存储多个数据版本在任何时候,一个行列仅能存储一个数据版本
数据表支持列的数量是不受限制的由schema决定,数据表的列数量是固定的。
每行数据列是可以随意改变的由schema决定,每行数据是固定的
使用列族(column families)作为单元访问数据,列的键值可以存入列家族没有列族(column families)概念
没有多行数据提取,一次仅能提取一个行数据支持一次提取多行数据
同传统数据库Schema设计不同,NoSQL设计是对象模型设计。应用程序需要设计自己对象模型树并针对对象实现流化,就是以数据块方式存储数据对象。通常一个对象就是传统数据库的一个行,对象属性可以认为是数据库的列,而传统数据库中列是需要预先定义且不可改变的。与传统数据库不同,每个NoSQL对象的属性可以动态改变,NoSQL数据库支持每一行数据自定义自己的属性。完全按照程序逻辑设计自己数据对象,来确定数据图。NoSQL数据库支持数据图关系,在获取对象时容易获取到相关对象,从而减少查找,大大提升效率。NoSQL数据库面向“云”服务的海量数据存储。在构架“云”服务时,要根据企业连接的用户并发数及用户需求区别对待不同场景,结合企业应用侧重点,选择最优的存储方案。
4 云架构的质量保证
在云计算的IaaS、PaaS、SaaS层应用服务中,SaaS层提供云计算最多的服务,SaaS层软件服务面向全球用户,不同企业或个人用户之间的数据要进行隔离,故SaaS质量诉求提出更高的要求。SaaS软件服务一旦开始,软件服务绝不能中断,系统就要不中断地运行。同时SaaS软件系统还必需不定期升级、更新,以满足用户新的应用需求。
云服务商提供的SaaS软件除了要满足用户功能性、界面易用性、可用性、可靠性和安全性等要求以外,还要具有可扩充性、移植性,还要降低软件系统的复杂性,使系统更容易维护。SaaS层质量保证可以从以下几方面来考虑。

4.1 可用性

SaaS软件要具有高可用性,也就是要保障7×24 h不中断地运行。网上银行系统质量要求是大于99.999%可用性的客户需求。系统根据不同的时段定义不同的可用性,例如在工作日早上6点到11点期间用户访问量较多,系统的有效性至少要达到99.995%以上,而在11点到第二天早上6点,并发用户量较少,系统的有效性达到99.95%”以上即可。在保证软件可用性同时也要尽可能地提高软件的可靠性。 摘自:硕士论文答辩www.7ctime.com

4.2 安全性

由于互联网上用户的行为难以规范和控制,需要对系统和数据设定合理的、可靠的访问权限,防止非法用户闯入和的攻击论文导读:
,避免数据泄密和系统瘫痪。通常用数据加密、隔离、存储、备份和恢复等保障SaaS系统的安全性。对用户登录、口令保护、身份验证等所有操作要进行全程跟踪记录。要保证软件系统安全性、可靠性与其性能、适用性之间的矛盾统一。

4.3 可扩充性

软件必须保证可扩充性,可扩充性指将来功能增加、系统扩充的难易程度或能力,以适应不断增长的用户需求。软件开发要考虑模块结构简单、模块间耦合性低、多层分布体系架构等。

4.4 可维护性

可维护性指运行环境改变或软件发生错误时,软件进行修改所付出工作量的难易程度。可维护性体现软件开发者理解软件、更改软件和测试软件水平。对于周期性更改的或快速开发的软件产品需要更高的可维护性。
5 企业构建“云”应用所面临的挑战

5.1 企业云架构的服务要求

企业构建“云”服务的成功关键是云服务软件要支持大用户与高并发,如腾讯、360、百度等成功的“云”服务商,其用户数量是以亿为单位计算的。因此,大用户、高并发是上述“云”服务商在开发并提供SaaS服务时首要考虑的问题。由于云服务面向全球用户,中断服务的影响往往是无法估量的,因此企业构建的云服务系统应达到99.99%以上的可靠性与稳定性。目前免费互联网网站的稳定性一般低于99.9%,如果对于B2B的收费用户,则必须提供99.99%以上稳定性才行。
企业构架“云”服务面向数以万计的用户,对系统可维护性与可靠度均要求极高,比如维护一次需中断服务1 min,一个月维护4次,系统保障运行一周不出问题,系统能达到99.99%可靠性。如维护一次需要中断服务20 min,系统保障正常运行5个月以上才允许维护一次,在此情况下要保障系统99.99%的可靠性,可以想象系统实现难度有多大。

5.2 云架构系统的维护周期

企业在构建云系统构架时,要合理设计系统维护周期。需要考虑多个构架因素:各个服务器维护流程,每一台服务器的维护周期,如何保障最短或不中断服务。通常情况下,UNIX/LINUX服务器需要在3个月到6个月重新启动一次,企业在构建云系统时要考虑服务重新启动时间,以保障系统服务可靠和安全。要明确维护周期与单次维护服务中断时间,根据维护要求设计维护系统,减少人为因素导致系统服务中断,保障系统可靠性并降低运维成本。

5.3 云架构系统的维护与服务中断

企业构建“云”是保证云不中断服务,一般情况下是采用备份来实现。当系统升级或维护时,先将系统切换到备份系统,然后对当前系统进行维护或是升级,此时服务中断时间就降低到切换时间(通常为30 s左右),从而提升了系统可靠度,这是“云”服务商常用的维护模式。企业在构架“云”时要尽可能地减短系统切换时间,减少中断服务的影响。必要时可以采用避免中断的服务维护。通常企业构建的云服务中WEB服务器是集群,负载均衡器LVS采用HA。进行中断维护时首先对WEB服务器进行维护,维护时WEB集群系统不会中断,服务能力会有所下降,然后对LVS服务器进行维护。先对备机进行维护,确保备机能够承担服务,然后切换服务到备机,再对主机进行维护,保障系统不中断情况下进行了维护,这些都要在企业构架“云”时精心设计。

5.4 云架构系统的可配置性与系统升级

“云”服务系统配置复杂,升级与更改配置都是不可避免的事情,企业在构架“云”时尽量保障系统可配置与升级的需求,提升系统可维护性。应由系统管理员统一管理系统级配置与升级。对于用户与站点配置,在云系统运维服务上要保证查看方便性,更改与恢复简单性,降低支持与服务成本。

5.5 云架构系统的监控能力

对于“云”服务运营维护来讲,等到系统出错,服务中断时才想到维护,必然导致客户不满,故企业在构架云时一定要设计系统监控系统。云监控应该是覆盖所有云应用服务的软硬件资源。可以使用SNMP监控基本网络参数(流量、丢包、抖动等),也可用SNMP对路由、交换、服务器等物理设备运行情况及网络状况、拓扑变化进行监控。既可以用WebNMS 对服务器硬件如CPU、内存、硬盘等情况监控并提供实时数据报告,也可以对网络、存储、操作系统、数据库、第三方软件等监控和用户数据异常的业务流量监控,保证云服务安全运行。
6 结 语
云计算作为近些年IT行业热点话题,已从概念走入每个人的生活,而如何构建企业云,不仅是考虑技术和管理因素,它更是一项复杂的系统工论文导读:源于:论文格式字体要求www.7ctime.com上一页12345
程。主流的云计算应用也面临很多挑战,各企业在构建云时面临的困境也不相同,标准也不统一,但云架构的思想与技术是相通的。通过分析“云”并构架企业云服务平台,转变售销软件产品为目标的赢利模式为以服务获取长期利益的模式,必将成为企业未来发展的终极目标。
参 考 文 献
. 杨正洪,郑齐心,吴寒. 企业云计算架构与实施指南[M].北京:清华大学出版社,2010.
. 祈伟,刘冰,路士华,等. 云计算从基础架构到最佳实践[M].北京:清华大学出版社,2013.
[3]. 王洪亮. 云计算层次架构[EB/OL]. [2010-11-23].http:///server/zazhi/10-4/chp1

1.htm.

[4]. 机房360. 简析企业云计算架构[EB/OL].[2012-11-07]. http:///news/2012117/n362241879.html.
[5].百度文库. 移动云计算导论—— 企业云计算架构[EB/OL]. [2012-04-08]. http://wenku.baidu.com/view/6036e3166edb6f1aff001f0d.html. 源于:论文格式字体要求www.7ctime.com