BFE Ingress Controller vs HAProxy Ingress
BFE Ingress Controller
bfe-networks.netHAProxy Ingress
haproxy-ingress.github.ioSide by side
| Figure | BFE Ingress Controller | HAProxy Ingress |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | Yes | — |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Kubernetes Ingress Controllers | 9.0 (#2) | 7.6 (#13) |
| License | BFE and the ingress controller are released under the Apache 2.0 license. | The GitHub repository lists the project under the Apache-2.0 license. |
| Security | The vendor says BFE is written in Go, a memory-safe language, and describes it as immune to buffer overflow vulnerabilities. | The getting-started guide says HAProxy Ingress uses TLS SNI and the Host header to associate requests with ingress hosts. |
| Support | The project directs questions and issues to GitHub and lists CNCF Slack and WeChat community channels. | The project lists a Kubernetes Slack channel, a users mailing list, and Stack Overflow for community discussion and questions. |
Plans
In their own words
BFE Ingress Controller
BFE Ingress Controller is an open-source Layer 7 load balancer derived from Baidu’s proprietary Baidu Front End. It is self-hosted and supports Linux, macOS, Windows, and API use. BFE handles HTTP, HTTPS, SPDY, HTTP/2, WebSocket, TLS, gRPC, and FastCGI traffic; HTTP/3 is planned. Operators define content-based routing rules with a domain-specific language. Traffic features include global and distributed load balancing, zone-aware balancing, resilience to zone-level failures, and overload protection. Each tenant has an isolated configuration that is not visible to other tenants. A built-in plugin framework supports extensions for traffic management, security, and observability. For operations, BFE provides subsystem metrics, troubleshooting and analysis logs, and distributed tracing. The project lists integrations with mainstream Layer 4 load balancers and ecosystem projects such as Kubernetes, Prometheus, Jaeger, and Fluentd. It is licensed under Apache 2.0 and is a CNCF sandbox project. Documentation covers installation from source and through binary, Go, Snap, and Docker paths. The open-source plan is free.
HAProxy Ingress
HAProxy Ingress is a free, self-hosted controller that configures HAProxy to route external requests to applications in a Kubernetes cluster. It applies changes made in the cluster to HAProxy without requiring a separate update process. The project supports Ingress and Gateway API resources and describes more than 200 configuration options. Gateway API support is partial: the documented implementation covers GatewayClass, Gateway, TCPRoute, and HTTPRoute, but not HTTPRoute filters or resource status updates. Installation uses a Helm chart and requires Helm 3, a running Kubernetes cluster, and administrative privileges in that cluster. Version 0.16 requires Kubernetes 1.21 or newer. Local cluster options named by the project include minikube, kind, k3s, k3d, and colima. It 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 uses the Apache-2.0 license and lists community channels including Slack, a users mailing list, and Stack Overflow.