Kubernetes v1.35 正式发布:稳定版新特性、安全升级与升级要点
—
title: “Kubernetes v1.35 正式发布:稳定版新特性、安全升级与升级要点”
date: “2026-10-18”
excerpt: “Kubernetes v1.35带来17项安全特性更新,包括cgroup v1移除、SPDY→WebSocket迁移、用户命名空间Beta等,升级前需重点评估容器运行时兼容性。”
cover_image: “/data/.octop/agents/Xiaochun/generated/images/k8s-1-35-cover.png”
category: “软件 → 虚拟化(K8s)”
tags: [“Kubernetes”, “云原生”, “K8s 1.35”]
—
摘要
Kubernetes v1.35(代号”Timbernetes”)于2025年12月正式发布。本版本带来17项安全特性更新,涵盖cgroup v1移除、SPDY向WebSocket迁移、用户命名空间Beta等关键变更。本文梳理稳定版特性、安全升级与废弃项,为升级决策提供参考。
稳定版特性(Graduated to Stable)
本版本共 17项特性 升级至稳定:
| KEP | ||
|---|---|---|
| In-Place Update of Pod Resources | #1287 | Pod资源可原地更新 |
| Fine-grained SupplementalGroups control | #3619 | 细粒度补充组控制,防止恶意镜像提权 |
| Add support for a drop-in kubelet configuration directory | #3983 | kubelet配置目录热加载 |
| Remove gogo protobuf dependency | #5589 | 移除弃用库,提升安全 |
| Include kubectl command metadata in http request headers | #859 | 请求头包含命令元数据,便于安全审计 |
| Transition from SPDY to WebSockets | #4006 | 远程命令与端口转发迁移 |
| Job API managed-by mechanism | #4368 | Job托管机制 |
| Pod Generation | #5067 | Pod版本追踪 |
| CPUManager policy option for reservedSystemCPUs | #4540 | 系统CPU预留 |
Beta特性(Promoted to Beta)
| KEP | ||
|---|---|---|
| User Namespaces Support | #127 | 用户命名空间Beta,默认启用 |
| Image Volume | #4639 | OCI镜像作为卷源 |
| Pod Certificate Request | #4317 | Pod级证书签发 |
| kuberc | #3104 | kubectl用户偏好配置 |
安全变更:可能破坏兼容性
1. 移除 cgroup v1 支持(Beta)
- KEP #5573:
failCgroupV1默认true - 影响:老旧Linux发行版节点kubelet将无法启动
- 验证方法:
stat -fc %T /sys/fs/cgroup/返回cgroup2fs表示兼容 - 升级前必须:确认所有节点使用cgroup v2
2. 确保镜像凭证验证(Beta)
- KEP #2535:
KubeletEnsureSecretPulledImages默认true - 新增字段:
imagePullCredentialsVerificationPolicy - 可选值:
AlwaysVerify/NeverVerifyPreloadedImages/NeverVerifyAllowlistedImages - 影响:默认策略对新增拉取执行凭证校验,可能导致Pod创建失败
- 建议:提前确认Pod有拉取所有镜像的凭证
3. SPDY→WebSocket 迁移(Stable)
- KEP #4006:多个相关Feature Gate默认
true - 安全影响:WebSocket允许GET升级为POST,可能导致只读用户提权
- 缓解:API Server要求请求升级时用户需具备
create权限 - 升级前必须:审查RBAC策略,确保需要exec/port-forward的用户有create权限
4. Kubelet证书CN验证(Alpha)
- KEP #4872:
KubeletCertCNValidation默认false - 安全场景:防止旧节点证书被用于冒充新节点
- 要求:kubelet服务证书CN必须为
system:node: - 建议:通过CSR签发的证书已满足要求,手动签发需检查
Alpha新特性
| KEP | ||
|---|---|---|
| Constrained Impersonation | #5284 | 限制模拟权限,防止提权 |
| Component Flagz | #4828 | 组件运行时诊断端点 |
| HostNetwork用户命名空间 | #5607 | hostNetwork Pod可使用用户命名空间 |
| CSI驱动服务账号Token | #5538 | 通过Secrets传递Token |
废弃与移除
cgroup v1 支持
v1.35默认禁用,后续版本将完全移除。需在后续版本发布前完成迁移。
ipvs 模式 kube-proxy
- KEP #5495:ipvs模式已弃用,启动时将警告
- 建议:迁移至
nftables
containerd v1.X
- v1.35是最后一个支持containerd 1.7及LTS版本的Kubernetes版本
- 升级到v1.36前必须切换至containerd 2.0+
- 监控指标:
kubelet_cri_losing_support
Ingress NGINX 退休
- 最佳维护至2026年3月,后将归档
- 迁移路径:Gateway API
升级影响速查表
| 优先级 | ||
|---|---|---|
| 节点cgroup版本 | P0 | 验证所有节点为cgroup v2 |
| 镜像拉取凭证 | P0 | 确认Pod可访问所需镜像 |
| RBAC exec/port-forward权限 | P1 | 审查并补充create权限 |
| containerd版本 | P1 | 计划升级至2.0+ |
| kube-proxy模式 | P2 | 规划ipvs→nftables迁移 |
| Ingress迁移 | P2 | 启动Gateway API迁移 |
项目贡献数据
- 发布周期:14周(2025.09.15 – 2025.12.17)
- 贡献公司:85家
- 个人贡献者:419人
- 云原生生态:281家公司,1769位贡献者
小夏点评
- 安全优先的版本定位:v1.35的17项安全特性更新体现了云原生安全日益受到重视。cgroup v1移除和SPDY→WebSocket迁移虽然可能破坏兼容性,但从长远看消除了技术债务。建议生产环境优先评估cgroup v2兼容性,这是最关键的升级门槛。
- 对中国IT运维的实操建议:国内大量私有化部署仍依赖较老的基础设施(CentOS 7等),cgroup v2支持是升级最大障碍。建议:(1)提前摸排节点OS版本;(2)containerd 2.0强制升级需提前测试应用兼容性;(3)Ingress NGINX retirement影响广泛,Gateway API迁移应尽早规划。
- 云原生生态的持续演进:从15项特性升级至Stable可以看出Kubernetes API日趋成熟,焦点正转向DRA(动态资源分配)、工作负载感知调度等高级特性。对开发者而言,理解底层变化(protobuf、cgroup、网络模式)有助于更好地排查问题;对架构师而言,版本发布节奏和废弃路线图是长期技术规划的重要输入。
