首页 理论教育 云计算架构简介-云计算应用开发实践

云计算架构简介-云计算应用开发实践

时间:2023-11-20 理论教育 版权反馈
【摘要】:基础设施即服务在云计算体系中,IaaS处于最底部。关于云计算架构,笔者是根据自己的工作经验与体会得到的,欢迎各位读者的批评指正。笔者的观点可以总结为如图1-17所示的云计算架构。图1-17 云计算架构从使用的角度来看,最终使用者主要使用SaaS上面的应用,开发人员需要使用PaaS与SaaS提供的相关资源来创建应用,而系统、网络管理员主要关心IaaS与PaaS的搭建。这也是云计算的魅力所在。

云计算架构简介-云计算应用开发实践

云计算中有几个关键的名词,基础设施即服务(IaaS),平台即服务(PaaS),软件即服务(SaaS),资源供应(Provisioning),资源安全(Security)。

很多资料把XaaS解释为“X即服务”,笔者觉得译为“X作为服务”可能更易于理解,因为软件、平台或者基础设施本来并不是服务,只有经过一定改造,它们才会成为一种能为多人使用的服务。

(1)基础设施即服务(IaaS)

在云计算体系中,IaaS处于最底部。主要指的是硬件设备,比如计算机、交换机、路由器、防火墙、机架、因特网、局域网、存储设备。主要用到的技术包括虚拟主机技术,操作系统以及各种硬件管理技术。在宠物商店的例子里,通过安装虚拟化软件具有了提供虚拟主机的能力,相当于创建了一个简单的可以提供硬件服务的系统。

(2)平台即服务(PaaS)

平台即服务(PaaS)处于基础设施即服务(IaaS)的上层。主要指的是网格计算软件、并行计算软件、负载均衡软件和数据库等仍需要在原有基础上进行开发才能使用的资源。在宠物商店的例子里,安装在虚拟机的操作系统和Tomcat服务器就相当于用户开发平台,在这个平台上我们可以部署各种应用程序。

(3)软件即服务(SaaS)

软件即服务(SaaS)处在最高层,这样的软件不需要用户做过多开发就能直接使用,比如博客管理系统、内容管理系统、企业资源计划系统(ERP)、科学计算软件(比如Mat-lab),办公软件(Google Doc,MS Office)等。在宠物商店的例子里,我们将从Internet上下载的宠物商店应用程序部署到Tomcat应用服务器上供客户直接使用,就相当于提供了一个软件服务。

事实上在PaaS与SaaS之前,软件行业曾提出过类似的概念,称为SOA,即面向服务的应用,笔者从实践的角度认为它是PaaS与SaaS的结合体,因为当时开发SOA程序主要就是使用公开协议在某种服务器上提供应用服务供更多的人或其他应用程序使用,而能接受与解释特定协议的服务器,在云计算架构中算是一种提供了平台服务的PaaS,运行在这种服务器上的供更多人与设备使用的应用则可视为SaaS。

当然由于在本章中我们提供的服务只能为自己服务,所以只能叫做私有云系统。另外,笔者认为上面的三层在真实的云计算环境中是可以独立存在的,我们可以逐层搭建云系统,但如果只搭建其中的一层或几层,只要它可以满足按需分配资源的要求,仍然可以说它是一种云计算化的系统。可能有些读者不这么认为,但笔者认为,在真实的应用环境中很难全面部署一个纯粹的云系统,我国从20世纪80年代开始建设信息系统,今天大部分的企业、组织以及政府已经部署了很多成熟的信息系统,它们被部署在多种多样的硬件以及软件平台上,想要引入云计算不可能一蹴而就。需要根据现有系统的架构、分析用户最迫切需要解决的问题,然后寻找可能的解决方案。没有适合所有用户情况的万能解决方案,云计算也是一样,但是云计算中的很多技术和解决方案确实可以帮助人们解决很多现实问题。

除了上述三个云计算层次外,还有两个名词,可能各位读者不太熟悉,它们是资源供应(Provisioning)和资源安全(Security)。(www.xing528.com)

(4)资源供应

资源供应主要解决如何部署,相信通过第1章的介绍,读者已经感觉到搭建一个按需分配资源的应用需要花多少功夫,可能有的读者会想“假如在实际应用中,按照这种办法解决资源不足的问题,也许一两个应用我还能解决得了,但问题是我们单位不止一个应用,而且还运行在不同的操作系统上,如果真这么解决,以后的维护还有部署问题就变得更复杂”。这样的考虑绝对是正确的,所以在云计算中专门提出Provisioning这个主题,它强调的就是怎么部署,如何根据应用的要求提供不同的运行环境,并自动地将应用部署在所需要的环境里。常用的技术有虚拟化技术、主机自动化安装技术和软件自动化安装技术。

(5)资源安全

资源安全(Security),这个问题相信经历过病毒破坏、账号被盗的读者应该有深刻体会。资源安全在云计算中同样重要,针对云计算中的不同服务层次,需要逐级建立相应的认证及授权系统、日志监控系统、防火墙、杀毒系统等。但笔者认为目前并不存在专门为云计算而创建的特有的资源安全技术,组成云计算的各种技术一般都会配置相应的安全技术。如果真要说有专门的云安全技术,笔者认为主要有两种情况,第一种是如何针对某个特定的云计算应用,将各个云计算模块间的安全整合到一起,在满足安全的前提下还能方便工作;第二种是针对数据,在云计算中,我们可能既要使用公共云又要使用私有云,对于存储在公共云上的数据,也需要一定的审核,确保其在泄露后,不会造成损失的才可以存储在公共云上,特殊数据需要与公共云提供商签订服务协议。在本书中,关于云资源安全将结合应用来说明。

关于云计算架构,笔者是根据自己的工作经验与体会得到的,欢迎各位读者的批评指正。

笔者的观点可以总结为如图1-17所示的云计算架构。

978-7-111-36687-4-Chapter01-26.jpg

图1-17 云计算架构

从使用的角度来看,最终使用者主要使用SaaS上面的应用,开发人员需要使用PaaS与SaaS提供的相关资源来创建应用,而系统、网络管理员主要关心IaaS与PaaS的搭建。

综上所述,我们会发现云计算大量地使用了现有的计算机技术,在现有技术的基础上,它将这些技术紧密整合到了一起以达到按需分配的目的。想象一下在一个拥有上千台计算机的组织(比如学校、公司、政府、科研机构、电信运营商)里,如果可以将这些计算资源有机地组织在一起,合理调度应用程序,无疑将为该组织提供强有力的计算能力,相当于建立了一个超级计算机,而这台超级计算机还可以通过不断加入新的计算资源而变得更加强大。如此强大的计算资源可以为本单位的业务提供强有力的支撑,或者将部分服务销售给他人。这也是云计算的魅力所在。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