咨询个OpenKruise问题。
我在跑一个demo(kruise-rollout+gateway-api+istio),分批升级的策略是携带某http header的流量打到新pod,在刚更新deployment的时候,有部分未携带标记header流量异常的跑到了新pod,稍后才正常。监听资源变化后发现是先创建新pod,此时旧的service对新pod可达。
按我的理解应该是先更新旧的service和pod将流量管控住,然后再创建新的pod和service吧?
请问这里是我们的逻辑有问题还是我用的姿势有问题?# rollout.yaml
apiVersion: rollouts.kruise.io/v1beta1
kind: Rollout
metadata:
name: rollouts-demo
spec:
workloadRef:
apiVersion: apps/v1
kind: Deployment
name: workload-demo
strategy:
canary:
enableExtraWorkloadForCanary: true
patchPodTemplateMetadata:
labels:
canary_enable: "true"
steps:
- replicas: 1
pause: {}
matches:
- headers:
- type: Exact
name: x-y-gray
value: "true"
trafficRoutings:
- gateway:
httpRouteName: httproute-demo
service: service-demo
是逻辑有问题,现在已经注意到并且更改了,还没有merge。当前或许可以手动在发布之前手动patch stable selector到service上,应该可以workaround ,此回答整理自钉群“OpenKruise 社区交流群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。