订阅
纠错
加入自媒体

云服务模式对比

2018-01-25 14:55
星河星云
关注

云服务模式对比(二)

对于云的解决方案而言,事先确定合适的服务模式至关重要。我们只有完全理解了每种服务模式的含义,以及在每种服务模式向云服务商的服务、消费者各自应该承担什么样的责任,才能在服务模式中做出正确的选择和组合。

有三种云服务模式:基础设施及服务,平台即服务,以及软件即服务,每种云服务模式都通过某种程度上的资源抽象,来降低消费者构建和部署系统的复杂性。在传统的本地数据中心中,团队必须负责所有的搭建和管理事项,无论是从零开发专有项目,还是购买商业软件产品,团队都必须安装和管理服务器、部署和调试软件来确保使用的适当的安全等级,然后按部就班的(对操作系统固件应用程序数据库等)打上补丁等等。相比之下,每种云服务模式都对这些任务提供了不同程度的抽象自动化,从而使云服务的消费者具有更多的灵活性,减少在基础设施管理上所花费的时间,专注自身的业务问题。

基础设施及服务(IaaS)

针对SaaS,PaaS,IaaS三中服务模式之间的关系,下图可以表述。

图 1 云堆栈(cloud stack)

往上一层是IaaS,定义如下:

消费者能够获得处理能力,存储网络和其它基础计算资源,从而可以在其上部署和运行包括操作系统和应用在内的任意软件,消费者不对云基础设施进行管理和控制,还可以控制操作系统存储数部署的应用,或者对网络组件(如防火墙)的选择,有部分控制权。

专注于云安全的标准化组织云安全联盟(CSA),给出IaaS的定义如下:

以服务的方式交付,连同原始存储和网络在内的计算机基础设施,通常是一个虚拟化平台环境,客户并非购买服务器软件,数据中心,或网络设备,而是将这些资源作为外包服务整体采购。

在IaaS中,设计管理和维护物理数据中心和物理基础设施(服务器、磁盘存储、网络等)许多工作都被抽象成一系列可用服务,可以通过基于代码或网页的管理控制台进行访问和自动化部署,已经不需要在为物理基础设施管理来劳心费力。

在IaaS服务中,人们可以根据需要访问虚拟的基础设施,在数分钟内通过调用API或登陆网页端管理控制台,完成资源的部署和运行,就像水电这些公共事业服务一样。虚拟的基础设施,也是一种可计量服务,只有在开启并使用的时候才会计费,关闭时便不再累计成本。通过IaaS所提供的基于24的虚拟数据中心的能力,消费者把更多精力集中在构建和管理应用程序,而非管理数据中心和基础设施上。

目前市场上已经有很多的Iaas服务企业提供方,这里就不一一列举了。OpenStack是一个开源的项目,用户可以按照自己的意愿,在组织内构建自己的IaaS(即私有云)平台。一般情况下,大企业会选择混合云服务,把数据保存在私有云里,然后把不重要的组件迁移至公有云中。星河云提供基于OpenStack的IaaS解决方案,可以满足那些有大量本地应用和数据,又不愿意被阿里云等云服务提供商绑定的企业,建设自己的IaaS能力。

平台即服务(PaaS)

PaaS介于SaaS和IaaS之间,为开发者提供了一个更加容易运营和部署应用软件的环境。用户不需要管理与控制云基础设施,仅需要控制上层的应用程序部署与应用代管的环境,因此,不仅提高了开发应用程序的速度,还节省了开发费用。

PaaS将大部分标准化的应用堆栈层的功能抽取出来,以服务的形式对外提供。比如开发者在设计高拓展性系统时,通常必须写大量的代码来处理缓冲,异步消息传递、数据库拓展等诸如此类的工作,而在许多PaaS解决方案中,这些功能都可以以服务的形式对外提供,开发者无需在这些功能上重复工作,专注于商业逻辑即可。

CSA对于PaaS的定义为:

以服务的方式交付计算平台和解决方案包,PaaS服务消除了购买管理底层硬件和软件,以及部署这些主机所带来的成本与复杂度,使应用的部署变得更容易。

