-
Notifications
You must be signed in to change notification settings - Fork 7.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Istio locality load balancing custom labels (Kubernetes) #19114
Comments
I was just thinking this would be trivial and useful change to make, so I definitely agree. Basically add a new Is there any use cases where the first approach (overriding the labels) is more useful? If not I say lets go ahead with that, should be a pretty simple change |
Personally I think it would be more useful to allow users to define the Also we should prevent hijacking the |
Personally, I would prefer a fixed annotation from Istio (using An istio-specific annotation seems simpler, clearer in intent, and easier to deprecate if kubernetes standardizes an equivalent, more granular, topology domain. |
I agree with everything @brianwolfe said. I'll send a PR out next week when I am back in the office or anyone else can feel free to |
@howardjohn I don't if you already started working on it but if it's okay for you I would/could also implement this feature this week. I also agree with you that a fixed label |
Describe the feature request
I wanted to ask if it's feasible to add custom labels for the locality based load balancing. In the current setup Pilot supports the well-kown topology labels: https://istio.io/docs/ops/traffic-management/locality-load-balancing/#requirements. I would argue that it can make sense to to allow a user to overwrite these label keys with custom label keys e.g.
failure-domain.myname/rack
. In our concrete use case we are running on bare-metal and we set theregion
andzone
labels (but all nodes have the same value since they are located in the same datacenter and we don't span Kubernetes across the datacenters). If we could overwrite the defaultregion
andzone
label we could benefit from the locality load balancing (and fail-over).Describe alternatives you've considered
As an alternative we could introduce the
sub-zone
in Kubernetes setups and allow user to define their custom label key to be used for theesub-zone
(if empty we would ignore it). IMHO this would be the better/easier alternative instead of overwriting theregion
andzone
default label keys (since these are well-kown labels).Obviously some one could argue "just set the right values to the
region
andzone
labels", this would also be possible but In our case (and from our point of view) misusing theregion
andzone
label for e.g. rack topology would be semantically incorrect.Additional context
If we agree on a possible implementation I'm happy to contribute the according patch.
The text was updated successfully, but these errors were encountered: