云原生|针对 Kubernetes v1.22,阿里云容器服务 ACK 提供了哪些升级和增强能力?
1.22 版本是 Kubernetes 在 2021 年推出的第二个版本,该版本包含 53 项增强功能,被 Kubernetes 开发团队和社区认为将 Kubernetes 带到了新的高峰。
FAQ
Cloud Native
-
持久卷(PersistentVolume)健康度监控(Health Monitor)特性 -
基于 cgroups v2 实现内存资源的服务质量(Quality of Service)保证特性 -
基于主机进程容器(HostProcess containers)实现 Windows 特权(Privileged)容器的特性 -
工作负载(Workload)可使用节点交换内存特性(仅支持 Linux 节点) -
为工作负载配置默认 seccomp 配置特性(仅支持 Linux 节点)
-
丰富了 APIServer 进行访问请求的指标信息,提高 APIServer 的可观测性。 -
对于 ACK Pro 版、ASK Pro 版或边缘 Pro 版集群,可透出托管面组件的核心指标,提高托管面核心部件的可观测性。
-
增加对存储层的保护,降低冷启动时对 etcd 的冲击。 -
可根据请求的来源、类型或路由的组合,开启 APIServer 的限流操作,降低冷启动时对 APIServer 的冲击。
-
Kubelet:在原地升级 kubelet 时,最大程度保证不重启容器。 -
KubeProxy:兼容 Aliyun Linux 2 (kernel-4.19.91-23)及之上的版本,在开启 IPVS 模式时,不设置 conn_reuse_mode 为 0。 -
ASK 集群:在 Virtual Node 未就绪时,不主动驱逐 ECI Pod,减少业务损失。 -
ACK Pro 版或边缘 Pro 版:调度器增强,支持 Gang Scheduling、CPU 拓扑感知、GPU 拓扑感知等调度增强。
-
Kubernetes 1.22 版本弃用了大量测试(Beta)版本的 API,在操作集群升级之前,请注意:
-
通过测试版本 API 创建的资源(集群内已经存在的资源),不受升级影响。升级后,可以使用稳定版本 API 进行交互。 -
与测试版本 API 交互的控制器或应用,需要在集群升级前完成调整,以免集群升级后控制器或应用无法正常工作。
-
Dockershim 从 Kubernetes 1.20 版本开始废弃,计划在 Kubernetes 1.24 版本移除,目前仍然可用,过渡建议如下:
-
推荐新建的节点使用 ContainerD 作为容器运行时。 -
由于 ContainerD Windows 功能受限,若您使用的是 Windows 容器,建议您继续使用 Docker EE。 -
升级到 1.24 版本之前,请做好节点运行时的调整。
-
容器组安全策略(PodSecurityPolicy)从 Kubernetes 1.21 版本开始废弃,计划在 Kubernetes 1.25 版本移除,目前仍然可用。推荐使用容器组安全准入(PodSecurity)替代。