Kubernetes v1.37 计划发布:kubectl run 与存储健康检查先做兼容排查
如果集群里还保留着用 kubectl run -f 生成 Pod 的脚本,或者平台团队正准备接入 CSI 卷健康状态,Kubernetes v1.37 的升级预告值得提前看一遍。官方计划在 2026 年 8 月 26 日发布 v1.37,当前最需要关注的不是“新增了多少功能”,而是旧参数和状态字段会怎样影响现有自动化。
要点速览
kubectl run --filename/-f计划弃用,现有脚本应改成明确的清单应用或参数化生成流程。- Volume Health Monitor 重新回到 Alpha,PVC、Pod 和 CSINode 的健康字段不能当作稳定兼容接口。
- 升级前先扫描脚本、CronJob 和流水线,再用测试集群验证告警采集、字段缺失和回滚路径。
- v1.37 预告内容仍可能调整,正式升级以最终发布说明和变更指南为准。

v1.37 这次最实际的变化是兼容边界
官方预告把 kubectl run 的 --filename(短参数 -f)列为待弃用项。这个参数与“通过命令行参数生成一个 Pod”并不是同一件事:前者更像把文件入口塞进了一个本来用于快速生成 Pod 的命令,脚本作者容易误以为两种写法可以长期互换。
预告还提到 Volume Health Monitor 的方向变化。它计划通过 CSI 控制器和 kubelet 获取卷健康状态,把结果写入 PVC.status.healthStatus、Pod.status.volumeHealth 和 CSINode.status.storageHealth。这些字段对排查“卷不可访问”很有价值,但当前实现仍需按 Alpha 能力评估,不能直接写成监控平台的永久契约。
先从代码库找出 -f 的真实使用位置
第一步不是立刻改 YAML,而是确认参数到底出现在什么链路里。开发机脚本、发布流水线、定时任务和故障应急手册都要查到;只搜 Deployment 文件,往往会漏掉真正会被调用的 Shell 和 CI 配置。
rg -n --hidden --glob '!vendor/**' \ 'kubectl[[:space:]]+run|--filename([ =]|$)|(^|[[:space:]])-f([[:space:]]|$)' .
把结果按“人工临时命令、流水线生成、长期任务”分组。临时命令可以改成清晰的 Pod 清单;流水线要补上 YAML 校验和差异检查;长期任务则需要把镜像、标签、资源限制和服务账号权限都迁移到可审查的清单里。
迁移时不要把生成式命令和声明式清单混成一条路径
| 现有用法 | 主要风险 | 建议动作 |
|---|---|---|
kubectl run name --image=... | 参数多时不易审查 | 保留为临时排障命令,生产对象改用清单 |
kubectl run -f pod.yaml | 参数入口计划弃用 | 用 kubectl apply -f pod.yaml 表达对象管理 |
| 流水线动态拼命令 | 镜像、权限和资源差异难追踪 | 固定模板,先渲染再做差异和策略检查 |
迁移后的验收重点不是命令返回成功,而是对象结果一致:镜像摘要、容器端口、资源请求、服务账号和重启策略都要与旧环境对比。对平台脚本来说,清单化的价值在于变更可审查、回滚有依据,而不只是躲开一个弃用警告。
Volume Health Monitor 先按“可选信号”接入
卷健康信息适合辅助告警,不适合在 Alpha 阶段成为唯一的自动修复条件。控制器侧和节点侧的报告来源不同,状态字段也可能随着版本和 CSI 驱动实现变化。接入时建议给每条告警保留对象名称、节点、存储类、驱动名、健康状态、reason 和 message,并把原始对象快照放进排查记录。
kubectl get pvc data-store -o json kubectl get pod app-0 -o json kubectl get csinode worker-01 -o json
测试时至少覆盖三种结果:卷正常、卷不可访问、驱动暂时没有提供健康数据。第三种不能被误报成“卷已损坏”;监控规则应区分 Unknown、字段不存在和明确的 Inaccessible 等状态,并设置观察窗口,避免一次短暂的 CSI 响应异常就触发迁移。

