本文讲的是红帽产品总监回顾容器与PaaS的发展历程,
【编者的话】本文作者是红帽的产品经理Daniel Riek,他有17年以上的软件开发和开源工作经验。文章回顾了OpenShift的整个发展历程,介绍了OpenShift从2011年到现在遇到的一些机遇和挑战。
虽然有点软,但也是全面梳理了PaaS这几年的情况,以及与容器的结合点。
又是一年将近,又到了回顾和总结的时候。过去的一年对容器生态系统来说有着特殊的意义,因此要特别感谢RedHat和OpenShift。RedHat在2015年表现优异;而对OpenShift来说,无论从产品本身和市场来看,2015年都是一个转折点。
回顾
OpenShift是红帽开源的PaaS云平台软件, 发布于2011年春季 ,与Cloud Foundry(成立于同一时间)一同提供Platform-as-a-Service(PaaS)解决方案。在那时,早期的PaaS领域被Heroku,GAE和其他一些PaaS产品统治着。OpenShift和CF则以开源方式向企业用户提供混合云方案,这种方案可以运行于笔记本电脑,数据中心或者公有云。随着PaaS周边生态环境扩大,新竞争者加入,客户可以从更多选择中获益。到了2013年春季,开发者通过在OpenShift开发新应用以及商业解决方案OpenShift Enterprise(RedHat通过自己支持的软件在数据中心运行私有PaaS平台)和OpenShift Online(红帽支持的在公有云中部署PaaS服务)的发布,红帽获得了很大的成功。这一趋势通过社区开发者和早期企业用户得到证明。CF看到了同样的趋势,本年晚些时候,VMware收购Pivotal作为独立运作公司,集中于PaaS领域的机会。
转折点
2013年春季有一些重要事情发生,3月21日在PyCon,dotCloud的Solomon Hykes第一次演示了Docker技术。Docker提供了一种在Linux容器中运行应用的新方式。容器技术本身并不陌生,实际上OpenShift、CF、dotCloud和其他PaaS平台核心都是基于容器技术的,容器技术可以追溯到2000年。但是在红帽,产品团队意识到Docker可以帮助标准化容器应用打包和部署,而且看到快速增长中的Docker生态系统的潜力;因此,RedHat宣布九月份将Docker嵌入RHEL中,并完全重建了OpenShift。在决定Docker标准化过程中,我们和Google、Twitter和其他公司讨论了容器的未来以及容器调度扩展的问题。Google作为RedHat最重要的合作伙伴,有多年的容器使用经验。在和Google讨论新技术过程中,我们了解到Google有一项新的容器调度和集群管理技术并且希望开源它,这个技术就是Google和RedHat于2014年7月在开源社区发布的Kubernetes项目。
Docker Comes to Enterprise Linux
2014年中,RedHat发布了RHEL7支持Docker容器,同时也发布了RHEL Atomic Host,一个基于容器优化的最小linux发行版。Red Hat Enterprise Linux 7 / Atomic + Docker + Kubernetes 将会演变成新的OpenShift基础平台。OpenShift,诞生于PaaS生态系统中,现在则完全演变为快速发展的容器生态系统中一员。同时,Pivotal也忙于构建一套新的开源基础来监控CF项目,看起来是基于OpenStack,意图则是控制开源PaaS生态系统。当 Cloud Foundry基金会发布时,OpenShift3正处于进展良好的状态,RedHat决定不参与其中。我们当时有一篇 博客 ,解释了为什么我们不参与其中,其中最有趣的当属,业界当大如EMC、IBM、HP等巨头参与这种新PaaS基础平台时,RedHat已经和Docker、Google、CoreOS等创新公司专心于开源容器生态系统了。
OpenShift 3 创生
时间很快来到2015年6月,OpenShift Enterprise 3在RedHat峰会上发布了,此时OpenShift平台被重新改造,完全内嵌了Docker和Kubernetes,而此时他们都成为了最火的开源项目。于此基础之上,随后又推出了OpenShift Enterprise 3.1、Atomic Enterprise Platform Public Preview 和 OpenShift Dedicated 公有云服务。最近行业报道和文章都强调了这个成就,并且将OpenShift Enterprise 3.1 称为“典型容器平台”,为之称道的不仅是Docker和Kubernetes,还有相应的功能:包括自动映像创建、自动部署服务、应用生命周期管理、语言框架访问、中间件和数据库等等。这些新特性使得使用Java、Node.js、Ruby、Python、PHP甚至Microsoft.NET的用户都可以从中受益,加快应用开发和部署。从PaaS到容器应用平台的转型顺利完成。
生态系统比较
OpenShift所处其中的容器生态系统目前就像龙卷风,推动着新技术,新概念和新方案快速发展,我们相信变革是必然的。以Cloud Foundry基金会为代表的PaaS生态系统,由若干个供应商主导,其中最主要的是Pivotal,这个生态系统围绕着CF容器环境(Garden),最近为了支持prototype,转到了Open Container Initiative发布的runC标准(RedHat在此标准中作为维护者)。围绕CF buildpacks打包格式的生态系统面临着来自Docker Hub成千上万镜像的竞争。CF调度引擎(diego)现在不仅面临Kubernetes的竞争,而且还需要面对Docker Swarm和Apache Mesos的挑战,而这两个平台目前发展迅速,并且提供了更多的功能。
Docker生态系统目前有超过1200 GitHub贡献者和27000明星项目。Kubernetes生态系统有将近600贡献者,很多用户已经使用它作为生产系统调度器。这些新技术,RedHat作为领导者之一,不仅支撑着OpenShift,而且还包括GAE和很多其他供应商方案。新的基础平台,例如Open Container Initiative 和Cloud Native Computing Foundation(CNCF) ,都是为了管理这些新技术而生,而且都在很多客户那里运行良好。目前看起来任何闭源产品都难于跟开源大环境相竞争。
前景
从平台技术角度来开,OpenShift从容器生态环境的变革中得到巨大益处,使得OpenShift可以支持更广泛的企业级应用,包括无状态,云应用和传统应用,而这个特点,对于在现有应用投入巨大的传统用户来说,无疑提供了更加容易些的转型方法。仍然有很多事情要完善,我们展望2016,能看到许多激动人心的东西呼之欲出,例如OpenShift Enterprise 和 OpenShift Dedicated 以及 OpenShift Online等新版本推出。Red Hat Atomic Container 基础架构平台将会在容器网络、存储、企业服务Registry、内置ELK栈扩展日志能力等多方面迎来新的进展。
红帽JBoss中间件团队将会扩展支持Red Hat Mobile和 Business Process Management 方案。OpenShift内置Docker自动创建能力将会增强,使得用户可以从源码,二进制或者现存系统直接创建容器;我们还计划通过cloudforms扩展容器管理和操作管理,增强对OpenStack和公有云例如Amazon、Google和Microsoft Azure的支持;我们还将丰富OpenShift Reference Architectures 内容,提供部署和操作中的最佳实践。
总而言之,我们坚信Openshift3将会提供一个目前和未来最佳的方案,展望未来,欣喜无限。
Guten Rutsch und Frohes 2016!
原文链接:Containers & PaaS: A Tale of Two Ecosystems(翻译:杨峰)
原文发布时间为:2015-12-25
本文作者:hokingyang
本文来自云栖社区合作伙伴DockerOne,了解相关信息可以关注DockerOne。
原文标题:红帽产品总监回顾容器与PaaS的发展历程