Kubernetes - 使用自定义更改原因更新部署



我是k8s的新手。我想通过推出指定我自己的更改原因。我知道我可以使用 --record:

kubectl set image deployment/tomcat-deployment tomcat=tomcat:9.0.1 --record

但我想指定我自己的更改原因(例如"更新到 Tomcat 9.0.1">

我试过这个:

kubectl annotate deployment tomcat-deployment kubernetes.io/change-cause='Tomcat9.0.1'

但它改变了更改,导致上面的整个 kubectl 注释命令

有没有办法做到这一点?

谢谢

马克

没有 K8s 工具可以帮助您执行此操作。如果要添加注释以跟踪正在执行的操作,可以通过补丁进行如下操作:

kubectl patch RESOURCE RESOURCE_NAME  --patch '{"metadata": {"annotations": {"my-annotation-key": "my-annotation-value"}}}'

因此,如果要向部署添加注释,则需要执行以下操作:

kubectl patch deployment tomcat-deployment --patch '{"metadata": {"annotations": {"tomcat-deployment kubernetes.io/change-cause": "Tomcat9.0.1"}}}'

现在,我认为这不是一个好方法。我个人永远不会这样做。最好的方法可能是实现一个CI/CD(jenkins,ansible(并通过提交保持跟踪。

最新更新