Kubernetes 1.19 版本终于来啦!这是 2020 年的第二个版本,也是迄今为止最长的公布周期,总共继续 20 周。它由 33 项加强性能组成。12 个加强性能进入稳定版,18 个加强性能进入测试版,13 个加强性能进入 alpha 版。
将 Kubernetes 反对窗口减少到一年
长期反对(LTS)工作组在 2019 年初进行的一项考察显示在以后的 9 个月反对期内,很大一部分 Kubernetes
用户未能降级。这一点以及考察中的其余反馈表明,如果将补丁反对期缩短至 12-14 个月,则 30% 的用户可能将其部署放弃在反对的版本上。无论用户应用的是自建版还是商业发行版,状况都是如此。因而,缩短反对期将导致超过 80%
的用户应用受反对的版本,而不是当初的 50-60%
。一年一度的反对期可为用户提供所需的缓冲期,并且更合乎相熟的年度布局周期。从 Kubernetes 1.19
版本开始,反对窗口将缩短到一年。
贮存容量追踪
传统上,Kubernetes
调度器基于这样的假如:集群中任何中央都能够应用额定的持久性存储,并具容量有限。拓扑束缚解决了第一点,但到目前为止,Pod
调度依然没有思考残余的存储容量可能不足以启动一个新的 pod
。存储容量追踪是一个新的 Alpha
个性,它通过为 CSI
驱动程序增加一个 API
来解决这个问题,以报告存储容量,并在 Kubernetes
调度器中为 Pod
抉择节点时应用该信息。该性能可作为反对本地卷和其余容量限度较大的卷类型的动静预配置的根底。
通用长期存储
Kubernetes
提供了卷插件,其生命周期与 Pod
绑定,可用作长期空间(例如内置的 emptydir
卷类型),也能够将一些数据加载到 Pod
中(例如内置的configmap
和 secret
卷类型)。新的通用暂存卷 alpha 性能容许任何现有的反对动静供给的存储驱动程序被用作 ephemeral
卷,并将该卷的生命周期绑定到 Pod。它能够用来提供不同于根磁盘的长期存储,例如长久内存或者该节点上的独立本地磁盘。反对所有用于卷供给的 StorageClass
参数。反对 PersistentVolumeClaims
反对的所有性能,如存储容量跟踪、快照和还原以及卷的大小调整。
CSI Volume 衰弱监测
CSI
健康状况监控的 Alpha
版本随 Kubernetes 1.19
一起公布。该性能使 CSI
驱动程序可能与 Kubernetes
共享来自底层存储系统的异样卷情况,以便将其作为事件报告在 PVC
或 Pod
上。此性能是 Kubernetes
进行程序检测和解决单个卷衰弱问题的根底。
Ingress 降级为 GA
就将 Ingress API
推向 GA
而言,AP
I 自身在 Beta
版中曾经存在了很长时间,以至于通过应用和采纳(包含用户和负载均衡器 Ingress
控制器提供商),它曾经达到了事实上的 GA
状态。在没有全面代替的状况下放弃它不是一个可行的办法。它显然是一个有用的 API
,并且捕捉了一组不平庸的用例。在这一点上,仿佛更审慎的做法是将以后的 API
申明为社区将反对的 V1
版本,同时开发 V2 Ingress API
或具备超集性能的齐全不同的 API
。
结构化日志
在 v1.19
之前,Kubernetes
管制立体中的日志记录无奈保障日志音讯和这些日志中对 Kubernetes 对象的援用有任何对立的构造。这使得对日志的解析、解决、存储、查问和剖析变得艰难,并迫使管理员和开发人员在大多数状况下依附基于一些正则表达式的长期解决方案。因为这些问题,任何基于这些日志的剖析解决方案都很难实现和保护。
新的 klog 办法
这个 Kubernetes
版本为 klog 库引入了新的办法,该办法提供了用于格式化日志音讯的更结构化的接口。每个现有的格式化日志办法(Infof,Errorf)都通过结构化办法(InfoS,ErrorS)进行匹配。新的日志记录办法将日志音讯作为第一个参数,将键值对列表作为可变参数的第二个参数。这种办法容许逐渐采纳结构化日志记录,而无需一次将所有 Kubernetes
转换为新的 API。
Kubelet 的客户端 TLS 证书轮转
kubelet 应用私钥和证书对 kube-apiserver
进行认证。证书是在 kubelet
首次启动时通过集群外机制提供给它的。自 Kubernetes v1.8
以来,集群曾经蕴含了一个(beta)流程,用于获取初始的证书 / 密钥对,并在证书到期邻近时进行轮转,在 Kubernetes v1.19
中,这个性能能够稳定下来了。
在 kubelet
启动过程中,将对文件系统进行扫描,以查找由证书管理器治理的现有证书 / 密钥对。如果有可用的证书 / 密钥,则将加载它。如果没有,则 kubelet
会查看配置文件中的编码证书值或 kubeconfig
中的文件援用。如果证书是一个 bootstrap
证书,则它将用于生成密钥,创立证书签名申请并向 API
服务器申请签名的证书。
当到期邻近时,证书管理器会负责提供正确的证书,生成新的私钥和申请新的证书。随着 kubelet
申请证书的签名是其启动过程的一部分,并且一直地对来自 kubelet
的证书签名申请进行主动批准,以使集群变得易于治理。
其余更新
以下性能迎来稳定版
- Seccomp
- Kubelet 客户端 TLS 证书轮替
- 限度节点对 API 的拜访
- 从新设计 Event API
- Ingress 毕业为 V1 稳定版
- CertificateSigningRequest API
- 无需 Docker 构建 Kubelet
重大变动
- 节点拓扑管理器
- 新的端点 API
- 将 Kubernetes 反对周期缩短至一年
其余重要变动
- 运行多个 Scheduling Profiles
- CertificateSigningRequest API
- 不可变 Secrets 与 ConfigMaps
发行阐明
在咱们的发行阐明(https://github.com/kubernetes… Kubernetes 1.19 发行版的残缺详细信息。
可用性
Kubernetes 1.19 能够在 GitHub(https://github.com/kubernetes…。要开始应用 Kubernetes,请查看这些交互式教程(https://kubernetes.io/docs/tu… KinD(Docker 中的 Kubernetes)的 Docker 容器“节点”运行本地 Kubernetes 集群。您还能够应用 kubeadm 轻松装置 1.19。
公布团队
这个版本的公布是通过数百人的致力,他们奉献了技术和非技术内容。特别感谢 HashiCorp 的高级开发人员倡导者 T aylor Dolezal 领导的公布团队。34 位公布团队成员协调了公布的各个方面,从文档到测试、验证和性能完整性。
随着 Kubernetes 社区的倒退,咱们的公布过程代表了开源软件开发中合作的惊人体现。Kubernetes 持续以疾速的速度取得新用户。这种增长发明了一个踊跃的反馈循环,更多的贡献者提交代码发明了一个更有生机的生态系统。迄今为止,Kubernetes 曾经有超过 49,000 名集体贡献者,以及一个超过 3,000 人的沉闷社区
公布 Logo
所有人都启发了这个 Kubernetes 1.19 版本 Logo!这个版本有点像是一场马拉松较量,也证实了当世界是一个狂野的中央,咱们能够汇集在一起,做不堪设想的事件。
Kubernetes 1.19 公布 Logo
之所以抉择“强调爪子 - 本地化”作为公布主题,是因为它捕获了公布团队只管世界状况良好的踊跃前景。1.19 徽标中显示的字符代表了咱们发行团队中每个人的共性,从 emo 到 peppy,甚至更多!
对于设计师:汉娜贝丝·拉格洛夫(Hannabeth Lagerlof)是位于加利福尼亚州洛杉矶的视觉设计师,她在环境和图形设计畛域领有宽泛的背景。汉娜贝斯(Hannabeth)发明艺术和用户体验来激发分割。您能够在 Twitter 上以 @emanate_design 的身份找到 Hannabeth。
从久远来看
此次公布的内容也与加强性能方面有所不同。传统上,咱们有 3 - 4 周的工夫,从呐喊加强性能到加强性能解冻,这段时间完结后,贡献者能够确认某项性能是否会成为周期的一部分。这次公布周期很非凡,咱们有五个星期的工夫来实现同一个里程碑。缩短的工夫给了贡献者更多的工夫来打算和决定他们各自性能的毕业。
贡献者实现性能的里程碑从通常的 5 周缩短到 7 周。贡献者们多了 40% 的工夫来钻研他们的性能,从而缩小了疲劳,有更多的工夫来思考如何实现。咱们还留神到,最初一刻的繁忙也大大减少了。这个周期的异样申请数量也缩小了 –6 个,而上一个公布周期是 14 个。
生态系统更新
- CNCF 刚刚完结了它的第一届虚构 KubeCon。所有讲座均为点播,但凡注册的人都能够加入,当初还来得及!
- 认证 Kubernetes 平安专家 (CKS) 将于 11 月推出!CKS 专一于集群与零碎加固、最小化微服务破绽和供应链的平安。
- CNCF 公布了第二份《云原生开发现状》,显示应用容器和无服务器技术的云原生开发者数量大规模增长。
- Kubernetes.dev,一个专一于 Kubernetes 贡献者的网站曾经推出。它将贡献者文档、资源和我的项目流动信息集中到一个核心地位。
我的项目速度
Kubernetes DevStats 仪表盘(https://k8s.devstats.cncf.io/…,以及一套令人印象粗浅的预配置报告,从集体贡献者到拉动申请生命周期工夫。如果你想从 Kubernetes 和 CNCF 社区收集数字、事实和数据,它是最好的开始。
在 4 月到 8 月的这个公布周期中,有 382 家不同的公司和超过 2464 名集体为 Kubernetes 做出了奉献。查看 DevStats(https://k8s.devstats.cncf.io/…,能够理解更多对于 Kubernetes 我的项目和社区的整体速度。