API Version: v1alpha1
Service APIs has been renamed to Gateway API. #536.
- The default status condition of GatewayClass resource is now
Admitted:falseinstead ofInvalidParameters:Unknown. #471. GatewayClass.spec.parametersRefnow has an optionalnamespacefield to refer to a namespace-scoped resource in addition to cluster-scoped resource. #543.
spec.listeners[].tls.modenow defaults toTerminate. #518.- Empty
hostnamein a listener matches all request. #525.
- New
setproperty has been introduced forHTTPRequestHeaderFilter. Headers specified undersetare overriden instead of added. #475.
- Maximum limit for
forwardTohas been increased from4to16for all route types. #493. - Various changes have been made in the Kubernetes and Go API to align with upstream Kubernetes API conventions. Some of the fields have been changed to pointers in the Go API for this reason. #538.
There are minor improvements to docs all around. New guides, clarifications and various typos have been fixed.
API Version: v1alpha1
- CRD now includes
gcshort name. - Change the standard condition for GatewayClass to
Admitted, withInvalidParametersas a sample reason for it to be false.
- CRD now includes
gtwshort name. - The
DroppedRoutescondition has been renamed toDegradedRoutes. ListenerStatusnow includesProtocolandHostnameto uniquely link the status to each listener.
- HTTPRoute clarifications:
- Header name matching must be case-insensitive.
- Match tiebreaking semantics have been outlined in detail.
- TCPRoute, TLSRoute, and UDPRoute:
- At least 1 ForwardTo must be specified in each rule.
- Clarification that if no matches are specified, all requests should match a rule.
- TCPRoute and UDPRoute: Validation has been added to ensure that 1-16 rules are specified, matching other route types.
- TLSRoute: SNIs are now optional in matches. If no SNI or extensionRef are specified, all requests match.
- CRD now includes
bpshort name. - A new
networking.x-k8s.io/app-protocolannotation can be used to specify AppProtocol on Services when the AppProtocol field is unavailable.
API Version: v1alpha-rc2
- A recommendation to set a
gateway-exists-finalizer.networking.x-k8s.iofinalizer on GatewayClass has been added. allowedGatewayNamespaceshas been removed from GatewayClass in favor of implementations with policy agents like Gatekeeper.
- Fields in
listeners.routeshave been renamed:routes.routeSelector->routes.selectorroutes.routeNamespaces->routes.namespaces
clientCertificateRefhas been removed from BackendPolicy.- In Listeners,
routes.namespacesnow defaults to{from: "Same"}. - In Listeners, support has been added for specifying custom, domain prefixed protocols.
- In Listeners,
hostnamenow closely matches Route hostname matching with wildcard support. - A new
UnsupportedAddresscondition has been added to Listeners to indicate that a requested address is not supported. - Clarification has been added to note that listeners may be merged in certain instances.
- HeaderMatchType now includes a RegularExpression option.
- Minimum weight has been decreased from 1 to 0.
- Port is now required on all Routes.
- On HTTPRoute, filters have been renamed:
ModifyRequestHeader->RequestHeaderModifierMirrorRequest->RequestMirrorCustom->ExtensionRef
- TLSRoute can now specify as many as 16 SNIs instead of 10.
- Limiting the number of Gateways that may be stored in RouteGatewayStatus to 100.
- Support level of filters defined in ForwardTo has been clarified.
- Max weight has been increased to 1 million.
API Version: v1alpha-rc1
- Initial release candidate for v1alpha1.