API Version: v1alpha1
Service APIs has been renamed to Gateway API. #536.
- The default status condition of GatewayClass resource is now
Admitted:false
instead ofInvalidParameters:Unknown
. #471. GatewayClass.spec.parametersRef
now has an optionalnamespace
field to refer to a namespace-scoped resource in addition to cluster-scoped resource. #543.
spec.listeners[].tls.mode
now defaults toTerminate
. #518.- Empty
hostname
in a listener matches all request. #525.
- New
set
property has been introduced forHTTPRequestHeader
Filter. Headers specified underset
are overriden instead of added. #475.
- Maximum limit for
forwardTo
has been increased from4
to16
for 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
gc
short name. - Change the standard condition for GatewayClass to
Admitted
, withInvalidParameters
as a sample reason for it to be false.
- CRD now includes
gtw
short name. - The
DroppedRoutes
condition has been renamed toDegradedRoutes
. ListenerStatus
now includesProtocol
andHostname
to 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
bp
short name. - A new
networking.x-k8s.io/app-protocol
annotation 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.io
finalizer on GatewayClass has been added. allowedGatewayNamespaces
has been removed from GatewayClass in favor of implementations with policy agents like Gatekeeper.
- Fields in
listeners.routes
have been renamed:routes.routeSelector
->routes.selector
routes.routeNamespaces
->routes.namespaces
clientCertificateRef
has been removed from BackendPolicy.- In Listeners,
routes.namespaces
now defaults to{from: "Same"}
. - In Listeners, support has been added for specifying custom, domain prefixed protocols.
- In Listeners,
hostname
now closely matches Route hostname matching with wildcard support. - A new
UnsupportedAddress
condition 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
->RequestHeaderModifier
MirrorRequest
->RequestMirror
Custom
->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.