本文已发布超过一年。较旧文章可能包含过时内容。请检查页面中的信息自发布以来是否已不再准确。

Kubernetes、云原生和软件的未来

Kubernetes、云原生和软件的未来

五年前的六月,Google Cloud 发布了一项名为 Kubernetes 的全新应用管理技术。它始于一个简单的开源提交,第二天紧跟着是在一篇单段博客中提及容器支持。之后一周,Eric Brewer 在 DockerCon 上首次谈论了 Kubernetes。很快,全世界都开始关注。

我们很高兴看到 Kubernetes 成为现代软件创建和操作的核心,并因此成为全球经济的关键部分。对我们而言,Kubernetes 的成功代表着更多:一场具有真正全球影响的业务转型,这得益于开源软件运动带来的前所未有的合作。

像任何重要的技术一样,Kubernetes 不仅仅是自身;它积极影响了它所产生的环境,改变了软件如何大规模部署、工作如何完成以及企业如何与大型开源项目互动。

让我们回顾一下这是如何发生的,因为这能告诉我们很多关于今天所处位置以及接下来可能发生的事情。

开端

Kubernetes 最重要的前身是应用容器的兴起。Docker 是第一个真正让广大受众能够使用容器的工具,它于 2013 年作为开源项目启动。通过将应用容器化,开发者可以更轻松地管理语言运行时、部署和实现可伸缩性。这在应用生态系统中引发了巨变。容器使无状态应用易于伸缩,并提供了不可变(immutable)的部署工件,这大大减少了以前在测试和生产系统之间遇到的变量数量。

虽然容器为开发者提供了强大的独立价值,但下一个挑战是如何交付和管理跨越多个容器和多台主机的服务、应用和架构。

谷歌在其内部 IT 基础设施中已经遇到了类似的问题。运行着世界上最流行的搜索引擎(以及其他几个拥有数百万用户的产品)促使了早期围绕容器的创新和采用。Kubernetes 的灵感来源于 Borg,这是谷歌用于调度和管理数亿甚至最终数十亿个容器的内部平台,这些容器实现了我们所有的服务。

Kubernetes 不仅仅是“人人都能用的 Borg”。它提炼了先前系统中最成功的架构和 API 模式,并将它们与负载均衡、授权策略以及运行和大规模管理应用所需的其他功能结合起来。这反过来又为集群范围的抽象提供了基础,实现了真正的跨云可移植性。

2014 年 11 月,Google Cloud发布Google Kubernetes Engine (GKE) 的 Alpha 版本,推出了托管式 Kubernetes。围绕 Kubernetes 的创新呈爆炸式增长,从企业到初创公司都看到了采用障碍的消失。谷歌、红帽以及社区中的其他人增加了人力、经验和架构知识的投入,以确保它能应对日益重要的关键任务工作负载。由此产生的应用浪潮将其推向了拥挤的容器管理领域的前沿。

云原生的兴起

每个企业,无论其核心业务是什么,都在拥抱更多的数字技术。快速适应的能力是持续增长和竞争力的基础。云原生技术,尤其是 Kubernetes,应运而生以满足这一需求,提供了大规模、高速管理应用所需的自动化和可观测性。以前受限于每季度部署关键应用一次的组织现在可以每天安全地部署多次。

Kubernetes 的声明式、API 驱动基础设施使团队能够独立运作,并让他们能够专注于业务目标。工作场所中不可避免的文化转变来自于赋能更大的自主性和生产力,以及减少开发团队的重复性劳动。

增加对开源的参与度

团队快速开发和部署新软件的能力为公司和技术从业者创造了成功的良性循环。公司已经开始认识到,回馈他们使用的软件项目不仅能改进软件在其用例中的性能,还能培养关键技能并创造具有挑战性的机会,帮助他们吸引和留住新的开发者。

Kubernetes 项目尤其培育了一种协作文化,鼓励社区贡献并分享学习和开发成果。这 fostering 一个积极和共赢的生态系统,使贡献者和最终用户都能受益。

接下来是什么?

就 Kubernetes 而言,五年似乎是一个永恒。这充分说明了我们在社区中看到的集体创新,以及技术的快速采用。

从另一方面来说,这仅仅是个开始。新的应用,如机器学习、边缘计算和物联网,正通过 Kubeflow 等项目进入云原生生态系统。Kubernetes 几乎肯定会成为它们成功的核心。

如果 Kubernetes 能够成为日常生活中的隐形必需品,就像城市的管道或电网一样,那么它可能是最成功的。真正的标准是引人注目的,但它们也是被视为理所当然的。正如 Googler 和 KubeCon 联合主席 Janet Kuo 在最近的主题演讲中所说,Kubernetes 将变得“无聊”,这是一件好事,至少对于绝大多数不需要关心容器管理的人来说是这样。

在 Google Cloud,我们仍然对这个项目充满热情,并且每天都在为此努力。然而,真正将彻底改变我们所知世界的,是那些从 Kubernetes 扩展出来的所有解决方案和扩展功能。

因此,在我们所有人庆祝 Kubernetes 持续成功的同时,请记住花时间感谢你看到帮助社区变得更好的人。培育一个珍视每个帮助维护和培育我们共同工作的云原生生态系统,是我们所有人的责任。

最后,对于所有参与 Kubernetes 全球成功的人,谢谢你们。你们改变了世界。