PaaS服务提供商完全通过互联网,向开发者提供一套工具,来加快开发流程。而开发者在使用PaaS服务时,由于受到这些工具和软件包的约束,在某种程度上要放弃一些灵活性。另外在一些较底层软件的控制上,比如内存分配或者堆栈分配方面(例如线程数、缓存数量、补丁级别等),开发者也几乎没有控制权。早起的PaaS提供商掌握了上述的一切,有时甚至会限制对一些服务开销,来确保每个使用者,都有相同的拓展能力。

早期的PaaS提供商都会向开发者指定平台堆栈战和底层基础设施,还有一些要求开发者,以固定的语言进行开发。比如,Google Apps Engine最初要求开发者以Python进行编程;而微软Azure最初要求.NET技术。而现在新的PaaS服务提供商,都提供更为开放的PaaS环境,使用者可以在自己选择的基础设施之上,选择包括PHP,Ruby,Python,Node.js等在内的多种开发包。

在成熟的PaaS解决方案中可以找到这些内容,包括:数据库(Database),日志(Logging)、监控(Monitoring)、安全(Security)、缓存(Caching)、搜索(Search)、电子邮件(E-mail)、分析(Analytics)、支付(Payments)。开发人员可以通过使用API接口,接入大量第三方解决方案,提供类似故障转移(Failover)和高可用服务(HA)等,这将快速将产品市场化,无需管理和维护这些API背后的技术,大大降低了成本。

当然随着云计算的发展,PaaS服务商面临被融合风险。

一方面很多服务开发者规模并不大,而且业务单一;

另一方面PaaS是构建应用程序的一种方式,而IaaS和SaaS供应商完全可以打造出具有PaaS功能的一站式云服务应用。

基于上述两方面原因,现在IaaS厂商在向衍生服务产品拓展,由IaaS打造PaaS构建生态圈成为趋势。近年PaaS服务商被收购的案例较多,如Salesforce收购Heroku、CenturyLink收购App Fog、Oracle投资Engine Yard等,单纯的PaaS供应商面临被融合的风险。目前,通过自研或收购的方式,IBM、Oracle、惠普、Salesforce、微软和SAP等巨头均已发布商用PaaS。

软件即服务(SaaS)

堆栈最上层是SaaS——是一种以服务形式向消费者交付的完整应用。服务消费者要做的只是对一些具体的应用参数进行配置,服务提供商则负责处理所有的基础设施问题,所有的应用逻辑部署,以及所有的交互产品或服务相关事宜。较常见的SaaS中,包括客户关系管理CRM,和企业资源管理ERP,工资单会计及其它常见的业务软件等。

在现阶段云计算市场中,SaaS占比较大,而且预计未来五年依然会保持高增速。SaaS产品呈现多元化的发展趋势,数字内容制作、企业内容管理、商业智能应用等产品规模较小、增长快,尤其企业内容管理。原有的企业内部应用,都会逐渐SaaS化。虽然在互联网时代微软公司没有占据到领先地位,但在云计算时代,微软却重新找到了发力的方向。

2016年Q2微软在全球SaaS收入中占有15%的份额,超过Salesforce的份额14%,微软取代Salesforce成为企业软件即服务(SaaS)市场的领头羊。包括Office 365、Dynamics 365、Machine Learning、VSOnline、AAD等SaaS服务。传统产品的庞大用户群体都可以轻松迁移并使用微软的SaaS服务,致使微软Azure近年飞速增长。

部署模式

云计算按照部署模式可分为:公有云、私有云和混合云。

公有云or私有云

公有云通常指第三方提供商为用户提供的能够使用的云,公有云一般可通过 Internet 使用,可能是免费或成本低廉的。最终用户可以选择数据中心所在的区域,但不知道自己的软件具体运行在那台物理机上。物理硬件之上是一个抽象层,以API的形式展现给最终用户,由用户用来创建运行在多人共享的大型资源池里的虚拟计算资源。

公有云的优势在于:

