Kubernetes 项目认为此文章已经过时,因为该页面已经超过一年未修订。请检查页面中的信息是否从发表以来尚未变得不正确。
Kubernetes 1.18: Fit & Finish
我们很高兴宣布 Kubernetes 1.18 版本的交付,这是我们 2020 年的第一版! Kubernetes 1.18 包含 38 个增强功能:15 项增强功能已转为稳定版,11 项增强功能处于 beta 阶段,12 项增强功能处于 alpha 阶段。
Kubernetes 1.18 是一个近乎 “完美” 的版本。 为了改善 beta 和稳定的特性,已进行了大量工作,以确保用户获得更好的体验。 我们在增强现有功能的同时也增加了令人兴奋的新特性,这些有望进一步增强用户体验。
对 alpha,beta 和稳定版进行几乎同等程度的增强是一项伟大的成就。 它展现了社区在提高 Kubernetes 的可靠性以及继续扩展其现有功能方面所做的巨大努力。
主要内容
Kubernetes 拓扑管理器(Topology Manager)进入 Beta 阶段 - 对齐!
Kubernetes 在 1.18 版中的 Beta 阶段功能 拓扑管理器特性 启用 CPU 和设备(例如 SR-IOV VF)的 NUMA 对齐,这将使您的工作负载在针对低延迟而优化的环境中运行。在引入拓扑管理器之前,CPU 和设备管理器将做出彼此独立的资源分配决策。 这可能会导致在多处理器系统上非预期的资源分配结果,从而导致对延迟敏感的应用程序的性能下降。
Serverside Apply 推出Beta 2
Serverside Apply 在1.16 中进入 Beta 阶段,但现在在 1.18 中进入了第二个 Beta 阶段。 这个新版本将跟踪和管理所有新 Kubernetes 对象的字段更改,从而使您知道什么更改了资源以及何时发生了更改。
使用 IngressClass 扩展 Ingress 并用 IngressClass 替换已弃用的注释
在 Kubernetes 1.18 中,Ingress 有两个重要的补充:一个新的 pathType
字段和一个新的 IngressClass
资源。pathType
字段允许指定路径的匹配方式。 除了默认的ImplementationSpecific
类型外,还有新的 Exact
和Prefix
路径类型。
IngressClass
资源用于描述 Kubernetes 集群中 Ingress 的类型。 Ingress 对象可以通过在Ingress 资源类型上使用新的ingressClassName
字段来指定与它们关联的类。 这个新的资源和字段替换了不再建议使用的 kubernetes.io/ingress.class
注解。
SIG-CLI 引入了 kubectl alpha debug
SIG-CLI 一直在争论着调试工具的必要性。随着 临时容器 的发展,我们如何使用基于 kubectl exec
的工具来支持开发人员的必要性变得越来越明显。 kubectl alpha debug
命令 的增加,(由于是 alpha 阶段,非常欢迎您反馈意见),使开发人员可以轻松地在集群中调试 Pod。我们认为这个功能的价值非常高。 此命令允许创建一个临时容器,该容器在要尝试检查的 Pod 旁边运行,并且还附加到控制台以进行交互式故障排除。
为 Kubernetes 引入 Windows CSI 支持(Alpha)
用于 Windows 的 CSI 代理的 Alpha 版本随 Kubernetes 1.18 一起发布。 CSI 代理通过允许Windows 中的容器执行特权存储操作来启用 Windows 上的 CSI 驱动程序。
其它更新
毕业转为稳定版
- 基于污点的逐出操作
kubectl diff
- CSI 块存储支持
- API 服务器 dry run
- 在 CSI 调用中传递 Pod 信息
- 支持树外 vSphere 云驱动
- 对 Windows 负载支持 GMSA
- 对不可挂载的CSI卷跳过挂载
- PVC 克隆
- 移动 kubectl 包代码到 staging
- Windows 的 RunAsUserName
- 服务和端点的 AppProtocol
- 扩展 Hugepage 特性
- client-go signature refactor to standardize options and context handling
- Node-local DNS cache
主要变化
- EndpointSlice API
- Moving kubectl package code to staging
- CertificateSigningRequest API
- Extending Hugepage Feature
- client-go 的调用规范重构来标准化选项和管理上下文
发布说明
在我们的 发布文档中查看 Kubernetes 1.18 发行版的完整详细信息。
下载安装
Kubernetes 1.18 可以在 GitHub 上下载。 要开始使用Kubernetes,请查看这些 交互教程 或通过kind 使用 Docker 容器运行本地 kubernetes 集群。您还可以使用kubeadm轻松安装 1.18。
发布团队
通过数百位贡献了技术和非技术内容的个人的努力,使本次发行成为可能。 特别感谢由 Searchable AI 的网站可靠性工程师 Jorge Alarcon Ochoa 领导的发布团队。 34 位发布团队成员协调了发布的各个方面,从文档到测试、验证和功能完整性。
随着 Kubernetes 社区的发展壮大,我们的发布过程很好地展示了开源软件开发中的协作。 Kubernetes 继续快速获取新用户。 这种增长创造了一个积极的反馈回路,其中有更多的贡献者提交了代码,从而创建了更加活跃的生态系统。 迄今为止,Kubernetes 已有 40,000 独立贡献者 和一个超过3000人的活跃社区。
发布 logo
为什么是 LHC
LHC 是世界上最大,功能最强大的粒子加速器。它是由来自世界各地成千上万科学家合作的结果,所有这些合作都是为了促进科学的发展。以类似的方式,Kubernetes 已经成为一个聚集了来自数百个组织的数千名贡献者–所有人都朝着在各个方面改善云计算的相同目标努力的项目! 发布名称“ A Bit Quarky” 的意思是提醒我们,非常规的想法可以带来巨大的变化,对开放性保持开放态度将有助于我们进行创新。
关于设计者
Maru Lango 是目前居住在墨西哥城的设计师。她的专长是产品设计,她还喜欢使用 CSS + JS 进行品牌、插图和视觉实验,为技术和设计社区的多样性做贡献。您可能会在大多数社交媒体上以 @marulango 的身份找到她,或查看她的网站: https://marulango.com
高光用户
- 爱立信正在使用 Kubernetes 和其他云原生技术来交付高标准的 5G 网络,这可以在 CI/CD 上节省多达 90% 的支出。
- Zendesk 正在使用 Kubernetes 运行其现有应用程序的约 70%。它还正在使所构建的所有新应用都可以在 Kubernetes 上运行,从而节省时间、提高灵活性并加快其应用程序开发的速度。
- LifeMiles 因迁移到 Kubernetes 而降低了 50% 的基础设施开支。Kubernetes 还使他们可以将其可用资源容量增加一倍。
生态系统更新
- CNCF发布了年度调查 的结果,表明 Kubernetes 在生产中的使用正在飞速增长。调查发现,有78%的受访者在生产中使用Kubernetes,而去年这一比例为 58%。
- CNCF 举办的 “Kubernetes入门” 课程有超过 100,000 人注册。
项目速度
CNCF 继续完善 DevStats。这是一个雄心勃勃的项目,旨在对项目中的无数贡献数据进行可视化展示。K8s DevStats 展示了主要公司贡献者的贡献细目,以及一系列令人印象深刻的预定义的报告,涉及从贡献者个人的各方面到 PR 生命周期的各个方面。
在过去的一个季度中,641 家不同的公司和超过 6,409 个个人为 Kubernetes 作出贡献。 查看 DevStats 以了解有关 Kubernetes 项目和社区发展速度的信息。
活动信息
Kubecon + CloudNativeCon EU 2020 已经推迟 - 有关最新信息,请查看新型肺炎发布页面。
即将到来的发布的线上会议
在 2020 年 4 月 23 日,和 Kubernetes 1.18 版本团队一起了解此版本的主要功能,包括 kubectl debug、拓扑管理器、Ingress 毕业为 V1 版本以及 client-go。 在此处注册:https://www.cncf.io/webinars/kubernetes-1-18/ 。
如何参与
参与 Kubernetes 的最简单方法是加入众多与您的兴趣相关的 特别兴趣小组 (SIGs) 之一。 您有什么想向 Kubernetes 社区发布的内容吗? 参与我们的每周 社区会议,并通过以下渠道分享您的声音。 感谢您一直以来的反馈和支持。
- 在 Twitter 上关注我们 @Kubernetesio,了解最新动态
- 在 Discuss 上参与社区讨论
- 加入 Slack 上的社区
- 在Stack Overflow提问(或回答)
- 分享您的 Kubernetes 故事
- 通过 blog了解更多关于 Kubernetes 的新鲜事
- 了解更多关于 Kubernetes 发布团队 的信息