linkerd2/controller/webhook
Alex Leong 368b63866d
Add support for remote discovery (#11224)
Adds support for remote discovery to the destination controller.

When the destination controller gets a `Get` request for a Service with the `multicluster.linkerd.io/remote-discovery` label, this is an indication that the destination controller should discover the endpoints for this service from a remote cluster.  The destination controller will look for a remote cluster which has been linked to it (using the `linkerd multicluster link` command) with that name.  It will look at the `multicluster.linkerd.io/remote-discovery` label for the service name to look up in that cluster.  It then streams back the endpoint data for that remote service.

Since we now have multiple client-go informers for the same resource types (one for the local cluster and one for each linked remote cluster) we add a `cluster` label onto the prometheus metrics for the informers and EndpointWatchers to ensure that each of these components' metrics are correctly tracked and don't overwrite each other.

---------

Signed-off-by: Alex Leong <alex@buoyant.io>
2023-08-11 09:31:45 -07:00
..
launcher.go Add support for remote discovery (#11224) 2023-08-11 09:31:45 -07:00
server.go Removed dupe imports (#10049) 2023-01-10 14:34:56 -05:00
server_test.go Use metadata API in the proxy and tap injectors (#9650) 2022-11-16 09:21:39 -05:00
util.go viz: add tap-injector (#5540) 2021-01-21 11:24:08 -05:00