按需付费。最终用户只为所消费的资源付费,在很大程度上避免了,计算资源在使用周期中可能存在的浪费。

弹性扩展。几乎无穷的资源池,使最终用户可以对其软件解决方案进行设置,来动态提升,或降低其在所处峰值负载时,需要的计算资源数量。

管理成本。底层的基础性的数据中心管理,交给公有云服务提供商。大大降低了用户在管理基础设施上的时间,更专注于自身的核心竞争力。

公有云的劣势也是存在的:

底层资源不受控制。用户必须依靠公有云提供商,履行它们在性能和正常运行时间方面的服务协议(SLA),如果公有云提供商服务中断,最终用户只能耐心等待云服务商恢复提供服务。

监管问题。一些行业,比如金融、公安、军工、医疗等。这些行业内部有严格的数据隐私监管和审计要求。因此在公有云上面部署,可能无法满足监管要求。

有限的配置。用户的需求多种多样,公有云提供商在满足一般性的需求方面有一套标准的基础设施配置方案,但是在解决一些特定计算问题时,可能就无法完全满足。

私有云的优点正是对应前文中所说的公有云的一些缺点。

私有云一般是指客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。用户可以控制在此基础设施上部署应用程序的方式。私有云可部署在企业本地数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所。

不管哪种部署方式,私有云的最终用户都只是在一个单一租户环境下进行部署,不会于其他用户混用。对于本地私有云的实现而言,由于他们仍然管理的数据中心,并在采购硬件配置方面有更高灵活性,和完全的自主性。托管的私有云用户依然依靠他们的第三方服务商来提供基础设施,但是他们的资源并不会与其他消费者共享,这样用户便有了更多的控制力度和安全性。随便降低了有关数据所有权一次和安全方面的一些监管风险,但是相对的他们的成本也会更高。

虽然从最终用户使用角度来说,公有云和私有云使用并没有太多不同。但是在建设初期,私有云在物理基础设施,场地等方面有很大的的支出。私有云牺牲了“快速伸缩性、资源池化、以及按需付费”这些核心优势。许多机构想出了一个两全其美的办法——同时使用公有云和私有云,也就是所谓的混合云。

混合云

混合云的最佳实践方式是在利用快速伸缩性和自伸缩性这些方面尽可能使用公有云,而在数据所有权和隐私这些公有云中风险较高的领域使用私有云。

混合云正在进入快速的发展阶段。由于混合云可以处理企业级客户数据安全问题,同时又兼顾云计算灵活和拓展优势,越来越受企业青睐。研究机构Global Data 2017年调研了全球3242个云服务使用者,了解到未来两年企业在云技术上的投资将继续保持高速增长,混合云将成优先投资的方向。接受调研的大约62%的企业正在投资混合云,预计未来两年66%的机构将优先考虑加强混合云部署。全球各大云服务商和设备厂商也将采用虚拟私有云、托管云等方式提供多种混合云解决方案、进军混合云市场。

另外一方面,开源云计算软件(OpenStack,OpenShift,Docker,Kubernats等)社区的发展引起了传统IT软、硬件厂商以及技术创新企业的关注。这类传统IT企业以实施项目为主要方式,通过开源技术搭建私有云或混合云的方式进行落地。通过不断加大研发投入,提高与开源社区产品兼容性,意图借助开源社区和开源平台的力量赢取市场。

总结

云计算正在改变软件构建和交付的方式,这是一种从购买和管控基础设施以及开发或购买软件的传统模式,向一切均可为服务进行消费的新世界的范式转换,而我们正处于其中。对于公司管理者和架构师而言,理解云计算的利弊、每一种云服务模式的定义以及每种云部署模式的定义至关重要。使用得当,云计算可以为组织带来前所未有的敏捷性,会极大降低各种软硬件服务的成本。但如果对云计算理解不当,用户最后可能发现自己只不过又造了另外一些竖井式的软硬件解决方案,将难以达到为企业服务的预期目的。

声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

云计算 猎头职位 更多
文章纠错
x
*文字标题:
*纠错内容:
联系邮箱:
*验 证 码:

粤公网安备 44030502002758号