为何私有云的定位应该是PaaS,而不是IaaS?

IT界已经对私有云架构争论了很久,虽然有很对公司尝试了Iaas私有云方案,但始终不尽如人意,由于把目光仅仅集中在Iaas上是一个一开始就错误的想 法。与此同时,围绕Mesos的私有云方案真正奏效了,基于Mesos构建私有PaaS不只仅是大势所趋,它已经在不少公司证实了本身的价值。

在IT界数年针对私有云架构的优势的不断的争论以后,一个切实可行且企业可用的私有云架构终于来到了咱们面前。而且与其它在过去的一个世纪出现的技术方案不一样,它已经在世界上的一些巨头公司,和采用先进技术的最多的公司里都证实了本身的价值。

重要的是,咱们指的不是IaaS。到目前为止IaaS方案已经被尝试过太屡次,难以统计,而且尚未怎样扩散开来。不断的有初创公司尝试但无功而 返,也不乏大公司步其后尘 - 包括像OpenStack这样的项目 - 结果却未能将私有的IaaS打形成为一个可伸缩的商业产品( sclable business)。

那问题出在哪呢?这是由于IaaS并非云计算用户的终极目标 - 至少在他们还有选择的状况下不会是。高效运维和可伸缩的基础设施( scalable infrastructure)只是提升开发者效率和商业敏捷性的途径。对于CIO来说,一个投入大量资源开发的项目却只能达到一半的目标,这付出很难能看到什么回报。

这就是为何私有云计算的将来是立足于另一个开源平台 - Apache Mesos- 之上,而且以更加像一个PaaS平台的面貌示人。这方案之因此行得通是由于它仍然具备运维高效性的特色,人们一般把这一点拿来做为兜售部署私有云时列举的 缘由之一,可是这种以围绕Mesos风格的私有云真正能够奏效的缘由是它能给开发者带来更快、更简单及更灵活的用户体验,而这才是云一直的核心。

你可能不会相信个人这些话。但你会相信Gartner的话,相信Twitter、Apple、Yelp、Hubspot、Autodesk、 eBay、Ericsson、Capgemini以及其余已经基于Mesos打造出他们本身的功能完整且无比牢靠的私有PaaS系统的大公司的话。
css

为何选择私有PaaS而不是私有IaaS?

有一个很争议的观点,把目光仅仅集中在可复制(replicating)的IaaS云平台,如AWS,是一个一开始就错误的想法。毕竟,AWS当初引人注目是仅仅是由于凭信用卡几分钟内就可使用,而不是由于它看起来是部署应用最好或者最简单的方式。

下面是Gartner的VP和杰出分析师Thomas Bittman对于私有PaaS的见解,这出自2014年10月的一篇有关于采用私有云技术时犯的最大的错误的报告:

git

尽管大部分的私有云是IaaS,使用虚拟机来做为工做单元,然而单纯的IaaS的价值是有限的。即使是公有云IaaS提供商们也在他们IaaS功能的基础上提供了很多额外功能,包括不少便于开发者使用的工具,用来准备( provision)虚拟机和对虚拟机内部进行管理的工具,和愈来愈多的PaaS的服务。
...
经过重写PaaS层,经过要求和公有云PaaS的协做,或是经过SaaS模型从一个对外的提供者来得到服务,这些方法都能使一些应用提供更好的服务。尽管,私有的PaaS仍然相对少见,可是支撑私有PaaS的技术会日趋成熟 - 特别是对于云的混合模式而言。

实 际上,它们正在慢慢成熟;由于这只是一个时间问题。一直以来都是开发者推进着云计算技术的采用。他们是AWS的第一批用户,由于其让他们不用烦请IT的协 助;他们是PaaS的第一批用户(如早期的Heroku),由于其帮助他们摆脱AWS的复杂度;他们也是SaaS工具,如NewRelic的第一批用户, 由于其帮助他们监控他们刚刚启动的云服务。

就如Marten Mickos(Eucalyptus Systems的前任CEO,也是MySQL以前的CEO)今年年初巧妙而简介的说:

github

开发者不再问你要服务器了。他们甚至不问你要一个LAMP套件(stack)。他们想要API。
— Mårten Mickos (@martenmickos)
2015年5月29日

极可能还要一些容器。

本质上,开发者想要把建立和部署新的应用归入他们快速的code-deploy-test循环的一部分。若是你老是在等待IT准备可靠的镜像,那 么持续交付、持续集成和微服务就永无可能。而且,坦白的讲,开发者不会关心在何处部署他们的应用和服务,只要这个部署过程比较容易。

这里就是IT和运维真正须要施展身手和改变世界的地方。经过选择合适的软件套装(假如至少是Mesos和Docker),聪明的CIO能知足商业层的需求,如提升资源利用率、下降用电开销以及减小宕机时间,同时保证提供快速灵活,符合开发者需求的平台。
docker

基于Mesos构建私有PaaS不只仅是大势所趋

对于不少Mesos的用户来讲,包括上面列举的对公商业的公司,私有的PaaS不只仅是一个新兴的技术 - 它已经站在了咱们的面前。Mesos提供了服务器层面的调度和一般的资源管理能力和抽象( resource-management capabilities and abstractions),而后更高层次的工具如Marathon、Docker和其余一些本身开发(而且一般开源)的工具提高了开发者的体验。

几乎对于一个公司来讲,PaaS-on-Mesos架构已经大大地提高了在平台上部署应用的温馨度和速度。得益于Mesos,不少用户终于可以拥 抱微服务的架构,甚至把玩新出现的大型数据框架,由于Mesos能够基于实际所需资源调度workload(工做量),而且支持在同一个集群里任何类型的 workload。

