aws-app-mesh-roadmap
aws-app-mesh-roadmap copied to clipboard
Enable custom filters for Envoy
Customers should be able to build their own filters into Envoy and we should allow config of those filters.
This would be fantastic. Use-cases I envision are filters to route requests using custom shard keys for data storage, failure isolation, and canary changes.
This is the bring your own envoy thing?
@jellevandenhooff and @dio, Yes! Our intent is to work with any Envoy that can do SigV4. We are currently pushing our code to do this to upstream Envoy (see: https://github.com/envoyproxy/envoy/issues/5215). Once that is completed we will start exploring the work to change the intent provided in config to filters that you have developed. If you have usecases for this, we would love to hear them in order to better understand and do the right thing.
This sounds useful!
As a platform developer, I'd like my colleagues, application developers, to selectively enable envoy filters via running awscli or calling AWS API. An example of filters that is useful if enabled selectively is gRPC-Web filter.
Just to get a little more detail on the custom Envoy statement: Does this imply that it will be possible to deploy to the App Mesh a custom built Envoy binary that is compatible with App Mesh of course e.g. with SigV4 etc?
This question was answered somewhere else thanks. Being able to customize (i.e. add a custom filter) the AWS SigV4 Envoy and using it in your App Mesh will be a powerful feature. I believe the configuration for the custom filter would be done via the "static bootstrap config" which is fine - maybe one can add dynamic config in the future too. Looking forward to getting access to the SigV4 Envoy source and trying this out. Thanks.
Yes, I would love to see this too, envoy has a very powerful feature set that I'd like to use beyond app mesh integration. Similarly, I want gRPC-WEB, gRPC-JSON, and some of the authorization features.
gRPC-JSON and gRPC-WEB and auth feature is definitely a good choice. Some use case and example or walkthrough will be even better.
Our use-case is to use AppMesh with RDS. So, we can access the databases on a different port (443) than the default port (5432). Specifically with Postgres. Envoy has filters you can use to proxy Postgres-protocol.
I'd like to use the OPA Envoy plugin for external authorization of requests as talked about here on the OPA website. I believe it's related to this feature request.
I am extremely dissatisfied to see this feature has been lacking over the last 6 years. I hope AWS will make the right decision to make their image customizable by providing a config to merge.
Our current system runs two envoy proxies just for allowing gRPC transcoding. Can't wait to simplify our system and decrease our load + latency by shrinking it down to a single one.