envoyproxy / envoyproxy/gateway

Support extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig

Aperta
#5,797 4 commenti 1 reazione 0 assegnatari Vedi su GitHub
stale triage
Lingua principale
Go
Stelle
3k
Fork
864
Merge medio
2g 2h
PR unite (30g)
140

Descrizione

## Problem

Application developers need to explicitly specify `appProtocol: kubernetes.io/h2c` in `Service` spec for Envoy Gateway to configure H2 for upstreams.

These HTTP protocol details are not something that application developers usually think about. It causes some pain for them to remember to manually specify it.

## Ideal Behavior

Envoy supports negotiating the highest possible HTTP protocol via [extensions.upstreams.http.v3.HttpProtocolOptions.AutoHttpConfig](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/upstreams/http/v3/http_protocol_options.proto#extensions-upstreams-http-v3-httpprotocoloptions-autohttpconfig).

Envoy Gateway should automatically configure this option when upstreams support ALPN. ALPN is supported when upstreams use TLS, i.e. a `BackendTLSPolicy` exists for the `Service`.

## Code Reference

https://github.com/envoyproxy/gateway/blob/17241c41cdb9825553cfa836d0e367fb3d08b835/internal/xds/translator/cluster.go#L658-L693

cc @guydc @liorokman , seems you've previously thought about this, but I didn't see any github issue for it.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.