Kubernetes 1.13:简化的集群管理,Kubeadm、容器存储接口(CSI)和 CoreDNS 作为默认 DNS 现已正式可用

我们很高兴地宣布发布 Kubernetes 1.13,这是我们 2018 年的第四个也是最后一个版本!

Kubernetes 1.13 是迄今为止最短的版本之一,为期 10 周。此版本继续专注于 Kubernetes 的稳定性和可扩展性,在本周期中有三个主要功能在存储和集群生命周期领域达到了普遍可用 (GA) 级别。此版本中值得关注的 GA 功能包括:使用 kubeadm 简化集群管理、容器存储接口 (CSI) 和 CoreDNS 作为默认 DNS。

这些稳定的 GA 对于用户和操作员在设置支持预期方面是一个重要的里程碑。此外,此版本还持续稳定地提供内部改进和新的 Alpha 功能。这些功能将在下面的“其他值得注意的功能”部分中讨论。

让我们深入了解此版本的主要功能

通过 kubeadm 简化 Kubernetes 集群管理(已 GA)

大多数动手使用过 Kubernetes 的人,都或多或少地接触过 kubeadm。它是管理集群生命周期(从创建到配置再到升级)的重要工具;现在 kubeadm 已正式 GA。kubeadm 负责在现有硬件上引导生产集群,并以最佳实践方式配置核心 Kubernetes 组件,以提供安全且易于加入新节点的流程并支持轻松升级。此 GA 版本值得注意的是现在已达到 GA 的高级功能,特别是围绕可插拔性和可配置性的功能。kubeadm 的范围是作为管理员和自动化、更高级别系统的工具箱,此版本是朝这个方向迈出的重要一步。

容器存储接口 (CSI) 进入 GA 阶段

容器存储接口 (CSI) 在 v1.9 中作为 Alpha 版本引入,在 v1.10 中作为 Beta 版本引入后,现已达到 GA 阶段。借助 CSI,Kubernetes 卷层变得真正可扩展。这为第三方存储提供商提供了编写可与 Kubernetes 互操作的插件的机会,而无需触及核心代码。规范本身也已达到 1.0 版本。

随着 CSI 现在稳定,插件作者正在核心之外以自己的速度开发存储插件。您可以在 CSI 文档中找到示例和生产驱动程序列表。

CoreDNS 现已成为 Kubernetes 的默认 DNS 服务器

在 1.11 版本中,我们宣布 CoreDNS 已普遍可用于基于 DNS 的服务发现。在 1.13 版本中,CoreDNS 正在取代 kube-dns 成为 Kubernetes 的默认 DNS 服务器。CoreDNS 是一个通用、权威的 DNS 服务器,它提供了向后兼容但可扩展的 Kubernetes 集成。CoreDNS 比以前的 DNS 服务器具有更少的移动部件,因为它是一个单一的可执行文件和单一进程,并通过创建自定义 DNS 条目支持灵活的用例。它也是用 Go 语言编写的,因此内存安全。

CoreDNS 现在是 Kubernetes 1.13+ 的推荐 DNS 解决方案。该项目已将通用测试基础设施默认切换为使用 CoreDNS,我们也建议用户进行切换。KubeDNS 至少还会支持一个版本,但现在是开始规划迁移的时候了。许多开源安装工具已经完成了切换,包括 Kubeadm 在 1.11 版本中。如果您使用托管解决方案,请与您的供应商合作,了解这将如何影响您。

其他值得注意的功能更新

对第三方设备监控插件的支持已作为 Alpha 功能引入。这移除了 kubelet 中当前的设备特定知识,以支持未来需要设备特定知识在树外的情况。

Kubelet 设备插件注册正在稳定版毕业。这创建了一个通用的 Kubelet 插件发现模型,可供不同类型的节点级插件(如设备插件、CSI 和 CNI)用于与 Kubelet 建立通信通道。

拓扑感知卷调度现已稳定。这使得调度器能够感知 Pod 卷的拓扑约束,例如区域或节点。

APIServer DryRun 正在毕业到 Beta 版。这将“应用”和声明性对象管理从 kubectl 移到 apiserver,以修复许多当前无法修复的现有错误。

Kubectl Diff 正在毕业到 Beta 版。这允许用户运行 kubectl 命令来查看本地声明的对象配置与实时对象的当前状态之间的差异。

