你正在查看的文档所针对的是 Kubernetes 版本: v1.28
Kubernetes v1.28 版本的文档已不再维护。你现在看到的版本来自于一份静态的快照。如需查阅最新文档,请点击 最新版本。
kubeadm 七周年生日快乐!
作者: Fabrizio Pandini (VMware)
译者: Michael Yao (DaoCloud)
回首向来萧瑟处,七年光阴风雨路!
从 2016 年 9 月发表第一篇博文 How we made Kubernetes insanely easy to install 开始,kubeadm 经历了令人激动的成长旅程,两年后随着 Production-Ready Kubernetes Cluster Creation with kubeadm 这篇博文的发表进阶为正式发布。
此后,持续、稳定且可靠的系列小幅改进一直延续至今。
什么是 kubeadm?(简要回顾)
kubeadm 专注于在现有基础设施上启动引导 Kubernetes 集群并执行一组重要的维护任务。
kubeadm 接口的核心非常简单:通过运行
kubeadm init
创建新的控制平面节点,通过运行
kubeadm join
将工作节点加入控制平面。此外还有用于管理已启动引导的集群的实用程序,例如控制平面升级、令牌和证书续订等。
为了使 kubeadm 精简、聚焦且与供应商/基础设施无关,以下任务不包括在其范围内:
- 基础设施制备
- 第三方联网
- 例如监视、日志记录和可视化等非关键的插件
- 特定云驱动集成
例如,基础设施制备留给 SIG Cluster Lifecycle 等其他项目来处理, 比如 Cluster API。 kubeadm 仅涵盖每个 Kubernetes 集群中的共同要素: 控制平面。 用户可以在集群创建后安装其偏好的联网方案和其他插件。
kubeadm 在幕后做了大量工作。它确保你拥有所有关键组件:etcd、API 服务器、调度器、控制器管理器。 你可以加入更多的控制平面节点以提高容错性,或者加入工作节点以运行你的工作负载。 kubeadm 还为你设置好了集群 DNS 和 kube-proxy;在各组件之间启用 TLS 用于传输加密。
庆祝 kubeadm 的过去、现在和未来!
总之,kubeadm 的故事与 Kubernetes 深度耦合,也离不开这个令人惊叹的社区。
因此庆祝 kubeadm 首先是庆祝这个社区,一群人共同努力寻找一个共同点,一个最小可行工具,用于启动引导 Kubernetes 集群。
kubeadm 这个工具对 Kubernetes 的成功起到了关键作用,其价值主张可以概括为两点:
-
极致的简单:只需两个命令 kubeadm init 和 kubeadm join 即可完成初始化和接入集群的操作!让大多数用户轻松上手。
-
明确定义的问题范围:专注于在现有基础设施上启动引导 Kubernetes 集群。正如我们的口号所说:保持简单,保持可扩展!
这个明确的约定是整个 kubeadm 用户群体所依赖的基石,同时本文也是为了与 kubeadm 的使用者们共同欢庆。
我们由衷感谢用户给予的反馈,感谢他们通过 Slack、GitHub、社交媒体、博客、每次 KubeCon 会面以及各种聚会上持续展现的热情。来看看后续的发展!
这么多年来,对人们基于 kubeadm 构建的诸多项目我感到惊叹。迄今已经有很多强大而活跃的项目,例如:
- minikube
- kind
- Cluster API
- Kubespray
- 还有更多;如果你正在使用 Kubernetes,很可能你甚至不知道自己正在使用 kubeadm 😜
这个社区、kubeadm 的用户以及基于 kubeadm 构建的项目,是 kubeadm 七周年庆典的亮点,也是未来怎么发展的基础!
请继续关注我们,并随时与我们联系!
- 现在尝试使用 kubeadm 安装 Kubernetes
- 在 GitHub 参与 Kubernetes 项目
- 在 Slack 与社区交流
- 关注我们的 Twitter 账号 @Kubernetesio,获取最近更新信息