已经有好几个由大公司构建的PaaS框架,方便运行在Mesos(而且扩展一点的说,DCOS)之上,而且已经开源。这些包括:
apache

  • Marathon:由Mesosphere开发和提供支持,而且其也预装在咱们的数据中心操做系统(DCOS)产品之上,Marathon被设计用来运行须要长时间不间断运行的服务,而且一般做为PaaS环境中的那些Docker容器的部署环境。Marathon能处理资源的分配和运行的服务可用性。后端

  • Apache Aurora:Aurora 最初是Twitter开发用来做为PaaS-type layer。Twitter极可能是世界上最大的Mesos用户,在数据中心成千上万的节点上使用,如今用来管理公司不少核心服务所须要的资源。就如 Marathon同样,Aurora负责保证即便在服务器宕机的状况下,工做仍然能持续运行。服务器

  • Singularity:Singularity由HubSpot开发,这是在其对即将由Meso管理的AWS镜像,针对占用大进行从新架构以后开发的。HubSpot把Singularity称为“箱子里的PaaS”,意思是其提供的抽象足以让对Mesos不熟悉的人轻松启动job。架构

  • DeisEngine Yard不少年一直是公共PaaS的首要提供者,最近他们发布了面目一新的核心平台,经过Deis提供对私有的基于Docker的平台强有力的支持。今年早些时候,Deis项目开始集成Mesos。框架

  • Apollo:这是一个特别有意思的项目,由于它是由最大的咨询公司和系统集成商Capgemini开发,用来服务该公司的大客户。Apollo使用了不少额外的组件,这包含Terraform和Packer,来让用户能够构建私有的IaaS和私有的PaaS环境。运维

  • Ochothon:CAD 的专家Autodesk最初建立了一个叫Ochopod容器编排层,它能够简化内部的IT流程。而且Ochothon是设计用来运行于Marathon之 上的一个版本。当公司趋向于以Mesos为中心的基础设施,Ochothon提供了一系列高水准性能,使一个集群内容器间的互通实现自动化。


经过在DCOS添加了对其余容器编排,Mesosphere对开源的支持往前又进了一步,PaaS在开发的时候没有考虑到Mesos,可是仍然提 供了不少好用的功能。这些包括Google领头的Kubernetes项目、Docker的Swarm、Red Hat的OpenShift和最后的Cloud Foundry。

在过去几年,也有其余不少基于Mesos的PaaS系统被开发构建,但还不是开源的,一些公开讨论过他们系统的公司包括:

  • Yelp:Yelp在Marathon的基础上构建了一个基于Docker的微服务架构,叫作 PaaSTa。它能在公司和AWS的机器的镜像之间完成Docker容器自动化部署和服务集成。PaaSTa和相关的投入对于Yelp的持续部署环境相当 重要,而且该公司如今天天须要启动超过一百万的容器来支持其代码-测试(code-testing)的流程。

  • Apple:Apple 构建了一个本身的Mesos调度器,名字叫J.A.R.V.I.S.(Just A Rather Very Intelligent Scheduler 一个有点至关智能的调度器)。它在后端支撑了整个Siri的应用。Mesos的集群遍及成千的节点,让开发者能够更容易的部署组成Siri的单个服务。

  • eBay:对于eBay来讲,目标是从现有的(专有且基于VM的)持续化集成方案迁移到一个基于Mesos的方案。在他的方案中,每个开发者都分配有一个Jenkins的实例,用到的是Mesos和Marathon,Meso实际运行在OpenStack的实例之上。

  • Ericsson:这位通信巨头使用Mesos和Marathon来做为一个PaaS系统的基础,能够用来支撑数据分析,而且全局的在数千个数据中心强制SLA。


DCOS让PaaS更容易

然而尽管全部以前提到的案例都显示Mesos可能带来的各类美好的愿景,现实是否是每个公司都有足够的资源和热情来构建牢靠(mission-critical)且彻底依赖开源技术的系统,假如要本身从头作起就更难。

DCOS让构建一个私有的PaaS相对的简单了,由于其提供了要构建一个PaaS全部必要的组件和原语(primitive),无论是在前置或者公有的云。DCOS提供了开源的Mesos的全部功能,另外还有在UI/UX,SDK和商业支持方面一些重大的改善。

一个高层次的架构是像下面这样的:

 为何私有云的定位应该是PaaS,而不是IaaS?


其中的IaaS层在这里严格的指准备(provision)和管理机器。他们能够是物理的机器、虚拟机或者是公有云主机的实例。DCOS中默认的PaaS 服务是Marathon,这是一个开源的由Mesosphere开发的技术。然而,Yelp和其余公司都证实,Marathon也能够用来做为更加自定义 化层的基础-一般会牵涉到特定的用来配置运行其上的容器的方法。

除了PaaS一般你们都知道的优势,DCOS也能让部署混合云架构变的容易-这意味着你的私有PaaS能够运行在公有云之上。Workload的 移植性是DCOS核心要保证的东西,所以将前置环境的一部分或者全部应用迁移到公有云上(或者是方向相反的移动)会十分天然。资源都有一样的抽象,用户体 验保持不变,并且代码不须要改变。

今天商业的现实是商业要求快速改变,意味着对于IT基础设施的和开发者的需求都也在快速改变。不少公司一直都在寻求把私有云做为让后者与前者保持一致的方案,今天私有云终于开始登上舞台为本身代言。尽管其可能不是咱们六年前想象其的样子,可是这已经没有什么关系。

由于这一次,it works。

原文连接:WHY YOUR PRIVATE CLOUD COULD LOOK A LOT LIKE PAAS(翻译:钟最龙 审校:魏小红)来自:http://dockone.io/article/500

相关文章
相关标签/搜索