I was wondering if anyone has used Flagger/Consul-K8s Canary deployment and run into this issue during Flagger promotion and any workaround.
Consul-K8s version 1.16.0
- Deployed application version 1.0
- Deployed Flagger Canary/metrics targeting version 1.0 app deployment
Flagger was able to dynamically create HttpRoute for application version 1.0
Note: Previous version of consul-k8s failed at this stage where HttpRoute was created but couldn’t route traffic. Version 1.16.0 of consul-k8s fixed it.
- Deployed same application with version 1.1
After analysis passed, Flagger tried to promote the canary version and this is where it failed with this error:
“There are multiple Consul services registered for this pod when there must only be one. Check if there are multiple Kubernetes services selecting this pod and add the label
consul.hashicorp.com/service-ignore: "true" to all services except the one used by Consul for handling requests.”
Basically the promoted canary POD could not start up.