Third-party Ingress controller

The Ingress controller facilitates access to services within the Kubernetes environment from outside the cluster. Read more about the Ingress controller in this article.

If you want to install an Ingress controller other than the one, follow the steps listed below:

You will be able to choose which Ingress controller you wish to use, but for the purposes of this guide we will demonstrate using the NGINX controller and the Helm package manager.

  1. Install and configure the Helm package manager on your computer. For more information on how to install Helm package manager consult the following Helm documentation – Installing Helm

  2. Install or upgrade (if already installed) the ingress-nginx Helm chart in your Kubernetes cluster using one of the following commands:

Option A: if you want to enable the Proxy Protocol, use this command:

helm upgrade --install ingress-nginx ingress-nginx \
  --repo \
  --namespace ingress-nginx --create-namespace \
  --set controller.config.use-proxy-protocol=true \
  --set controller.service.annotations."servers\.com\/proxy-protocol"=true

Option B. If you do not need to configure the Proxy Protocol, use this command:

helm upgrade --install ingress-nginx ingress-nginx \
  --repo \
  --namespace ingress-nginx --create-namespace

After the Ingress controller has been deployed, the load balancer will be created. It's built upon the L4 (TCP) load balancer and facilitates access to the cluster.

Now, you are ready to configure the Ingress object within Kubernetes.

Proxy Protocol

The Proxy Protocol transfers the real IP address of a user connecting to the Ingress controller. It works in a similar way to Forwarded or X-Forwarded-For HTTP headers. Since the load balancer takes part in this process, the Proxy Protocol has to be configured on both sides: L4 load balancer and Ingress controller.

Once the feature is disabled, you will see the IP address of the balancing node as the user's IP.


Suggested Articles

  • Kubernetes clusters

    Introducing the Kubernetes Clusters service

  • Kubernetes clusters

    Setting up load balancing with Ingress and Service resources