使用持久卷源的原始块设备正在毕业到 Beta 版。这使得原始块设备(非网络连接)可以通过持久卷源进行使用。

社区内的每个特别兴趣小组 (SIG) 都继续为其各自的专业领域提供最需要的增强、修复和功能。有关按 SIG 分类的完整内容列表,请访问发布说明

可用性

Kubernetes 1.13 可在 GitHub 上下载。要开始使用 Kubernetes,请查看这些交互式教程。您还可以使用 kubeadm 轻松安装 1.13。

功能博客系列

如果您有兴趣更深入地探索这些功能,请明天再回来查看我们的 Kubernetes 5 天系列,届时我们将重点介绍以下功能的详细演练:

  • 第 1 天 - 使用 Kubeadm 简化 Kubernetes 集群创建
  • 第 2 天 - 树外 CSI 卷插件
  • 第 3 天 - 将默认 DNS 插件切换到 CoreDNS
  • 第 4 天 - 新的 CLI 技巧和窍门 (Kubectl Diff 和 APIServer Dry run)
  • 第 5 天 - 原始块卷

发布团队

此版本的发布离不开数百位贡献技术和非技术内容的个人。特别感谢由 Google 软件工程师 Aishwarya Sundar 领导的发布团队。发布团队的 39 名成员协调了发布过程的许多方面,从文档到测试、验证和功能完整性。

随着 Kubernetes 社区的发展,我们的发布过程展示了开源软件开发中令人惊叹的协作。Kubernetes 继续以惊人的速度获得新用户。这种增长创造了一个积极的反馈循环,即更多的贡献者提交代码,从而创造了一个更活跃的生态系统。Kubernetes 迄今已有超过 25,000 名个人贡献者,以及一个拥有超过 51,000 人的活跃社区。

项目速度

CNCF 继续完善 DevStats,这是一个雄心勃勃的项目,旨在可视化对项目的大量贡献。K8s DevStats 展示了主要公司贡献者的贡献细分,以及一系列令人印象深刻的预配置报告,涵盖从个人贡献者到拉取请求生命周期时间的所有内容。在过去的一年里,平均每月有 347 家不同的公司和超过 2,372 名个人为 Kubernetes 做出贡献。查看 DevStats 以了解 Kubernetes 项目和社区的整体速度。

用户亮点

成熟的全球组织正在大规模使用生产中的 Kubernetes。社区最近发布的成功案例包括:

Kubernetes 正在帮助您的团队吗?与社区分享您的故事

生态系统更新

  • CNCF 最近发布了其半年度 CNCF 调查的中文版结果,发现自 2018 年 3 月以来,亚洲的云使用量增长了 135%。
  • CNCF 扩展了其认证产品,包括 Certified Kubernetes Application Developer (CKAD) 考试。CKAD 考试认证个人为 Kubernetes 设计、构建、配置和公开云原生应用程序的能力。更多信息可在此处找到
  • CNCF 增加了一个新的合作伙伴类别:Kubernetes 培训合作伙伴 (KTP)。KTP 是经过审查的培训提供商,在云原生技术培训方面拥有深厚经验。在此处查看合作伙伴并了解更多信息
  • CNCF 还提供在线培训,教授创建和配置真实 Kubernetes 集群所需的技能。
  • Kubernetes 文档现在提供用户旅程:根据读者的身份和想要做的事情,提供特定的学习路径。对于初学者来说,学习 Kubernetes 比以往任何时候都容易,更有经验的用户可以找到针对集群管理员和应用程序开发人员的任务旅程。

KubeCon

全球最大的 Kubernetes 聚会 KubeCon + CloudNativeCon 将于 2018 年 12 月 10 日至 13 日在西雅图举行,并于 2019 年 5 月 20 日至 23 日在巴塞罗那举行。本次大会将包括技术会议、案例研究、开发者深度探讨、沙龙等。注册将于 2019 年初开放

网络研讨会

加入 Kubernetes 1.13 发布团队的成员,于 1 月 10 日太平洋夏令时间上午 9 点了解此版本的主要功能。在此处注册

参与其中

参与 Kubernetes 最简单的方法是加入与您的兴趣相符的众多特别兴趣小组 (SIG) 之一。有什么想向 Kubernetes 社区广播的吗?在我们的每周社区会议上以及通过以下渠道发表您的声音。

感谢您一直以来的反馈和支持。