You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

--record已被弃用,记录Kubernetes滚动更新命令的替代方案?

Kubectl --record弃用后的滚动更新变更记录方案

当--record参数被弃用后,官方推荐通过以下几种简便方式记录Deployment滚动更新的变更原因:

  • 添加变更注释执行命令
    在执行kubectl set image时,通过--annotations参数直接指定变更原因,命令示例:

    kubectl set image deployment/deploy1 nginx=nginx:1.16.0 --annotations kubernetes.io/change-cause="将nginx镜像版本更新至1.16.0"
    

    后续查看更新历史时,执行kubectl rollout history deployment/deploy1,就能看到自定义的变更原因。

  • 在YAML配置中预先定义注释
    若使用YAML文件管理Deployment,可在配置的metadata.annotations中添加kubernetes.io/change-cause字段,示例配置:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: deploy1
      annotations:
        kubernetes.io/change-cause: "升级nginx镜像到1.16.0版本"
    spec:
      replicas: 3
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: nginx:1.16.0
    

    执行kubectl apply -f deploy1.yaml完成更新后,变更原因会被同步到滚动更新历史中。

  • 通过kubectl edit实时添加注释
    执行kubectl edit deployment/deploy1进入编辑界面,在metadata.annotations节点下添加kubernetes.io/change-cause字段,同时修改镜像版本,保存退出后,本次变更的原因会被记录。

这些方案的优势在于可以自定义更清晰的变更描述,而非仅记录命令本身,更便于后续追溯更新背景。

内容的提问来源于stack exchange,提问作者Arghya Roy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 13:15:40