写点什么

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:3812520

评论 3 条评论

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

服务器与普通台式机的对比及发展趋势

Finovy Cloud

gpu 云服务器 GPU服务器 GPU算力

全网最细的短网址系统设计与实战

清风

MySQL redis 布隆过滤器 Java EE

基于云效AppStack实现环境管理 | 开箱即用

阿里云云效

阿里云 研发管理 研发 应用交付 环境管理

最佳实践 | 运维效率提升10倍的秘诀

星汉未来

DevOps 云原生 智能运维

多商户商城系统如何对接电商收付通?

CRMEB

一文看懂博睿数据AIOps场景、算法和能力

博睿数据

SqlServer主备构建探索

Lane

SqlServer

博云首批通过欧拉技术测评,联合解决方案通过验证

BoCloud博云

新闻

看端点科技如何以行业实践探索企业数字化转型新路径

科技热闻

观测云新增俄勒冈站点,布局全球可观测服务网络

观测云

向着阳光的华为,淬火而行的哪吒

脑极体

Flutter 网络请求 Dio 拦截器详解

岛上码农

flutter ios 安卓开发 4月月更 跨平台应用

浅谈商业模式---《北大-真格创业课》笔记(30/100)

hackstoic

商业模式 创业公司

时序数据库 VS 工业实时数据库

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

2022,「大厂云」还在找新着力点

ToB行业头条

高级Java面试经验总结:多家大厂简历优化+面试题目+面经+薪酬等

Java架构追梦

Java 程序员 面试 后端开发

没日没夜做需求,就能交出满分答卷吗?

LigaAI

敏捷开发 需求

IDC最新报告:澳鹏AI全生命周期数据解决方案在市场上具独特优势

澳鹏Appen

人工智能 大数据 数据标注 训练数据 数据训练

课程四

ASCE

极致通缩的元宇宙模型PlatoFarm ,生态通证PLATO 一览

威廉META

“数聚赋能”,让实时数据中台成为惠企、惠民政策服务应用的源头活水

tapdata

数据中台 数字政务 实时数据 智慧政务

直播回顾:SIMD 指令集在 OpenJDK 中的现状与未来 | 龙蜥技术

OpenAnolis小助手

Java Openjdk simd arm 龙蜥社区

新品发布 | OpenHarmony面向教育行业的发行版+大赛预告来了~

拓维信息

活动 操作系统 OpenHarmony OpenAtom OpenHarmony OpenHarmony 3.1 Release

TOGAF 10新鲜出炉了!

涛哥

企业架构 TOGAF

Android C++系列:vector最佳实践

轻口味

c++ android 4月月更

yarn add electron安装失败

空城机

YARN Electron

Redis太难?阿里P8总结的Redis灵魂拷问70题解析,还不懂我就哭了

Java架构追梦

Java 后端开发 程序员面试 Redis 数据结构

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