那些影响传统PaaS平台结构的容器编排工具

作者:精灵云

随着PaaS平台结构的演变,可以看到容器编排给企业在平台结构的选择上带来的冲击,可究竟该如何选择,我们需要透过现象看本质。

PaaS平台的演变

传统PaaS平台在云计算技术的发展中经历了几次演变,我们先来回顾下经典的云平台层次体系的结构。


传统云计算平台的分层结构

如图所示,在经典的PaaS平台结构中,应用运行在PaaS平台所提供的容器环境中,容器在虚拟机基础上完成了第二层次基础设施资源的划分,容器封装了应用正常运行所需的运行环境和系统。然而这类PaaS平台就如同一个“黑盒”,应用完全脱离了租户的控制,进入了完全被托管的状态,这使得开发人员和运维人员对应用和应用运行时的环境掌控力变弱,再加上传统PaaS通常在应用架构选择、支持的环境服务等方面有较强限制,导致此类云平台层次结构运力不足,尤其是在应用出现宕机后尤为凸显。因而在生产环境下又进化出了以IaaS+云平台的分层结构。


典型的IaaS+云平台

IaaS+云平台的层次结构保证了运维人员对底层环境的掌控,但IaaS层不具备贴近应用的资源调度策略,为了弥补了IaaS平台脱离应用的缺陷,出现了很多高效便捷的虚拟机DevOps工具,以虚拟机镜像为基础可以保证生产环境、测试环境、开发环境上的严格一致。目前基于IaaS的云生态环境已经具有相当高的成熟度。

当然,以上这两种经典的云平台分层结构依然还是目前传统云平台搭建意识里的主流,直到Docker的出现。


基于容器的云平台

Docker的出现为云平台带来了一个新的分层结构:基于容器的云平台。相比经典PaaS平台,基于容器的云平台结构更加开放,可直接基于虚拟机或物理机搭建。基于容器镜像的应用发布流程不仅能覆盖整个应用生命周期,还减少了经典PaaS平台对应用架构、支持的软件环境服务等方面的诸多限制,将更多控制力交还给开发和运维人员。

而影响传统平台PaaS结构的核心便是容器编排。

容器编排的演变

容器编排支持打包、部署、隔离、服务发现、扩容和滚动更新,已经在影响驱动成熟企业和初创公司采用容器上起到非常重要作用。

在基于容器的云平台中,运用Docker容器至应用的完整生命周期中时,最困难的便是运行微服务应用程序,即如何创建、管理和自动化临时容器集群。

解决这一挑战的第一个主要工具是Mesos及它的编排工具Marathon,成熟度最高时间最久。下一个得到认同的编排工具是Kubernetes(以下简称K8s),应用最广泛,社区支持度最高。之后Docker Swarm也加入了进来,使用覆盖率也很惊喜。当然,目前国内还出现了自研的容器编排Newben,开发者为Ghostcloud精灵云。


几种容器编排的对比

事实上,如今K8s因为它的可扩展性已经成为了企业主流。它支持广泛的编程语言、基础设施选项,并获得容器生态系统的巨大支持。它将应用层与基础设施层隔离开来,从而能够跨多个云供应商和基础设施设置,实现真正的可移植性。

容器编排K8s和Newben

本文重点介绍在网络、应用迁移、应用快照、模板、负载均衡、弹性伸缩、高可用、CI/CD集成、灰度发布和回滚、镜像集成、日志监控等方面同样优秀的两类容器编排工具Newben和K8s。Newben是Ghostcloud精灵云全自主研发的容器调度引擎,是目前国内唯一自研引擎。(关于Newben的介绍可阅读文章《全自主研发容器调度引擎——Newben》)K8s是目前最主流的容器编排。在此,我们简略地列出了Newben和K8s的部分功能特性,来展示这两种容器调度引擎在网络、应用迁移、负载均衡、弹性伸缩、调度规则等方面的优势。

l网络

K8s不支持内置虚拟网络,网络插件选择众多,学习成本更高,但从社区获得的支持也最多。Newben内置支持虚拟网络,支持多子网,支持公有云、主机托管环境、二层和三层网络以及控制网络访问安全。


l应用服务和应用栈

在创建应用服务方面,K8s需要多次执行命令工具的操作模式,Newben则采用向导式创建的方式,且支持应用服务分组创建应用栈。


l弹性伸缩

Newben和K8s均可以支持CPU的弹性伸缩。


l负载均衡

Newben和K8s均可实现负载均衡和高可用集群。


l调度规则

K8s的调度规则基于标签选择器,而Newben则同时基于标签选择和指定主机名。


结语

对企业而言,编排工具是容器应用成功的关键,最主流的PaaS解决方案已经拥抱容器,并有新的PaaS 建立在容器编排之上实现管理平台。企业可以选择面向IT运维,部署核心容器编排工具,或面向开发,使用PaaS平台。

推荐阅读:

1、企业为什么要使用基于Docker的PaaS/CaaS平台

2、Docker容器云在金融行业的应用

3、自研容器调度引擎Newben会成为“中国的K8s”?

时间: 2025-01-31 05:42:48

那些影响传统PaaS平台结构的容器编排工具的相关文章

Docker 开源集群管理和容器编排工具 SwarmKit

