Adding an Ingress controller

If you want to access the services in the kubernetes cluster from outside the cluster, you need an ingress controller. Use the following commands to make an ingress controller available in your cluster.

The community-maintained ingress-nginx controller was deprecated in March 2026. Axual has proactively migrated all managed clusters to a supported, enterprise-grade ingress controller. Migration to the Kubernetes Gateway API — the native Kubernetes ingress solution — is currently in progress as the next planned step. The instructions below reflect the previous setup and are provided for reference. Contact your Axual representative for the current recommended ingress configuration when setting up new environments.
  1. First add the ingress-nginx repo. This only needs to be done once.

    helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
  2. Start the ingress-nginx

    In the example below, nginx is started without requiring a class to be set on the ingress resources and SSL passthrough.
    helm install ingress-controller --set controller.watchIngressWithoutClass="true" --set controller.extraArgs.enable-ssl-passthrough="true" ingress-nginx/ingress-nginx -n ingress-nginx
    This will create a service with LoadBalancer type. If minikube is used, the EXTERNAL-IP field will remain in PENDING state until minikube tunneling.
  3. When running locally, you might want to add <domain> and axual.<domain> to your /etc/hosts. Replace <domain> with the domain you are using for the deployment of Axual Governance.

    127.0.0.1 <domain> axual.<domain>