This document tracks downstream implementations and integrations of Gateway API and provides status and resource references for them.
Implementors and integrators of Gateway API are encouraged to update this document with status information about their implementations, the versions they cover, and documentation to help users get started.
- Acnodal EPIC (public preview)
- Apache APISIX (alpha)
- Cilium (work in progress)
- Contour (beta)
- Emissary-Ingress (Ambassador API Gateway) (alpha)
- Envoy Gateway (alpha)
- Flomesh Service Mesh (work in progress)
- Gloo Edge 2.0 (work in progress)
- Google Kubernetes Engine (GA)
- HAProxy Ingress (alpha)
- HashiCorp Consul
- Istio (beta)
- Kong (beta)
- Kuma (alpha)
- LiteSpeed Ingress Controller
- NGINX Kubernetes Gateway
- Traefik (alpha)
In this section you will find specific links to blog posts, documentation and other Gateway API references for specific implementations.
EPIC is a Managed Application & API Gateway Service. The epic-controller installed in the cluster implements v1alpha2 and currently supports HTTPRoute. Defining Gateways and Routes creates a Gateway in the EPIC Service consisting of Envoy instances allocating public IP addresses and DNS for clients, and configures transport that sends request directly upstream to application endpoints in the cluster. EPIC is in public preview.
Documentation can be found at EPIC Application & API Gateway Service
Apache APISIX is a dynamic, real-time, high-performance API Gateway. APISIX provides rich traffic management features such as load balancing, dynamic upstream, canary release, circuit breaking, authentication, observability, and more.
APISIX currently supports Gateway API
v1alpha2 version of the specification for its Apache APISIX Ingress Controller.
Cilium is an eBPF-based networking, observability and security solution for Kubernetes and other networking environments. It includes Cilium Service Mesh, a highly efficient mesh data plane that can be run in sidecarless mode to dramatically improve performance, and avoid the operational complexity of sidecars. Cilium also supports the sidecar proxy model, offering choice to users. Cilium is working on a Gateway API implementation.
Cilium is open source and is a CNCF incubation project.
If you have questions about Cilium Service Mesh the #service-mesh channel on Cilium Slack is a good place to start. For contributing to the development effort, check out the #development channel or join our weekly developer meeting.
Contour is a CNCF open source Envoy-based ingress controller for Kubernetes.
Contour implements Gateway API v0.5.1, supporting the v1alpha2 and v1beta1 API versions. All Standard channel resources (GatewayClass, Gateway, HTTPRoute), plus ReferenceGrant and TLSRoute, are supported. Contour's implementation passes all Gateway API conformance tests included in the v0.5.1 release.
See the Contour Gateway API Guide for information on how to deploy and use Contour's Gateway API implementation.
Some "extended" functionality is not implemented yet, contributions welcome!.
Emissary-Ingress (Ambassador API Gateway)¶
Emissary-Ingress (formerly known as Ambassador API Gateway) is an open source CNCF project that provides an ingress controller and API gateway for Kubernetes built on top of Envoy Proxy. See here for more details on using the Gateway API with Emissary.
Envoy Gateway is an Envoy subproject for managing Envoy-based application gateways. The
v0.2 release includes support for most
v1beta1 Gateway API features and passes core conformance tests
included in the v0.5.1 release. Use the quickstart to get Envoy Gateway running with Gateway API in a
few simple steps.
Flomesh Service Mesh (FSM)¶
Flomesh Service Mesh is a community driven Kubernetes North-South traffic manager, and provides an implementation of Ingress controller, Gateway API, Load Balancer, and cross-cluster service registration and service discovery.
Gloo Edge 2.0 is an Istio-native, fully-featured Envoy based API gateway that brings Gloo Edge functionality to Istio. The Solo.io team is actively working towards an implementation of the Gateway API.
Google Kubernetes Engine¶
Google Kubernetes Engine (GKE) is a managed Kubernetes platform offered by Google Cloud. GKE's implementation of the Gateway API is through the GKE Gateway controller which provisions Google Cloud Load Balancers for Pods in GKE clusters.
The GKE Gateway controller supports weighted traffic splitting, mirroring, advanced routing, multi-cluster load balancing and more. See the docs to deploy private or public Gateways and also multi-cluster Gateways.
HAProxy Ingress is a community driven ingress controller implementation for HAProxy.
HAProxy Ingress v0.13 partially supports the Gateway API's v1alpha1 specification. See the controller's Gateway API documentation to get informed about conformance and roadmap.
Consul service mesh works on any Kubernetes distribution, connects multiple clusters, and Consul CRDs provide a Kubernetes native workflow to manage traffic patterns and permissions in the mesh. Consul API Gateway supports Gatewway API for managing North-South traffic.
Please see the Consul API Gateway documentation for current infomation on the supported version and features of the Gateway API.
Istio supports the Gateway API; see Istio Gateway API Documentation to get started.
Kong is an open source API Gateway built for hybrid and multi-cloud environments.
Kong also supports Gateway API in the Kong Gateway Operator.
Kuma is an open source service mesh.
Kuma is actively working on an implementation of Gateway API specification for the Kuma builtin Gateway. Check the Gateway API Documentation for information on how to setup a Kuma builtin gateway using the Gateway API.
LiteSpeed Ingress Controller¶
The LiteSpeed Ingress Controller uses the LiteSpeed WebADC controller to operate as an Ingress Controller and Load Balancer to manage your traffic on your Kubernetes cluster. It implements the full core Gateway API including Gateway, GatewayClass, HTTPRoute and ReferenceGrant and the Gateway functions of cert-manager. Gateway is fully integrated into the LiteSpeed Ingress Controller.
- Product documentation.
- Gateway specific documentation.
- Full support is available on the LiteSpeed support web site.
NGINX Kubernetes Gateway¶
NGINX Kubernetes Gateway is an open-source project that provides an implementation of the Gateway API using NGINX as the data plane. The goal of this project is to implement the core Gateway API -- Gateway, GatewayClass, HTTPRoute, TCPRoute, TLSRoute, and UDPRoute -- to configure an HTTP or TCP/UDP load balancer, reverse-proxy, or API gateway for applications running on Kubernetes. NGINX Kubernetes Gateway is currently under development and supports a subset of the Gateway API.
If you have any suggestions or experience issues with NGINX Kubernetes Gateway, please create an issue or a discussion on GitHub. You can also ask for help in the #nginx-kubernetes-gateway channel on NGINX slack.
Traefik is an open source cloud-native application proxy.
Traefik currently supports version
v0.4.x) of the Gateway API specification, check the Kubernetes Gateway Documentation for information on how to deploy and use Traefik's Gateway implementation.
Traefik is currently working on implementing UDP, and ReferenceGrant. Status updates and documentation will be provided here as the work progresses.
In this section you will find specific links to blog posts, documentation and other Gateway API references for specific integrations.
Flagger is a progressive delivery tool that automates the release process for applications running on Kubernetes.
Flagger can be used to automate canary deployments and A/B testing using Gateway API. It currently supports the
v1alpha2 spec of Gateway API. You can refer to this tutorial to use Flagger with any implementation of Gateway API.
cert-manager is a tool to automate certificate management in cloud native environments.
cert-manager can generate TLS certificates for Gateway resources. This is configured by adding annotations to a Gateway. It currently supports the
v1alpha2 spec of Gateway API. You can refer to the cert-manager docs to try it out.