最近Docker公司开源了Docker集群管理和容器编排工具SwarmKit,其主要功能包括节点发现.基于raft算法的一致性和任务调度等. 基本概念 服务器上运行SwarmKit工具的swarmd命令后,即可将其加入到服务器集群中,该服务器就成为集群中的一个节点.SwarmKit将节点分为两类: 工作节点负责通过执行器运行任务.SwarmKit的默认执行器为Docker容器执行器(Docker Container Executor); 管理节点负责接收和响应用户的请求,将集群状态调节成最终状态

DockOne微信分享(一零六):乐视云基于Kubernetes的PaaS平台建设

本文讲的是DockOne微信分享(一零六):乐视云基于Kubernetes的PaaS平台建设[编者的话]本次分享主要介绍乐视云两代PaaS平台的变迁过程,着重介绍第二代PaaS平台LeEngine的架构设计和遇到的问题. 背景 2014年乐视云开始尝试Docker的推广和使用,我们的团队开始开发第一代容器云平台Harbor (分享网址:http://dockone.io/article/1091 ).(在这里提醒一下,这与VMware公司中国团队为企业用户设计的Docker Registry e

面向应用高兼容性的PaaS平台体系结构

面向应用高兼容性的PaaS平台体系结构 陈思,徐鹏 随着互联网技术的快速发展,小团队.草根化的应用提供者逐渐成为互联网应用创新的主力.但传统的业务提供方式严重影响了"草根"开发者业务创新能力的发挥,同时阻碍了互联网服务提供商和电信运营商利用长尾市场获取更大的收入.基于云计算的PaaS 平台是应对上述风险的行之有效的手段.从分析工业界有影响的PaaS 平台入手,总结现有PaaS 平台的不足之处,针对现有PaaS 平台应用兼容性低.网络能力封闭等问题,提出了一种基于通用容器技术实现应用高兼

如何基于编排工具打造可扩展的容器环境

由Docker引领先锋,容器在过去的一年里得到了飞速发展.容器技术提供了组件化环境,帮助应用在云之间轻松迁移而无需显著的返工.当谈到构建云以及非云的应用时,容器的战斗口号是可移植性和简单性. 随着容器在企业持续获得发展,厂商将增加新的功能让用户可以创建可扩展的基于容器的环境,这些功能很大程度上都集中于容器编排上. 容器编排工具提供调度和集群的技术,提供用于基于容器应用可扩展性的基本机制.这些工具使用容器服务,并编排他们以决定容器之间如何进行交互.此外,编排允许容器可以存在并执行在集群上,这使得他

OpenStack支持哪些容器编排引擎?

组织通常会使用容器编排工具,有时称为编排引擎,来部署.扩展和连接不同的容器技术组件.这些编排工具还帮助企业监控容器实例,从而缓解容器蔓延到整个企业. OpenStack Magnum模型--用于容器的OpenStack API,它支持三种主要容器编排引擎:Docker.谷歌Kubernetes和Apache Mesos. Docker是其中一个最具管理性.和流行的容器编排引擎,允许软件开发人员在一个镜像中打包并部署整个应用和他们的依赖,且可运行于Linux系统上.Docker还提供了如Docke

DockOne微信分享(一一一):LAIN 平台远程进入容器功能设计与实现

本文讲的是DockOne微信分享(一一一):LAIN 平台远程进入容器功能设计与实现[编者的话]本次分享主要介绍在宜信大数据创新中心的开源 PaaS 平台LAIN中,基于 WebSocket 和 Docker Remote API 远程进入单进程容器功能的设计与实现. [上海站|3天烧脑式微服务架构训练营]培训内容包括:DevOps.微服务.Spring Cloud.Eureka.Ribbon.Feign.Hystrix.Zuul.Spring Cloud Config.Spring Cloud

基于Kubernetes的PaaS平台设计和思考

本文讲的是基于Kubernetes的PaaS平台设计和思考[编者的话]文章介绍了PaaS平台的意义,为什么选择Kubernetes,PaaS平台上的微服务架构应用,如何设计和快速构建PaaS平台,PaaS平台的功能组件这几个内容. [烧脑式Kubernetes实战训练营]本次培训理论结合实践,主要包括:Kubernetes架构和资源调度原理.Kubernetes DNS与服务发现.基于Kubernetes和Jenkins的持续部署方案 .Kubernetes网络部署实践.监控.日志.Kubern

从Google的PaaS平台说起,解析中美Docker生态圈

本文选自清华大数据产业联合会会员.数人云CEO王璞博士在5月18日第八届中国云计算大会上主题为"中美容器之融合与变革"的分享,以下是演讲实录: 容器VS虚拟化 首先我科普一点什么是容器技术.容器技术其实本身并不是什么崭新的技术,大家经常拿容器技术跟虚拟化技术比较.有一个通俗的说法,容器是极度轻量的虚拟机.怎么理解大家看这个图,左边图展示的是虚拟机,物理服务器里装操作系统,再装上虚拟机管理软件,生成很多虚拟机,然后虚拟机再装操作系统再装各种各样的应用.右边图展示的是容器,物理服务器里装操

DevOps转型的柳暗花明:开发运维一体化PaaS平台建设

本文根据陈能技老师在[2016 Gdevops全球敏捷运维峰会广州站]现场演讲内容整理而成.   (点击底部"阅读原文"获取陈能技演讲完整PPT)    讲师介绍 陈能技,DBAplus社群原创专家,新炬网络首席DevOps专家.14年开发测试与质量架构经验,擅长DevOps及APM.Docker.持续集成.持续交付在企业中的落地实施.著有<软件性能测试诊断分析与优化>.<软件自动化测试成功之道>.<深入浅出性能测试与LoadRunner实战>等书.