-
I have a question regarding Aggregate Service Import enhancement proposal which was implemented in #1144 and shipped in Submariner release 0.15. This change removed pod IP endpoints from EndpointSlice documents for non-headless ClusterIP services. E.g., Endpoints list contains ClusterIP (address 10.0.0.1 in example). Before 0.15, endpoints contained list of pod IPs.
What was the reasoning behind this change and why is it needed? I could not find the reasoning while reading through Aggregate Service Import enhancement proposal. I do not see such a requirement on EndpointSlices in KEP 1645. My team has a use-case for getting the list of ready endpoints for a given ClusterIP service across all connected clusters. We currently implement this by querying the ready endpoints in the EndpointSlice document on the broker cluster. We are trying to figure out how to preserve this use-case while upgrading Submariner to 0.15. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 12 replies
-
The purpose of the aggregated The |
Beta Was this translation helpful? Give feedback.
@abguptms Is this still a requirement for you? If so we should convert this back to an issue.
I think a fairly simple and clean solution would be to use the "endpointslice.kubernetes.io/managed-by" label to control the behavior of the generated
EndpointSlices
. So you would add the "endpointslice.kubernetes.io/managed-by" label with a custom value to theServiceExport
. This would signal the lighthouseEndpointSlice
controller to publish the endpoints from the K8sEndpointSlice
as is with the custom "endpointslice.kubernetes.io/managed-by" label and sync to the broker. With the custom label value it wouldn't interfere with K8s or lighthouse. Note this would only apply to non-headless servic…