AICon日程100%就绪,9折倒计时最后一周 了解详情
写点什么

Docker 的凋零与 Kubernetes 的兴起

  • 2019-10-24
  • 本文字数:3795 字

    阅读完需:约 12 分钟

Docker 的凋零与 Kubernetes 的兴起

本文最初发表在 The HFT Guy 的个人博客,经原作者授权,由 InfoQ 中文站翻译并分享。


导读:


Docker 和 Kubernetes 的区别是什么?为什么说 Docker 要灭亡,而 Kubernetes 要兴起呢?Docker 指的是 Docker engine(也叫做 Docker daemon,或最新的名字:Moby),它是一种容器运行时(container runtime)的实现,而且是最主流的实现,几乎就是容器业界的事实标准。Docker 是用来创建和管理容器的,它和容器的关系就好比 Hypervisor(比如:KVM)和虚拟机之间的关系。当然,Docker 公司对 Docker engine 本身的定位和期望不仅仅在于在单机上管理容器,所以近年来一直在向 Docker engine 中加入各种各样的高级功能,比如:组建多节点的 Docker 集群、容器编排、服务发现,等等。而 Kubernetes,是搭建容器集群和进行容器编排的主流开源项目(由 Google 发起并维护),适合搭建 PaaS 平台。容器是 Kubernetes 管理的核心目标对象,它和容器的关系就好比 OpenStack 和虚拟机之间的关系,而它和 Docker 的关系就好比 OpenStack 和 Hypervisor 之间的关系。一般来说,Kubernetes 是和 Docker 配合使用的,Kubernetes 调用每个节点上的 Docker 去创建和管理容器,所以,你可以认为 Kubernetes 是大脑,而 Docker 是四肢。因此,在这样的背景下,Docker 逐渐式微,而 Kubernetes 崛起,就毫不奇怪了。我们曾发表过《Docker 麻烦大了》,由此可见一斑。


正文:


就在几年前,Docker 遍地开花。每一家中小企业都采用它,或者即将采用它。


3~5 年后,Docker 还剩下什么?嗯,不多。


让我们将这个问题换一种说法,以便说得更准确些。现在,有哪家公司还会关心 Docker?令人惊讶的是,答案居然为零。


这个世界总是在不断前进。

Docker 就业前景如何?

如果你只是 Docker 专家,那么,你现在就有麻烦了。现在没有什么岗位需要 Docker 的专业知识,而你就要面临失业的危险了。


Docker 专家的意思是,非常熟悉容器化概念和特定于 Docker 的实现,以及在生产环境中构建、运行和调试容器的经验。


以下是 2017 年的典型面试问题:


  • 什么是 Docker?

  • 什么是容器?

  • 虚拟机和容器之间的区别是什么?

  • 什么是构建 Docker 映像的最佳实践?

  • 如何构建容器?

  • 映像存储在哪里?

  • 什么是 cgroups?

  • 你能说出一些 Docker 的命令吗?


以下是 2019 年的 6 个典型面试问题:


  • 什么是 pod

  • 什么是部署

  • 什么是有状态集

  • 如何在不停机的情况下更新应用程序?

  • 什么是命名空间?什么时候使用?

  • 你能说出一些 Kubernetes 的命令吗?


2019 年那些面试问题都是小菜一碟,是吧?但世界上所有的 Docker 专家却无法回答这些问题。这些都是 Kubernetes 的概念,一个全新的学习世界。如果你是 Docker 专家,为了能够保持就业的优势,在竞争中立于不败之地,请认真阅读,更好地跟上当前的技术吧!


最近,公司对 Kubernetes 有强烈的偏见。他们真的在寻找具有 Kubernetes 的经验(最好是很多年的生产经验)的独角兽。

Kubernetes

Kubernetes 几乎在一夜之间改变了格局。在这个过程中,Kubernetes 还修改了关于容器和编排的每一个术语(有关一些实例,可参阅上面的问题)。


曾经被称为 Docker 的东西,现在只被称为“容器引擎”(Docker Engine)。这种巧妙的营销手段取得了巨大的成功。就像汽车的引擎一样,容器引擎依然存在,事实上它无处不在,包括作为依赖项与 Kubernetes 一起运行,但它的存在被忽略了,被所有人遗忘。


只需参加会议和求职面试,你就会发现,Kubernetes 现在已经无处不在,但容器引擎却销声敛迹,不知所踪。


这就是浮在大海上的冰山可见部分。Kubernetes 正在垂直整合整个生态系统,并成为首选解决方案。


在幕后,这是一个微妙的举动,将 Docker 重新定位一个可替换的引擎,等待被推出。有多个玩家在发挥激励作用,并积极努力将其淘汰(如 RedHat、Google、Amazon 等等)。

Kubernetes 争取到了管理层的认可

Kubernetes 在 Docker 失败的地方取得了成功,得到了管理层的认可。


