Open nbellowe opened 3 months ago
one possible solution is to create two targetGroup and use TargetGroupBinding to bind them to two service separately. Then use weighted load balancing feature to configure a listener rule that forward traffic to two targetGroup with weights. However, the weights indeed needs to be adjusted yourself.
That won't work for me, because the number of pods in different namespaces will be dynamic. In my case, I have different namespaces, with dynamic, changing number of pods.
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
Is your feature request related to a problem?
I want to be able to deploy multiple versions of my application to different namespaces, and have pods take equivalent amounts of traffic from a shared ALB, at the same path/host.
For example, I could have
I want the number of requests that a pod in namespaceA to receive, to match the number of requests in namespaceB.
Describe the solution you'd like
Ideally I'd be able to either:
1) Define
TargetGroupBinding
resources in multiple namespaces, each targeting the same TargetGroup arn! Ideally, this would lead to all pods being a member of the same target group. Right now, aws-load-balancer-controller does not support multiple TargetGroupBindings with the same targetArn.2) Define
Ingress
resources in multiple namespaces, each targeting the same ingress group name, and rules. Ideally, this would lead to pods in different namespaces using the same underlying targetGroup. Right now, this configuration creates different targetGroups and listener rules with different priorities, so that only the one with the highest priority will get ANY traffic.Describe alternatives you've considered
For reasons, I cannot use a kubernetes API gateway. For now, I have multiple versions of my application modeled by seperate deployments, in the same namespace, with a single service in front of all of them. This is suboptimal, because I don't get benefits of namespace isolation, and need to manage things like unique resource naming etc.