资源通常包括存储、CPU、内存、网络带宽以及虚拟机等。云系统之所以能够自动控制优化某种服务的资源使用,是因为云系统利用了经过某种程度抽象的测量能力,如存储、CPU、带宽或者活动用户账号等。从云计算的概念中还可以得出云计算的特性是大规模、多用户、虚拟化、高可靠性及成本低廉等。所以无论是从云计算本身的规模,还是其处理数据的规模,云计算的一大主要特性就是大规模。云计算平台使用虚拟化技术满足不同的用户需求。......
2023-11-18
1.PaaS概述
PaaS模型如图1-6所示。NIST对PaaS的阐述是:“提供给用户的能力是可以使得用户在云平台的基础设施上部署属于自己的应用,用户部署自己应用的同时可以使用供应商所提供的支撑编程工具和程序开发语言。消费者无须管理或控制底层的云基础设施(网络、服务器、操作系统和存储等),但消费者控制对该部署的应用程序和有可能应用托管环境的配置”。
PaaS模型的主要目的是给应用程序开发者提供程序开发平台,也就是提供一个建构、部署与管理的环境,让他们能创造并开发出新的服务或应用,并且快速地将其软件或程序部署在云上。
在PaaS模式中,平台通常包括操作系统、编程语言的运行环境、数据库和Web服务器等。用户完全不需要也不能对网络及服务器等底层基础设施进行管理和控制,但可以控制和部署自己的应用。这种服务模式能够给用户提供更多的、更高效的硬件和软件服务,既可以减少用户自行开发的成本,又可以完全实现软件的重用。
PaaS平台在云架构中位于中间层(见图1-4)。PaaS能将现有的各种业务能力进行整合,具体可以归类为应用服务器、业务能力接入、业务引擎和业务开放平台,向下根据业务能力需要测算基础服务能力,通过IaaS提供的API调用硬件资源,向上提供业务调度中心服务,实时监控平台的各种资源,并将这些资源通过API开放给SaaS用户。
Gartner把PaaS平台划分为两类[14]:一类是应用部署和运行平台APaaS;另一类是集成平台IPaaS。人们经常说的PaaS平台主要是指APaaS,如新浪的SAE、谷歌的GAE、微软的Azure都是其典型例子。其中,Saleaforce公司的Force.com是业界内第一个可以称为PaaS的平台。PaaS的理念也是该公司提出来的。Force.com向企业提供在云端上快速创建和实施业务应用程序所需的一切,包括数据库、无限的实时定制、强大的分析、实时工作流程和审批、可编程云逻辑、集成、实时移动部署、可编程的用户界面和网站功能。GAE为使用者提供Web应用开发平台,并对所使用的资源进行严格分配,使平台上托管的应用拥有良好的自动扩充性以及高可用性。其主要特征:①应用的开发和运行都基于同样的平台,故兼容性问题较少;②开发者无须考虑系统可允许的应用扩充性和服务容量等问题;③可提供运维管理功能以及帮助开发人员对应用进行监控和计费。
为了支撑整个PaaS平台的运行,服务供应商需提供如下功能:
1)友好的开发环境。通过提供IDE等工具使用户能在本地方便地进行应用的开发和测试。
2)丰富的服务。PaaS平台会以API的形式将各种各样的服务提供给上层的应用。
3)自动的资源调度。此特性不仅能优化系统资源,而且能自动调整资源来帮助运行于其上的应用更好地应对突发流量。
4)精细的管理和监控。提供对应用层的管理和监控,如通过精确计量应用所使用和消耗的资源来更好地计费。
这种服务模式的优势,是解决了平台价格昂贵、平台即时升级、用户需求估算不够科学及平台管理复杂等问题。
2.示例
当以传统的方式搭建一个Web网站时,往往需要先购置并托管服务器,然后安装操作系统及各种服务软件等,待所有烦琐的工作都准备好之后才能开始编写代码。而且开发环境与运行环境还会有一定的差别,需要把代码部署到运行环境当中进行测试,当一切都处理好后,网站才能上线。
假如使用PaaS开发和部署一个Web网站,则会使Web部署工作变得极其简单。例如,使用SAE,用户可以在任何时间、任何地点登录到SAE,通过浏览器就可以编写代码,随时随地都可以进行部署调试,只需要单击按钮,切换一下版本就可以上线了,不必购置服务器和搭建各种环境等。
为了实际体会PaaS平台,我们可以注册新浪云SAE,并进行简单的代码开发与发布。SAE支持Python、PHP和Java三种开发语言,支持MySQL和NoSQL两种数据库。同时SAE还具备版本管理功能等,总之,SAE提供了开发一个应用程序所需要的全部环境。
SAE首页、代码编辑界面和代码发布测试界面分别如图1-7~图1-9所示。
图1-7 SAE首页
图1-8 代码编辑界面
图1-9 代码发布测试界面(www.chuimin.cn)
IT人员,即可通过互联网使用信息系统。就像打开自来水龙头就能用水一样,企业根据实际需要,从SaaS供应商租赁软件服务。
传统的购买软件的方法所涉及的用户加载软件到自己的硬件上,以换取许可费。用户也可以购买一个维护协议,以获得补丁软件或其他支持服务。用户关注的是业务系统的兼容性、安装补丁以及遵守许可证协议。
SaaS供应商以租赁的概念提供客户软件服务,而非购买,比较常见的模式是提供一组账号密码,规定一个使用期限。由于SaaS模式是一个多租户架构模式,这意味着物理后端的硬件基础设施在许多客户之间共享,但在逻辑上是独一无二的单独客户。多租户架构的设计最大限度地提高了资源的跨租户共享,但仍能够安全地区分属于每个租户的数据。总之,SaaS服务模式与传统许可模式软件存在很大的不同,是未来应用软件的发展趋势。
Salesforce的客户关系管理Saleforce CRM、微软的Office Live以及谷歌的Docs都是SaaS的典型例子。其中Salesforce于1999年由当时27岁的Oracle高级副总裁,俄罗斯裔美国人Marc Benioff创办。软件即服务的理念由他首先提出,并运用于客户关系管理服务软件。目前已有约72500家公司采用了Salesforce的Saleforce CRM。
实现SaaS服务,服务供应商需提供如下功能:
1)随时随地访问。在任何时候和任何地点,只要接上网络,用户就能访问SaaS服务。
2)支持公开协议。通过支持公开协议如HTML,能够方便用户使用。
3)安全保障。SaaS供应商需要提供一定的安全机制,不仅要使存储在云端的用户数据处于安全的境地,而且也要在客户端实施一定的安全机制来保护用户。
4)多租户机制。多租户机制不仅能更经济地支撑庞大的用户规模,而且能提供一定的可定制性以满足用户的特殊需求。
这种服务模式的优势是,由服务供应商维护和管理软件、提供软件运行的硬件设施,用户付费使用软件,享有软件使用权。用户只需拥有能够接入互联网的终端,即可随时随地地使用软件。在这种模式下,用户不再像传统模式那样在硬件、软件和维护人员等方面花费大量资金,只需要支出一定的租赁服务费用,通过互联网就可以享受到相应的服务。
但是,SaaS服务模式也有一些缺点,比如:
1)安全性不高。企业,尤其是大型企业,并不热衷于使用SaaS的原因就是其安全问题。他们要保护机密数据,不希望这些机密数据由第三方来保管。
2)缺乏标准化。目前的SaaS解决方案缺乏标准化。这个行业刚刚起步,没有明确的解决办法,不同服务提供商通常拥有不同的解决方案。
2.示例
为了更好地体验SaaS,我们可以在线体验微软Office的在线应用OneDrive。用户只需要一个浏览器,就可以随时随地在任何设备上存储和共享照片、视频、文档及更多内容。例如,可以在线编辑Office Word文档,并存储在OneDrive上,这样就可以随时通过一个浏览器查看或继续编辑这个文档。
其中,OneDrive首页、在线创建Word文档界面、在线编辑Word文档界面和在线保存Word文档分别如图1-11~图1-14所示。
3.PaaS发展前景
由于企业对软件开发和维护所投入的时间和资金有限,导致SaaS在原地停留。IaaS为用户提供灵活性和自主权的同时,增添了复杂性。另外,IaaS可能无法通过门户提供系统实时编制(Orchestration)能力,而PaaS屏蔽底层的硬件基础架构,为用户提供覆盖软件全生命周期中需求分析、设计、开发、测试、部署、运行及维护各阶段所需的工具,降低了用户进行应用程序开发的技术难度及开发成本。
在业界,自2011年上半年以来,PaaS平台的重要性也逐渐受到如IaaS服务厂商与虚拟化技术厂商的重视。其中以虚拟化技术为主的Citrix与VMware,都纷纷推出PaaS服务,希望以开源的优势吸引软件开发者与厂商的投入。甚至以IaaS业务为主的Amazon,也与程序开发平台公司Beanstalk合作,提供以Java为基础的程序开发平台。
深入分析从过去到现在各大云端公司推出的程序开发平台,对其支持平台的多寡与开发语言的支持数量的多寡两个轴向分析后可发现,近年来程序开发平台已逐渐走向可支持多开发语言与跨平台运作的特性,其中更可发现Java语言为各大开发平台优先支持的语言,预期未来平台将走向可支持多种运行时系统,甚至支持多种设备的应用程序,以协助厂商快速扩大用户的应用规模。比如,2011年提出开放源码的PaaS服务Cloud Foundry,使用各种开源开发工具和中间件来提供PaaS服务。Cloud Foundry采用开源的网站平台技术,所以开发者的应用程序也可以任意转移到其他平台上而不受限于PaaS平台。Cloud Foundry可以支持多种开发框架,包括Spring for Java、Ruby on Rails、Node.js以及多种Java虚拟机开发框架等。Cloud Foundry平台也提供MySQL、Redis和MongoDB等数据库服务。
因此,有理由相信,更多的中小企业将会在未来的几年采用PaaS云。PaaS将是云计算的最终目标。
有关云安全深度剖析:技术原理及应用实践的文章
资源通常包括存储、CPU、内存、网络带宽以及虚拟机等。云系统之所以能够自动控制优化某种服务的资源使用,是因为云系统利用了经过某种程度抽象的测量能力,如存储、CPU、带宽或者活动用户账号等。从云计算的概念中还可以得出云计算的特性是大规模、多用户、虚拟化、高可靠性及成本低廉等。所以无论是从云计算本身的规模,还是其处理数据的规模,云计算的一大主要特性就是大规模。云计算平台使用虚拟化技术满足不同的用户需求。......
2023-11-18
用户隔离技术最早出现在如防范病毒等领域,为了使用户程序安全运行,引入了“沙箱”技术,使程序的运行在一个隔离的环境中,并不影响本地系统[31]。沙箱只能暂时地保存外来信息,从而有效地隔离外来数据。......
2023-11-18
PaaS主要的用户是开发人员。数据安全问题 在应用管理方面,PaaS的安全原则就是确保用户数据只有用户本人才能访问和授权,实行多用户应用隔离,不能被非法访问和窃取。在这种环境下,PaaS层的数据安全问题主要来源于应用程序使用的静态数据是不加密的。......
2023-11-18
了解云计算的发展历程,可以洞悉云计算的发展规律,从中可以更好地洞察云计算技术的发展趋势。下面是对云计算发展历程的简要回顾[12]。2008年2月1日,IBM公司决定将在中国无锡建立世界上首个云计算中心。2008年5月10日,此云计算中心投入运营。2008年7月29日,Yahoo、Intel和HP公司宣布一项橫跨新加坡、德国和美国的联合研究计划,以此来推动云计算的发展。2009年1月,阿里软件在江苏南京建立首个“电子商务云计算中心”。......
2023-11-18
PaaS的核心技术是分布式处理,主要解决云计算数据中心集群间的协同工作。因此,对PaaS层来说,面临的安全威胁主要包括如下方面:1.分布式文件系统和数据库安全由于云计算环境通常搭建在大规模的廉价服务器集群上,从而面临诸多挑战。因此,如何检验用户的可靠性是PaaS提供商面临的又一个巨大挑战。......
2023-11-18
尽管云计算前景一片看好,但是发展云计算必然会面临一些新的挑战。另外,云使用者的行为、习惯及爱好等被使用者视为隐私的部分,将会更直接地暴露在网络之上。因此,云计算的安全性与机密性是企业的主要关注点。目前云计算并无统一的行业标准,也就是说,企业用户难以从一家云服务供应商转换到其他云服务提供商,即降低了云服务移植的弹性。云端毕竟是在远方,数据的访问速度自然远比不上本地的计算机系统。......
2023-11-18
从用户角度来看,云计算意味着数据、计算及应用均通过网络被转移到用户掌控范围之外的云服务提供商手中,因此,用户隐私信息和云服务风险等问题随之而来。从技术层面来看,传统信息安全存在的问题在云端上同样存在,而且还因为云计算的商业模式及虚拟化等技术的引入,使得云服务面临新的服务风险问题。用户必须明确使用云计算所引入的各种风险。......
2023-11-18
相关推荐