capsule-proxy icon indicating copy to clipboard operation
capsule-proxy copied to clipboard

Add support for MutatingWebhookConfigurations, ValidatingWebhookConfigurations, and EndpointSlices

Open acmayberry opened this issue 3 years ago • 3 comments

It would be great to run separate service meshes like Istio or Linkerd for each tenant, but I believe most would at least require access to the following cluster level resources:

MutatingWebhookConfigurations ValidatingWebhookConfigurations EndpointSlices

Having a proxied and ACL'd list of these for each tenant would be really useful to support a service mesh per tenant.

acmayberry avatar May 27 '22 22:05 acmayberry

Might be possible with #185. I will keep you posted with the progress

oliverbaehler avatar Feb 10 '23 13:02 oliverbaehler

I don't see any problem with the EndpointSlices, since it's namespaced.

NAME                              SHORTNAMES   APIVERSION                             NAMESPACED   KIND
endpointslices                                 discovery.k8s.io/v1                    true         EndpointSlice

We could add a new route for this, taking full advantage of the additional metadata for Services already supported by Capsule, which need to be documented.

Honestly, I'm not getting the point of MutatingWebhookConfigurations and ValidatingWebhookConfigurations: these are cluster-scoped resources that could impact potentially any other Namespace in the cluster.

May I ask you for a real use case to understand better your requirements?

prometherion avatar Feb 10 '23 13:02 prometherion

Cluster-Scoped resources are introduced with this:

  • https://github.com/projectcapsule/capsule-proxy/pull/421

You can enable it with the --feature-gates=ProxyClusterScoped=true argument for the proxy and then creating your ACLs.

Namespaced-Scoped were introduced with this:

  • https://github.com/projectcapsule/capsule-proxy/pull/389

You can add the --feature-gates=ProxyAllNamespaced=true

Note these are currently both Alpha features but cover your requests use-case.

oliverbaehler avatar Apr 11 '24 12:04 oliverbaehler

Closing due to inactivity and lack of response, besides the fact it's now supported.

prometherion avatar Jul 03 '24 09:07 prometherion