Kubernetes 1.34版本说明
云容器引擎(CCE)严格遵循社区一致性认证,现已支持Kubernetes 1.34集群版本特性。本文介绍Kubernetes 1.34版本的变更说明。
新增特性及特性增强
- RecoverVolumeExpansionFailure (GA)
在Kubernetes 1.34中,RecoverVolumeExpansionFailure进阶至GA。您可以减少PVC请求的大小,只要之前请求的扩展还未完成,就可以修改所请求的大小。Kubernetes会自动进行修正。详细使用方式请参考卷扩容失败恢复。
- JobPodReplacementPolicy(GA)
在Kubernetes 1.34中,JobPodReplacementPolicy进阶至GA。此功能在Jobs中引入了.spec.podReplacementPolicy。您可以选择仅在Pod完全终止(.status.phase: Failed)时创建替代Pod。详细使用方式请参考允许在完全终止时替换作业中的Pod。
- Resilient watch cache initialization(GA)
在Kubernetes 1.34中,Watch cache的初始化过程变得更加抗故障,提高了控制平面的鲁棒性,并确保控制器和客户端能够可靠地建立观察。详细介绍请参考弹性监视缓存初始化。
- Relaxing DNS search path validation(GA)
在Kubernetes 1.34中,Relaxing DNS search path validation进阶至GA。过去Kubernetes在dnsConfig.searches(DNS搜索域列表)中根据RFC-1123验证搜索字符串,而RFC-1123对主机名设定了限制。但是这种验证对于dnsConfig.searches的使用而言,过于严格,现在允许以下设置:
- 允许在连字符(-)的位置使用下划线(_)
- 允许单个点号(.)作为搜索域
详细使用方式请参考宽松的DNS搜索字符串验证。
- Sleep action for Container lifecycle hooks(GA)
在Kubernetes 1.34中,Sleep action for Container lifecycle hooks进阶至GA。该特性支持在容器生命周期回调中通过Sleep字段直接使用sleep命令,将容器暂停一段指定的时间,并支持填写sleep为零值。详细使用方式请参考引入PreStop Hook睡眠操作和允许PreStop Hook的睡眠动作为零值。
- Allow special characters in environment variables(GA)
在Kubernetes 1.34中,Allow special characters in environment variables进阶至GA。允许所有可打印的ASCII字符作为环境变量,ASCII码范围是32到126,但不包括“=”。详细使用方式请参考允许环境变量中包含几乎所有可打印的ASCII字符。
- kuberc file for kubectl user preferences(Beta)
在Kubernetes 1.34中,kuberc file for kubectl user preferences进阶至Beta。kuberc 配置文件允许您为 kubectl 定义偏好设置,例如默认选项和命令别名。详细使用方式请参考用户偏好设置(kuberc)可在 kubectl 1.34 中进行测试。
- Snapshottable API server cache(Beta)
在Kubernetes 1.34中,Snapshottable API server cache进阶至Beta。在默认启用的 ListFromCacheSnapshot 功能下,kube-apiserver 会尝试从快照中提供响应。详细介绍请参考kube-apiserver List请求优化。
API变更与弃用
- 在Kubernetes 1.34中,创建无头服务时,如果设置了loadBalancerIP、externalIPs或sessionAffinity,将增加警告信息。
- 在Kubernetes 1.34中,当容器未指定巨页(HugePage)资源时,将Pod级别的巨页cgroup传播到容器。并且添加了验证,以确保聚合的容器巨页限制小于或等于Pod级别的限制。
- 在Kubernetes 1.34中,在CustomResourceDefinition架构中引入了对Kubernetes短名称和长名称的OpenAPI格式支持。
- 在Kubernetes 1.34中,Kube-apiserver配置文件中的--authentication-config选项,其支持的AuthenticationConfiguration类型已提升至 apiserver.config.k8s.io/v1。
- 在Kubernetes 1.34中,JobPodReplacementPolicy特性开关已锁定为开启状态,并将在未来的Kubernetes版本中移除。
- 在Kubernetes 1.34中,AuthorizeWithSelectors和AuthorizeNodeWithSelectors特性开关已稳定并锁定为开启状态。
- 在Kubernetes 1.34中,Downward API的resourceFieldRef字段的回退行为已更新,以考虑Pod级别的资源:如果未设置容器级别的资源限制,现在会优先使用Pod级别的资源限制,然后再回退到节点可分配资源。
- 在Kubernetes 1.34中,零值的metadata.creationTimestamp现在被省略,不再在JSON、YAML和CBOR输出中序列化为显式的null。
CCE对Kubernetes 1.34版本的增强
在版本维护周期中,CCE会对Kubernetes 1.34版本进行定期的更新,并提供功能增强。
关于CCE集群版本的更新说明,请参见补丁版本发布说明。