Skip to content
This repository has been archived by the owner on Mar 17, 2023. It is now read-only.

EndpointSlices for hostPort Deployment gateways #45

Open
rosenhouse opened this issue Dec 2, 2020 · 0 comments
Open

EndpointSlices for hostPort Deployment gateways #45

rosenhouse opened this issue Dec 2, 2020 · 0 comments

Comments

@rosenhouse
Copy link
Contributor

rosenhouse commented Dec 2, 2020

Similar to #44, but when the gateway proxies may be running on only a subset of worker nodes.

# lives in the management cluster, in the same namespace as the Cluster it refs
apiVersion: connectivity.tanzu.vmware.com/v1alpha1
kind: GatewayDNSRecord
metadata:
  name: strawberry-gateway
  namespace: foo-team
spec:
  cluster: strawberry
  namespace: projectcontour
  service: envoy
  resolutionType: hostPort

The EndpointSlices would look like

  # one of these on every managed workload cluster
  kind: EndpointSlice
  ...
  endpoints:
  - addresses:
    - "<IP of node A for strawberry cluster>"
-   - "<IP of node B for strawberry cluster>"
+  # no address for node B, if there isn't a gateway proxy pod running on that node
    - "<IP of node C for strawberry cluster>"

Handle updates/deletes when node IPs change, or when pods get rescheduled to different nodes.

This may be more difficult than the DaemonSet one, since it requires joining Pod resources with Nodes to find node IPs hosting a pod.

But knowing this is coming might influence how we implement #44

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Development

No branches or pull requests

2 participants