Kubernetes 1.18:代表精确度与完成度的版本

Kubernetes 1.18:代表精确度与完成度的版本

今天,我们高兴地宣布Kubernetes 1.18正式与大家见面,这也是我们2020年以来进行的首次版本发布!Kubernetes 1.18中包含38项功能增强,其中15项为稳定版功能、11项beta版功能以及12项alpha版功能。

Kubernetes 1.18可以说是代表着精确度与完成度的版本。为了改善用户体验,我们在beta版与稳定版功能层面进行了大量工作。当然,我们也付出极大努力以推出新的、令人兴奋的全新功能,希望借此进一步提升用户体验。事实上,alpha版、beta版与稳定版功能拥有几乎同等数量这一状态本身,就代表着一种伟大的成就。这意味着整个技术社区一直在为提升Kubernetes可靠性并持续扩展现有功能做出不懈努力。

核心主题

Kubernetes 1.18:代表精确度与完成度的版本

Kubernetes拓扑管理器迎来beta版!

拓扑管理器功能在Kubernetes 1.18中迎来beta版,其作用是让CPU与其他设备(例如SR-IOV-VF)实现NUMA对齐,进而让工作负载运行在优化环境中以降低延迟。在拓扑管理器推出之前,CPU与设备管理器只能彼此独立地做出资源分配决策——这可能导致多套接字系统中发生资源分配不良,进而令关键应用发生性能下降。

Serverside Apply迈向beta 2阶段

Server-side Apply在Kubernetes 1.16版本中就公布了首个beta版,而此次1.18版本带来的则是其beta 2版。新版本将跟踪并管理所有新Kubernetes对象的字段变更,确保用户及时了解哪些资源在何时进行过更改。

IngressClass亮相:在扩展Ingress的同时,替代非推荐注释

在Kubernetes 1.18当中,Ingress迎来了两项重要的附加功能:第一为新的pathType字段,第二为新的IngressClass资源。其中pathType字段用于指定路径的具体匹配方式。除了默认的ImplementationSpecific 类型以外,还新增了Exact与Prefix两种路径类型。

其中IngressClass资源用于在Kubernetes集群内部描述一种Ingress类型。通过使用新的ingressClassName字段,Ingress现在能够指定与其自身所关联的类。这一全新资源与字段,旨在替代我们并不推荐使用的kubernetes.io/ingress.class注释。

SIG-CLI迎来kubectl debug新命令

SIG-CLI到底需不需要调试功能,一直是个颇具争议的问题。随着即席容器[1]的发展,这个问题变得愈发尖锐,而我们也开始考虑利用基于kubectl exec构建的工具为开发人员提供支持。此次新增的kubectl debug命令(目前为alpha版)允许开发人员在集群当中轻松调试自己的Pod,进而获得巨大的便利性增益。这项命令将创建一个即席容器,容器运行在待检查Pod旁边,同时附带有控制台以执行交互式故障排查。

为Kubernetes推出Windows CSI支持的alpha版

随着Kubernetes 1.18版本的推出,CSI Proxy for Windows的alpha版也同步亮相。CSI代理允许非授权(未经预先批准)的容器也能够在Windows上运行并执行授权存储操作。现在,你可以利用CSI代理在Windows中支持CSI驱动程序。

其他更新

Kubernetes 1.18:代表精确度与完成度的版本

正式毕业的稳定版功能 ????

  • 基于污点的驱逐

  • kubectl diff

  • CSI Block存储支持

  • API Server排演运行

  • 在CSI调用中传递Pod信息

  • 支持树外vSphere云提供程序

  • 支持GMSA for Windows工作负载

  • 跳过不可附加的CSI存储卷

  • PVC克隆

  • 将kubectl软件包代码移至暂存

  • RunAsUserName for Windows

  • 用于服务及端点的AppProtocol

  • 扩展Hugepage功能

  • 重构client-go签名,用于实现选项及上下文的标准化处理

  • 节点本地DNS缓存

主要变更

  • EndpointSlice API

  • 将kubectl软件包代码移至暂存

  • CertificateSigningRequest API

  • 扩展Hugepage功能

  • 重构client-go签名,用于实现选项及上下文的标准化处理

发行说明

关于Kubernetes 1.18版本的全部细节信息,请参阅我们的发行说明[2]。

如何获取

Kubernetes 1.18现已通过GitHub[3]开放下载。要开始使用Kubernetes,请点击此处[4]查看我们的交互式教程,或者通过kind[5]利用Docker容器“节点”运行本地Kubernetes集群。大家也可以使用kubeadm命令[6]轻松安装1.18版本。

发布徽标

Kubernetes 1.18:代表精确度与完成度的版本

用户亮点

  • 爱立信公司目前正使用Kubernetes及其他云原生技术交付具有强大表现的5G网络,将CI/CD实现成本降低达90%。

  • Zendesk公司正利用Kubernetes运行约70%的现有应用程序。他们构建的所有新应用程序都能够在Kubernetes上运行,这帮助他们在节约时间的同时显著提高灵活性,并改善应用程序的开发速度。

  • LifeMiles在迁移至Kubernetes后将基础设施开支减少了50%,同时将可用资源容量增加了一倍。

相关链接:

  1. https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/

  2. https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md

  3. https://github.com/kubernetes/kubernetes/releases/tag/v1.18.0

  4. https://kubernetes.io/docs/tutorials/

  5. https://kind.sigs.k8s.io/

  6. https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/

原文链接:https://kubernetes.io/blog/2020/03/25/kubernetes-1-18-release-announcement/

Kubernetes 1.18:代表精确度与完成度的版本