---
title: HAProxy ingress controller
description: For deployments on GKE, EKS, and AKS, the tf-apply cluster creation script deploys the Traefik ingress controller when it creates new Kubernetes clusters. Alternatively, you can deploy HAProxy Ingress as your ingress controller.
component: forgeops
version: 2026.1
page_id: forgeops:reference:ingress
canonical_url: https://docs.pingidentity.com/forgeops/2026.1/reference/ingress.html
keywords: ["Ingress Controller", "Traefik", "HAProxy"]
section_ids:
  haproxy: HAProxy Ingress
---

# HAProxy ingress controller

For deployments on GKE, EKS, and AKS, the tf-apply cluster creation script deploys the Traefik ingress controller when it creates new Kubernetes clusters. Alternatively, you can deploy [HAProxy Ingress](#haproxy) as your ingress controller.

For deployments on minikube, the minikube start command example installs the ingress add-on in your [minikube cluster](../setup/minikube.html).

## HAProxy Ingress

This section lists adjustments you'll need to make if you want to perform a ForgeOps deployment that uses HAProxy Ingress as the ingress controller instead of Ingress-NGINX controller.

When you create your [GKE](../setup/google-cloud.html#gcp-cluster), [EKS](../setup/aws.html#aws-cluster), or [AKS](../setup/azure.html#azure-cluster) cluster:

1. Before you run the tf-apply script, configure Terraform to deploy HAProxy Ingress in your cluster.

   Modify these values under `cluster.tf_cluster_gke_small` in the override.auto.tfvars file:

   1. Set the value of the `helm.ingress-haproxy.deploy` variable to `false`.

2. To get the ingress controller's external IP address on your GKE, EKS, or AKS cluster, specify --namespace haproxy-ingress when you run the kubectl get services command. For example:

   ```
   $ kubectl get services --namespace haproxy-ingress
   NAME              TYPE           CLUSTER-IP   EXTERNAL-IP  PORT(S)                      AGE
   haproxy-ingress   LoadBalancer   10.84.6.68   34.82.11.221 80:32288/TCP,443:32325/TCP   38s
   ...
   ```

When you [perform your ForgeOps deployment](../deploy/deploy.html):

1. Specify the --ingress-class haproxy argument. For example:

   ```
   $ cd /path/to/forgeops/bin
   $ ./forgeops apply --small --ingress-class haproxy --fqdn my-fqdn --namespace my-namespace
   ```
