Kubernetes是Docker的终结者?我不认同!

简介:

Docker的估值已经超过10亿美元,成为容器引擎的标准,但是谷歌的Kubernetes在业务流程引擎中也越来越火。我经常被问到,Kubernetes是Docker的威胁吗?

 

许多人认为容器中的价值是在业务流程层中的,这就是为什么他们认为Kubernetes是Docker的直接威胁。我不同意,因为Docker不是容器公司而是一家平台公司。理解这一点,就必须了解Docker的历史。

 

   

PaaS vs CaaS

  

 

Docker曾经名为dotCloud,是一家PaaS公司。所有PaaS解决方案都可以利用封装下的容器使其能够执行复杂的任务,例如实时迁移,以便不用停机就可以部署软件。 四年前,dotCloud开放了其基础容器技术称为Docker。几乎立刻一个大社区就产生了,dotCloud从一个纯粹的PaaS公司转向名为Docker的容器公司。

 

接下来的两年Docker融资了1.9亿美元并普及了容器即服务(CaaS)的概念。其CTO,Solomon Hykes从PaaS经验中认识到,PaaS使用的最大挑战之一是开发人员往往过于规范。CaaS背后的理念是,客户可以集中化与他们相关的技术组件,并在Docker产品和服务的帮助下,组装一个由容器化组件组成的非规范性平台。这对彼此来说都是最好的,开发人员从基础IT管道抽象出来,而不是必须选择PaaS供应商的技术和方法。转向CaaS使Docker成为一家平台公司,而不是容器公司,容器只是一种手段。

 

   

业务流程

  

 

一旦客户接受容器的概念,他们需要一个解决方案来调度和管理容器。编排工具就是这个解决方案。 最常见的编排工具是Kubernetes,Mesos和Docker Swarm。 Kubernetes是目前市场上最成熟和最具可扩展性的解决方案,占有最大的市场份额。这三个编排工具都是开源的,客户只需要付费即可使用。

 

Docker和Kubernetes没办法放在一起比较,因为你不能将业务流程工具与一个平台进行比较,你只能比较他们的用户。Kubernetes是Google多年来一直使用的基础技术,两年前才向公众发布,它用于众多大型全球部署。而Docker Swarm处于起步阶段,并于去年6月才在DockerCon 2016大会上宣布了业务流程功能。Swarm的一个优点是与Docker平台中的许多安全功能集成,例如密钥管理。对于没有大规模要求的客户更喜欢用Swarm,因为它可以与Docker平台更好地整合。

 

   

容器领域的价值在哪里?

  

 

迄今为止在业务流程领域中领头是Kubernetes。这导致许多人认为Kubernetes是Docker的威胁,DockerCon在其刚结束的2017大会上发布了Project Moby,它用于组装专门的容器系统。 Moby项目使客户能够即插即用自己喜欢的技术组件来定制自己的平台,编排只是平台的一层。

 

Docker并不关心他们的客户选择哪个业务流程工具,他们的工作是让客户轻松插入他们最喜欢的编排工具,无论是Swarm还是其它的工具。 实际上Docker是商品化的编排引擎,真正的价值在于平台,那才是钱。 所以Docker和Kubernetes的比较没什么意义,Docker真正应该和VMWare、CloudFoundry等平台竞争。

 

我也不认为Docker和Google是对手。过去这两家公司肯定有争议,去年Google的Kelsey Hightower和Docker的Solomon Hykes就在Twitter上有一番争论。我相信,Kelsey对Docker缺乏开放性的批评,有助于推动Docker将Kubernetes作为Docker平台上业务流程层的选择。这样Google变得不再是容器生态系统中的敌人,而更多的是合作伙伴。

 

Docker目前投入更多在支持服务上,越多人使用,其收入就越多,如果说Kubernetes是最受欢迎的编排引擎,并是管理容器化应用程序的极佳选择,那么它也更能让Docker公司投入更多的Docker引擎在生产环境中。

 

在我看来,Kubernetes不是Docker的终结者而是推动者。更进一步来说,业务流程工具只是Docker平台的商品。所有的业务流程引擎都会驱动容器的发展,对Docker来说重要的是容器使用率的增加。业务流程引擎是Docker平台的关键组成部分,它使他们成为朋友,而不是敌人。

原文发布时间为:2017-05-05

本文来自云栖社区合作伙伴DBAplus

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
13天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
55 2
|
23天前
|
Kubernetes 监控 开发者
掌握容器化:Docker与Kubernetes的最佳实践
【10月更文挑战第26天】本文深入探讨了Docker和Kubernetes的最佳实践,涵盖Dockerfile优化、数据卷管理、网络配置、Pod设计、服务发现与负载均衡、声明式更新等内容。同时介绍了容器化现有应用、自动化部署、监控与日志等开发技巧,以及Docker Compose和Helm等实用工具。旨在帮助开发者提高开发效率和系统稳定性,构建现代、高效、可扩展的应用。
|
15天前
|
运维 Kubernetes Docker
利用Docker和Kubernetes构建微服务架构
利用Docker和Kubernetes构建微服务架构
|
13天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?
|
13天前
|
监控 持续交付 Docker
Docker容器化部署在微服务架构中的应用
Docker容器化部署在微服务架构中的应用
|
13天前
|
安全 持续交付 Docker
微服务架构和 Docker 容器化部署的优点是什么?
微服务架构和 Docker 容器化部署的优点是什么?
|
21天前
|
JavaScript 持续交付 Docker
解锁新技能:Docker容器化部署在微服务架构中的应用
【10月更文挑战第29天】在数字化转型中,微服务架构因灵活性和可扩展性成为企业首选。Docker容器化技术为微服务的部署和管理带来革命性变化。本文探讨Docker在微服务架构中的应用,包括隔离性、可移植性、扩展性、版本控制等方面,并提供代码示例。
55 1
|
1月前
|
Kubernetes 持续交付 Docker
利用 Docker 和 Kubernetes 实现微服务部署
【10月更文挑战第2天】利用 Docker 和 Kubernetes 实现微服务部署
|
3月前
|
Kubernetes Devops 持续交付
DevOps实践:使用Docker和Kubernetes实现持续集成和部署网络安全的守护盾:加密技术与安全意识的重要性
【8月更文挑战第27天】本文将引导读者理解并应用DevOps的核心理念,通过Docker和Kubernetes的实战案例,深入探讨如何在现代软件开发中实现自动化的持续集成和部署。文章不仅提供理论知识,还结合真实示例,旨在帮助开发者提升效率,优化工作流程。
|
开发框架 Kubernetes 负载均衡
宝塔面板+Rancher+阿里云镜像仓库+Docker + Kubernete s,添加集群、部署 web 应用
前言: 本文使用 Centos 7.x 进行操作,Rancher 官方推荐使用 Ubuntu。 Docker 对内核要求 大于 3.10,你可以使用 uname -r 检测系统内容版本。 通过 Rancher,可以很方便地对多个主机进行管理,实现负载均匀、集群、分布式构架、故障转移、状态监控等。
3077 0
宝塔面板+Rancher+阿里云镜像仓库+Docker + Kubernete s,添加集群、部署 web 应用
下一篇
无影云桌面