只要在财富五百强企业工作,并关注高层管理会议、全体员工大会、公告和其他大型公司活动,你就会发现,它指出了时间和金钱的去向,为未来铺平了道路。


一半时间是在未来铺路,另一半时间用来做预算和自我推销。不管怎样,这都是正确的道路。


你可能会注意到,经常反复出现的主题是:#Cloud #Kubernetes #AWS #AI #MachineLearning #BigData #BlockChain(猜猜哪个是游戏规则的改变者,哪个是时髦语)


计算一下 Kubernetes 被提及的频率,你将会发现,几乎在每一个事件中都有提及 Kubernetes,重复了很多次。而容器引擎自今年年初以来,被提及的次数恰好为零(注意,今年还有两个月就过去了)。


财富五百强企业在 Kubernetes 进行了大量的投资:更多的员工,公开招聘,咨询业务,高达 6 位数和 7 位数的支票拨给企业提供商和承包单位。而一分钱都不会给 Docker。


显而易见的是,在这一阶段,Docker 完全没有从企业中获利。

钱都去哪里了?

首先也是最重要的,DevOps 人员,无论是全职员工、承包商还是顾问。请记住,与软件许可证或硬件不同,人力资源总是在推动项目和成本。对工人来说,只不过是个简短的插入语,而在承包 / 咨询方面则有很多机会。显然,对于 Google 前员工或其他为这些技术做出贡献的人来说,这个市场尤为火爆。


对于中小型企业来说,他们通常是在云端上。大笔资金正在流向 AWS EKS、AWS ECS、Google GKE 或 Microsoft Azure。


对于中大型企业来说,他们采用的是内部部署或混合部署。大笔资金流向了 VMWare(虚拟机仍然很强大)、Pivotal Cloud Foundry 和 RedHat OpenShift。


对于企业咨询来说,最大的竞争对手似乎是 Heptio,它刚刚被 VMware 以 4 亿美元收购(这是一笔明智的收购)。顺便说一下,VMware 很快就会在 vCenter 之上推出完全托管的 Kubernetes 解决方案。


Kubernetes 也需要一个容器注册表。云端中的托管解决方案有自己的注册表,这是账单中的另一个明细项目。


在现有前提下,要么是免费注册,要么是付费的商业解决方案,Quay 在一段时间内似乎成了主导者。注册表市场最近可能有点饱和,因为所有的东西都跃升为注册表,包括 gitlabgithub、nexus 和 artifactory 在内。


容器引擎注册表在商业版可用。然而奇怪的是,从来没有在任何公司中发现它的影子,也没有遇到任何使用它的人。我们真的很想知道它是否有客户或收入。这可能是最大的商业失败之一,就跟 Apple 公司当初推出自家地图服务各种出糗一样。


译注:2012 年,Apple 在 iOS6 不再使用 Google 地图服务,推出了自家的 Apple 地图服务,但却因错误百出而被用户密集吐糟,Tim Cook 曾就地图错误被迫公开致歉,承认 Apple 地图服务确实搞砸了,并建议用户使用 Google 地图服务。

Podman 来了

由于所有位都可以通过不同的解决方案来单独使用,因此,或多或少都可以进行管理。唯一需要替换的是容器引擎本身。


不用多说,接受挑战!从 RHEL 8 开始,RehHat 就开始计划扼杀它,很显然,他们在用自己的引擎来取代它。他们的引擎就叫做 Podman。


有没有可能毁掉一个命令,或者更甚,一个品牌?再甚,一家供应商?如此下去,就这样吗?


是的。在最近的历史上,这样的事情已经发生过很多次了。最著名的例子之一就是 MySQL。MySQL 在 2010 年左右被 Oracle 收购,随后被社区抛弃而惨遭淘汰。后派生出来的分支称为 MariaDB。如果你在过去十年里曾运行过 apt-get install mysql 的命令,那么它很有可能安装的是 MariaDB,以透明的方式进行别名和替换。


长话短说。对 RedHat 来说,对 docker => podman 做同样的事情简直就好像在公园里散步一样。

谁会买下 Moby?

九轮融资共计 2.72 亿美元。要让投资者获得回报,出售价格必须相当高才行。


话虽如此。不要陷入一个常见的错误,认为公司就一定会失败,变得一文不值。按照硅谷的标准,一家不成功、没有增长的公司,仍然是一家非常受人尊敬的中型企业。一家只有几百名员工的普通企业可能价值 1 亿美元。人才收购或杀手级收购,可以带来 100 万美元的人均收入。


目前的员工人数显示公司在 100~250 人之间,不管用什么标准来衡量,这家公司都不值它所筹集到资金。


不过,更糟糕的情况可能还没有到来。这种趋势很有可能是下降而不是上升。我对看到本文的员工要道一声抱歉。员工们都在离开,他们可以从负面新闻和其他更好的机会看到潮流的转变。


