envoyproxy / envoyproxy/gateway
Support listener health check modes
- Dominant language
- Go
- Stars
- 3k
- Forks
- 864
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 140
Description
## Background
Envoy supports configuring the listener health check in 4 different modes: https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/health_checking#http-health-checking-filter
## Current Behavior
When a listener health endpoint is specified via [ClientTrafficPolicy.healthCheck](https://gateway.envoyproxy.io/docs/api/extension_types/#healthchecksettings), EG implicitly configures the health check listener in **No pass through** mode.
https://github.com/confluentinc/envoy-gateway/blob/d4aae99ef274c66927a4594fb20d2c877c48d3b8/internal/xds/translator/healthcheck.go#L71-L83
## Desired Behavior
ClientTrafficPolicy should expose knobs to configure the different modes.
Especially the **No pass through, computed from upstream cluster health** would be helpful. I am under the impression that this is a fairly standard configuration for production, and we plan to use this at Confluent.
Note that ClientTrafficPolicy would also need to support `cluster_min_healthy_percentages` xDS field in the [health check filter config](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/health_check/v3/health_check.proto#envoy-v3-api-msg-extensions-filters-http-health-check-v3-healthcheck).
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.