在OpenKruise中,被 rollout 托管的deployment 起的pod有办法知道自己是第几批发布的吗?
需要你发布的时候也设置一下 批次的标的,配置到 rollout 的labels 上面才行。
// RolloutIDLabel is set to workload labels.
// RolloutIDLabel is designed to distinguish each workload revision publications.
// The value of RolloutIDLabel corresponds Rollout.Spec.RolloutID.
RolloutIDLabel = "rollouts.kruise.io/rollout-id"
// RolloutBatchIDLabel is patched in pod labels.
// RolloutBatchIDLabel is the label key of batch id that will be patched to pods during rollout.
// Only when RolloutIDLabel is set, RolloutBatchIDLabel will be patched.
// Users can use RolloutIDLabel and RolloutBatchIDLabel to select the pods that are upgraded in some certain batch and release.
RolloutBatchIDLabel = "rollouts.kruise.io/rollout-batch-id" 只需要发布的时候,在 workload 上打 "rollouts.kruise.io/rollout-id": <发布单号> 就好了; 比如找第1批 pod , k get pod -l rollouts.kruise.io/rollout-id=<发布单号>, rollouts.kruise.io/rollout-batch-id="1" batch-id 是自动打到 pod 伤的,不需要配置。 此回答整理自钉群"OpenKruise 社区交流群"
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。