- Home
- Kubernetes Ingress Controllers
- HAProxy Ingress
HAProxy Ingress
What it is
HAProxy Ingress is a free, self-hosted controller that configures HAProxy to route requests from external networks to applications in a Kubernetes cluster. It applies cluster changes to HAProxy on the fly and supports Ingress and Gateway API resources, with more than 200 configuration options described by the project. Gateway API support is partial: the documented implementation supports GatewayClass, Gateway, TCPRoute, and HTTPRoute, but does not implement HTTPRoute filters or resource status updates. Installation uses a Helm chart and requires Helm 3, a running Kubernetes cluster, and administrative cluster privileges. Version 0.16 requires Kubernetes 1.21 or newer; the getting-started guide names minikube, kind, k3s, k3d, and colima as local cluster options. The controller associates requests with ingress hosts using TLS SNI and the Host header. Metrics can be collected with Prometheus and Grafana using Prometheus Operator. The project is licensed under Apache-2.0, with community discussion available through a Kubernetes Slack channel, a users mailing list, and Stack Overflow.
For and against
For
- Free and self-hosted.
- Applies cluster changes to HAProxy on the fly.
- Supports Ingress and Gateway API resources.
- More than 200 configuration options are described.
- Prometheus and Grafana metrics collection is described.
Against
- Gateway API support is partial.
- Installation requires Helm 3.
- Requires a running Kubernetes cluster.
- Version 0.16 requires Kubernetes 1.21 or newer.
The verdict
HAProxy Ingress provides a free controller with dynamic updates and broad configuration options. Check its Kubernetes requirements and partial Gateway API support before adopting it.
Who it suits
HAProxy Ingress suits Kubernetes operators who want a self-hosted controller for routing external requests to cluster applications. It requires a running Kubernetes cluster and administrative installation privileges.
Plans and prices
HAProxy Ingress
Kubernetes cluster required · v0.16 requires Kubernetes 1.21 or newer
Read 29 Sep 2026 · haproxy-ingress.github.io
On the record
- Cluster requirement
- HAProxy Ingress requires a running Kubernetes cluster, and its v0.16 controller requires Kubernetes 1.21 or newer.haproxy-ingress.github.io · read 29 Sep 2026
- Customization
- The project homepage describes more than 200 configuration options and support for Ingress and Gateway API resources.haproxy-ingress.github.io · read 29 Sep 2026
- Deployment
- The controller is installed and configured with a Helm chart, and the instructions require Helm version 3.haproxy-ingress.github.io · read 29 Sep 2026
- Dynamic updates
- Changes made to the Kubernetes cluster are applied to the HAProxy instance on the fly.github.com · read 29 Sep 2026
- Gateway API
- The Gateway API documentation says HAProxy Ingress can manage Ingress and Gateway API resources in the same cluster, with support described as partial.haproxy-ingress.github.io · read 29 Sep 2026
- Gateway API limits
- The documented Gateway API implementation supports GatewayClass, Gateway, TCPRoute, and HTTPRoute, while HTTPRoute filters and resource status updates are not implemented on that page’s described version.haproxy-ingress.github.io · read 29 Sep 2026
- Installation privilege
- The installation guide says administrative privileges in the Kubernetes cluster are required to install the controller properly.haproxy-ingress.github.io · read 29 Sep 2026
- License
- The GitHub repository lists the project under the Apache-2.0 license.github.com · read 29 Sep 2026
- Monitoring integrations
- The metrics example describes collecting HAProxy and controller metrics with Prometheus and Grafana using Prometheus Operator.haproxy-ingress.github.io · read 29 Sep 2026
- Purpose
- HAProxy Ingress configures HAProxy to route incoming requests from an external network to applications in a Kubernetes cluster.github.com · read 29 Sep 2026
- Security
- The getting-started guide says HAProxy Ingress uses TLS SNI and the Host header to associate requests with ingress hosts.haproxy-ingress.github.io · read 29 Sep 2026
- Support
- The project lists a Kubernetes Slack channel, a users mailing list, and Stack Overflow for community discussion and questions.github.com · read 29 Sep 2026
- Supported local clusters
- The getting-started guide names minikube, kind, k3s, k3d, and colima as local Kubernetes deployment options.haproxy-ingress.github.io · read 29 Sep 2026