api icon indicating copy to clipboard operation
api copied to clipboard

Allow ServiceEntry to be referenced from injected extensions

Open louiscryan opened this issue 6 years ago • 0 comments

Describe the feature request Envoy extensions often need to talk to downstream services to function. We have a mechanism to declare these destinations, ServiceEntry, but not in a way that is usable for extensions.

In order to use ServiceEntry we need to solve a number of issues

  • We mangle cluster names that are generated for Envoy which makes it hard to refer to generated clusters in a stable way. The mangling is not considered stable.

  • We don't have a way to force clusters to be emitted for a ServiceEntry when there is a dependency on them in Gateways. We do have a way to do this in Sidecar.

Describe alternatives you've considered

Affected product area (please put an X in all that apply)

[ ] Configuration Infrastructure [ ] Docs [ ] Installation [X ] Networking [ ] Performance and Scalability [ X] Policies and Telemetry [ ] Security [ ] Test and Release [ ] User Experience

Additional context

There are other hardcoded clsuters in the system that we should consider modelling with ServiceEntry, e.g. passthrough, blackhole etc. If we are going to adopt an unmangled naming convention for these things then we should standardize naming so any built-ins can also be used by users in VirtualService, Sidecar and Gateway

louiscryan avatar Jun 24 '19 17:06 louiscryan