唯一有价值的可能是公共镜像注册表。来自所有注册会员和组织的个人资料和联系方式(销售线索或其他货币化)。再加上一个直接的自动化部署管道,几乎可以连接到世界上的每家公司(暗黑模式和恶意软件的潜力是无穷无尽的)。回想一下,2012 年 SourceForge 以 2000 万美元的价格出售分发广告软件。


所有的东西都包括在内,还有些价值需要补偿。接近 8 位数而不是 10 位数。



请称我 Moby


即使有买家,假设是其中一个常见的潜在买家,如 RedHat/Pivotal/VMWare/AWS/Google/Microsoft。为什么今天买东西,明天就掉了一半价呢?当你已经把替代产品 / 服务卖得更好时,为什么还要去买呢?对于任何人来说,没有谁真正获得压力。


作者介绍:


The HFT Guy,定居英国伦敦的开发人员,掌握多种技能,拥有扎实的软件工程背景和硕士学位。他在软件公司、金融科技、航空航天、银行、咨询和政府项目方面有着广泛的经验。他的生活哲学理念是“活着是为了创造,创造是为了谋生。”HFT 是高频交易(High-frequency trading)的意思,作者以此为笔名,是为了勉励自己争取成功和成就。


原文链接:


The demise of docker and the rise of kubernetes


2019-10-24 16:3812891

评论 3 条评论

发布
用户头像
有点激进。。。MySQL还活得挺好吧,MariaDB替代MySQL还很遥远
2019-12-03 15:57
回复
用户头像
有了K8S,Docker变成可替代的了
2019-10-30 11:28
回复
用户头像
Docker当年卖给微软多好
2019-10-27 22:40
回复
没有更多了
发现更多内容

2021年最新基于Spring Cloud的微服务架构分析

爱好编程进阶

Java 程序员 后端开发

2022年最新Java后端薪资统计出炉,看看你有没有拖后腿

爱好编程进阶

Java 程序员 后端开发

数据增强(三)-Batch Augmentation

AIWeker

人工智能 深度学习 数据增强 5月月更

2021-06-05# Java基础(dayFourteen):锁的两种方式

爱好编程进阶

Java 程序员 后端开发

2021-09-17 dynamic addres list(File Edition)

爱好编程进阶

Java 程序员

Carina 全新版本 V0.10发布 :支持裸盘作为存储卷

BoCloud博云

开源 本地存储

盲盒系统开发盲盒源码搭建需要多长时间

WDL22119

3分钟教你搞定服务器上架信息收集

爱好编程进阶

Java 程序员 后端开发

ansible 模块:blockinfile

ghostwritten

ansible

BATJ互联网月薪38K的Java岗面试题首曝光,掌握这些大厂Offer指定跑不了

爱好编程进阶

Java 程序员 后端开发

JAVA异常情况如何处理?

源字节1号

后端开发

案例分享|智慧广电的“宽带加速”之路,博睿数据来“私人定制”

博睿数据

数字化转型 博睿数据 智慧广电

博云:Kubernetes 近年影响最大版本发布,这几点值得关注

BoCloud博云

Kubetnetes

《2022微隔离技术与安全用例研究报告》重磅发布 | 附PDF全文下载

青藤云安全

2021备战金三银四必刷的1000道Java面试真题

爱好编程进阶

Java 程序员 后端开发

5分钟学会 Vim 分屏操作方方面面

爱好编程进阶

Java 程序员 后端开发

记一次存储系统IOPS翻倍的性能优化

Vincent

性能优化 存储系统

告诉你使用预约小程序的9个理由

天天预约

小程序 SaaS 企业服务 预约工具

gRPC三种客户端类型实践【Java版】

FunTester

6个月的开发,来面试居然要18K,我一问连5K都不值

爱好编程进阶

Java 程序员 后端开发

Batman+joker乱谈

爱好编程进阶

Java 程序员 后端开发

如何真正将企业知识管理做出价值?

小炮

企业知识管理

1024程序员节特别篇:Linux三十年的发展历程以及未来的走向

爱好编程进阶

Java 程序员 后端开发

15个经典面试问题及回答思路,很多人死在了最后一个问题上

爱好编程进阶

Java 程序员 后端开发

让客户实现 AI 算力“自由”,博云与趋动科技完成算力调度容器化验证

BoCloud博云

AI

【国产】自动化运维ETL统一调度平台TASKCTL流程触发方式

敏捷调度TASKCTL

DevOps 分布式 数据仓库 ETL 自动化运维

09-条件查询器Wrapper

爱好编程进阶

Java 程序员 后端开发

TiDB 6.0 新特性解读丨 Collation 规则

PingCAP

直播预告|争夺存量用户关键战,助力企业构建完美标签体系

袋鼠云数栈

大数据 数据中台

线程通信

急需上岸的小谢

5月月更

90后码农:我面试了很多80后程序员,他们大多技术深度都不够

爱好编程进阶

Java 程序员 后端开发

Docker 的凋零与 Kubernetes 的兴起_大数据_Thehftguy_InfoQ精选文章