升级前用一套小型回归集验证风险
- 在测试集群安装与生产相同版本的 CSI 驱动,记录 PVC、Pod 和 CSINode 的原始 JSON。
- 跑一遍历史流水线,确认不再依赖
kubectl run -f,并比较渲染前后的对象差异。 - 模拟节点不可用或卷访问异常,检查健康状态能否到达告警系统。
- 把“没有字段”“Unknown”和明确故障分别投递,确认值班规则不会过度升级。
- 按正式发布说明复核弃用和 Alpha 状态,再决定是否扩大灰度范围。
如果 CSI 驱动没有实现相应能力,平台仍应依靠驱动日志、事件和业务探针完成基础监控;不要为了填满一个新字段而替换现有证据链。
相关问题
v1.37 发布后 -f 会立即失效吗?
官方预告描述的是弃用计划,不等于当前版本发布后立刻删除。应以最终版本说明和弃用指南为准,但提前迁移能避开后续升级窗口的集中改动。
为什么不直接把 Volume Health Monitor 当成故障自动修复开关?
它涉及控制器、kubelet 和 CSI 驱动多个来源,当前又处于 Alpha 阶段。信号缺失或延迟时,自动修复可能把“没有数据”误判为“卷损坏”。
生产对象都应该改成 Pod 清单吗?
长期运行的对象建议使用可审查的声明式清单;临时排障仍可以保留简短的生成式命令,但要把它和生产发布链路隔离。
什么时候可以开始使用新健康字段?
可以先在测试集群采集和观察,但要将字段视为实验性信号,设置缺失兼容、驱动差异和回滚方案,等最终版本说明明确后再扩大用途。
Kubernetes v1.37 的升级准备,核心不是追逐预告里的每个新名词,而是先清理旧入口、保留对象证据,再把实验性健康信号放进可回退的观察链路。这样即使最终版本调整了字段或实现,平台也不会因为一次升级失去基本的发布和故障判断能力。
Redis 8.2 多消费组消息怎么清理:XACKDEL、XDELEX 与延迟核对
- 上一篇
- Redis 8.2 多消费组消息怎么清理:XACKDEL、XDELEX 与延迟核对
- 下一篇
- GitHub Desktop 3.6 带来 Worktree:并行分支与 Copilot 冲突处理怎么用
-
- 科技周边 · 业界新闻 | 1天前 |
- OpenTelemetry 指标平台迁移中的采集边界
- 107浏览 收藏
-
- 科技周边 · 业界新闻 | 1天前 | 云原生 · kubernetes · 业界新闻 · Gateway API HTTPRoute Cilium 1.20 ExternalAuth 外部认证
- Cilium 1.20 Gateway API 外部认证的工程影响
- 232浏览 收藏
-
- 科技周边 · 业界新闻 | 1天前 |
- CNCF Karmada 毕业对多集群编排落地的启示
- 386浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 | 云原生 · 容器 · Cloud Native Buildpacks OCI 容器构建 Platform API
- Cloud Native Buildpacks 成熟后容器构建的迁移方向
- 355浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 |
- CNCF Kubeflow 毕业如何影响云原生 AI 平台选型
- 293浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 | 云原生 · kubernetes · 云原生生态 开源可持续性 CNCF年度报告 开源项目维护 贡献者社区
- 2026 云原生生态为什么更重视开源可持续性
- 137浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 | 云原生 · kubernetes · AI工程 · 云原生 Kubernetes AI工程 平台工程 生产级AI
- 为什么生产级 AI 系统越来越依赖云原生平台
- 146浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 |
- CNCF 对 2026 云原生发展的判断有哪些重点
- 113浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 | 云原生 · kubernetes · Kubernetes 云原生 AI 平台 银行 AI 基础设施 统一训练推理平台
- 银行统一 AI 训练与推理平台为什么采用云原生架构
- 369浏览 收藏
-
- 科技周边 · 业界新闻 | 2天前 | 业界新闻 · Kubernetes 容器镜像 CNCF 云原生AI Subaru
- Subaru 云原生 AI 案例为什么把镜像分发作为重点
- 102浏览 收藏
-
- 科技周边 · 业界新闻 | 3天前 | 云原生 · AI基础设施 Kubernetes 平台工程 CNCF Japan State of Cloud Native Development in Japan 2026
- CNCF 日本开发者报告为何关注 AI 与云原生结合
- 439浏览 收藏
-
- 科技周边 · 业界新闻 | 3天前 |
- CNCF 2026 中国云原生报告有哪些关键信号
- 213浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 277次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 332次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 326次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 296次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 115次使用
-
- Go chassis云原生微服务开发框架应用编程实战
- 2022-12-29 214浏览
-
- Go 容器遍历的实现示例
- 2022-12-23 133浏览
-
- Golang: 内建容器的用法
- 2022-12-30 496浏览
-
- Go语言make和new关键字的区别及实现原理
- 2022-12-31 244浏览
-
- Go语言nil:空值/零值
- 2022-12-24 448浏览
