🎉 Welcome to the v2.3.0-beta.3 release of the kgateway project!
Changes since v2.3.0-beta.2
New Features
- Add
allow_mode_overrideandallowed_override_modessupport in ExtProc GatewayExtensions (#13394) - support GRPCRoutes attaching to HTTPS listeners (#13493)
- Support per listener mTLS client cert validation (#13518)
- Support attaching TrafficPolicy to GRPCRoutes (#13519)
- Add
loadBalancerSourceRangessupport toGatewayParameters.spec.kube.servicefor the dynamically provisioned gateway service (#13545) - Support TLS Termination for TLSRoute on TLS listener (#13548)
- Allow setting Envoy's
xff_trusted_cidrsandskip_xff_appendviaListenerPolicy(#13551) - Allow configuring Envoy application log format, either as JSON or custom text (#13561)
- Controller helm chart exposes topologySpreadConstraints (#13573)
- Add default OTel resource attributes for listeners (#13585)
- Add default k8s resource identifiers in OTel resource attributes (#13606)
- Add app.kubernetes.io/component labels (controller and proxy) to kgateway deployments (#13619)
- Add per-route tracing configuration to TrafficPolicy, allowing sampling rate overrides, custom attributes, and the ability to disable tracing for specific routes. (#13648)
- ListenerSets pass GWAPI 1.5.1 conformance tests (#13691)
Bug Fixes
- Stop forwarding non-matching preflight cors requests (#13474)
- Fix Rustformations returning HTTP 400 on small JSON request bodies arriving in a single chunk. (#13480)
- Introduce kgateway-base manifests and migrate tests to base gateway for faster tests
(chore): use native go instead of curl pod to create http reqs for ExtAuth, BackendTLS, Backends, Accesslogs, BasicRouting, DFP, HTTPRoute
(#13515) - Fixed no endpoints for services/namespaces without an
ingress-use-waypointlabel when at least one other has it (#13531) - Fix cross-namespace
extensionRefinTrafficPolicy.spec.jwtAuthresulting in brokenrequirement_namein Envoy filter config (#13540) - fix: Deployer deploys RBAC changes etc. first since later changes depend on them (#13552)
- Fix crash when a Waypoint has an AuthorizationPolicy with action CUSTOM (#13607)
- Skip Istio resource watching when KGW_ENABLE_ISTIO_INTEGRATION is disabled (#13611)
- expose http-monitoring port on gateway service (#13614)
- fix nil panic in TrafficPolicy when attaching to redirect rules in HTTPRoute (#13625)
- Fixed DirectResponse policy status reporting to ensure attached policies surface Accepted and Attached conditions without misleading handler registration errors. (#13647)
- Fix stale routing when no endpoints are available by emitting an explicit empty ClusterLoadAssignment so Envoy returns 503 instead of routing to a stale pod IP. (#13670)
- Fixed promoted TLSRoute handling for Gateway API v1.5.1, including status reporting, hostname intersection, and several conformance cases. (#13694)
- Improve Gateway API TLSRoute conformance for TLS passthrough listeners by rejecting unsupported TCPRoute kinds and reporting TLSRoute in listener supportedKinds. (#13696)
Documentation
- GracefulShutdownSpec API doc correction (#13577)
Cleanup
- Removes deprecated Gateway API Inference Extension support, which had already moved to agentgateway (#13514)
- remove classic transformation support (#13651)
- upgrade to envoy v1.37.1 and removed envoy-gloo (#13660)
Dependency Updates
- Upgrade to latest Go 1.26 (#13517)
- Bumps to go version 1.26.1 (#13639)
- Bumped Gateway API to v1.5.1. As part of the upstream schema update, non-spec CORS
allowOriginspatterns such ashttps://a.b*are no longer accepted. Use spec-compliant wildcard origins such ashttps://*.a.binstead. (#13671)
Installation
The kgateway project is available as a Helm chart and docker images.
Helm Charts
The Helm charts are available at:
- cr.kgateway.dev/kgateway-dev/charts/kgateway.
Docker Images
The docker images are available at:
- cr.kgateway.dev/kgateway-dev/kgateway:v2.3.0-beta.3
- cr.kgateway.dev/kgateway-dev/sds:v2.3.0-beta.3
- cr.kgateway.dev/kgateway-dev/envoy-wrapper:v2.3.0-beta.3
Quickstart
Try installing this release:
helm install kgateway-crds oci://cr.kgateway.dev/kgateway-dev/charts/kgateway-crds --version v2.3.0-beta.3 --namespace kgateway-system --create-namespace
helm install kgateway oci://cr.kgateway.dev/kgateway-dev/charts/kgateway --version v2.3.0-beta.3 --namespace kgateway-system --create-namespace
For detailed installation instructions and next steps, please visit our quickstart guide.
Contributors
Thanks to all the contributors who made this release possible:



















