院长简介
作者:院长
职位:运维开发工程师
官网:https://deanit.cn
博客:https://blog.deanit.cn
擅长:
【虚拟化,容器化,自动化运维,CICD,监控,日志,中间件,双机热备,分布式存储,数据库,认证,组网隧道,Kali 安全渗透,网络攻击,负载均衡,Html,Css,Js,Jq,Vue3,Shell,Python,Go,前后端框架】
随着 Kubernetes 的发展和成熟,为了项目的整体健康,某些特性可能会被弃用、删除或替换为更好的特性。本文阐述了 Kubernetes v1.31 版本的一些更改计划,发行团队认为你应当了解这些更改, 以便持续维护 Kubernetes 环境。下面列出的信息基于 v1.31 版本的当前状态;这些状态可能会在实际发布日期之前发生变化。
1. 弃用和删除的特性
-
节点的status.nodeInfo.kubeProxyVersion字段
:该字段在Kubernetes v1.31中被弃用,并将在后续版本中删除。原因是该字段的取值不准确,且kubelet没有关于kube-proxy版本或状态的可靠信息。从v1.31开始,DisableNodeKubeProxyVersion特性门控将默认设置为true,kubelet将不再尝试设置此字段。
-
kubelet的--keep-terminated-pod-volumes命令行标志
:该标志已在2017年弃用,并将在v1.31中被删除。此标志用于控制是否保留已终止Pod的卷,但在后续版本中已被视为不必要的。
-
CephFS和Ceph RBD卷插件
:CephFS和Ceph RBD卷插件在v1.31中被删除,建议使用相应的CSI(容器存储接口)驱动程序替代。这些插件在v1.28中已被标记为已弃用。
-
kube-scheduler中的非CSI卷限制插件
:包括AzureDiskLimits、CinderLimits、EBSLimits等插件在v1.31中被弃用,并将从默认插件中删除。建议使用NodeVolumeLimits插件替代,因为它可以处理相同的功能。
2. 其他重要变更
-
云驱动集成的树内支持
:v1.31版本标志着Kubernetes将所有云驱动集成组件从核心外部化的过程完成。这意味着用户现在需要使用推荐的外部集成方法来与云驱动集成。
-
FlowSchema和PriorityLevelConfiguration的API版本变更
:flowcontrol.apiserver.k8s.io/v1beta3 API版本的FlowSchema和PriorityLevelConfiguration将在未来的版本中删除。建议用户编辑现有清单并重写客户端软件以使用自v1.29起可用的flowcontrol.apiserver.k8s.io/v1 API版本。
3. 安全性更新
4. K8s的关键特性保持不变
尽管K8s 1.31版本带来了上述变更和弃用项,但其核心特性和功能(如自动化部署和扩展、服务发现和负载均衡、自我修复、配置管理、水平扩展以及集群管理等)仍然保持不变。这些特性使得K8s成为容器化应用程序部署、扩展和管理的强大工具。
弃用和删除
弃用节点的
status.nodeInfo.kubeProxyVersion
字段
Node 的
.status.nodeInfo.kubeProxyVersion
字段在 Kubernetes v1.31 中将被弃用, 并将在后续版本中删除。该字段被弃用是因为其取值原来不准确,并且现在也不准确。该字段由 kubelet 设置,而 kubelet 没有关于 kube-proxy 版本或 kube-proxy 是否正在运行的可靠信息。
在 v1.31 中,
DisableNodeKubeProxyVersion
特性门控
[8]
将默认设置为
true
, 并且 kubelet 将不再尝试为其关联的 Node 设置
.status.kubeProxyVersion
字段。
删除所有云驱动的树内集成组件
v1.31 版本将删除云驱动集成的树内支持的最后剩余部分。这并不意味着你无法与某云驱动集成,只是你现在
必须
使用推荐的外部集成方法。一些集成组件是 Kubernetes 项目的一部分,其余集成组件则是第三方软件。
后一个博客还包含对需要迁移到 v1.29 及更高版本的用户有用的信息。
删除 kubelet
--keep-terminated-pod-volumes
命令行标志
kubelet 标志
--keep-terminated-pod-volumes
已于 2017 年弃用,将在 v1.31 版本中被删除。
你可以在拉取请求
#122082
[13]
中找到更多详细信息。
删除
CephFS
卷插件
CephFS 卷插件
[14]
已在此版本中删除, 并且
cephfs
卷类型已无法使用。
建议你改用
CephFS CSI 驱动程序
[15]
作为第三方存储驱动程序。如果你在将集群版本升级到 v1.31 之前在使用 CephFS 卷插件,则必须重新部署应用才能使用新驱动。
CephFS 卷插件在 v1.28 中正式标记为已弃用。
删除 Ceph RBD 卷插件
v1.31 版本将删除
Ceph RBD 卷插件
[16]
及其 CSI 迁移支持,
rbd
卷类型将无法继续使用。
建议你在集群中使用
RBD CSI 驱动
[17]
。如果你在将集群版本升级到 v1.31 之前在使用 Ceph RBD 卷插件,则必须重新部署应用以使用新驱动。
Ceph RBD 卷插件在 v1.28 中正式标记为已弃用。
kube-scheduler 中非 CSI 卷限制插件的弃用
v1.31 版本将弃用所有非 CSI 卷限制调度程序插件, 并将从
默认插件
[18]
中删除一些已弃用的插件,包括:
建议你改用
NodeVolumeLimits
插件,因为它可以处理与已删除插件相同的功能,因为这些卷类型已迁移到 CSI。如果你在
调度器配置
[19]
中显式使用已弃用的插件, 请用
NodeVolumeLimits
插件替换它们。
AzureDiskLimits
、
CinderLimits
、
EBSLimits
和
GCEPDLimits
插件将在未来的版本中被删除。