Installing Ingress NGINX

This guide walks you through installing the Ingress NGINX Controller on your Kubernetes cluster using Helm, with the necessary annotations for Hetzner Cloud Load Balancers configured to work with our platform.

Prerequisites

Step 1: Add the Ingress NGINX Helm Repository

Step 2: Create a Namespace (optional)

Step 3: Install Ingress NGINX with Required Annotations

Install the chart with a custom values.yaml inline or via a file. Below is the recommended command using inline --set flags to apply the Hetzner Load Balancer annotations, replacing fsn1 and lb11 with your desired region and load balancer type:

Alternatively, create a values.yaml file:

yaml
controller: service: type: LoadBalancer annotations: // [!code tooltip:fsn1:1:Should match the region set on the Cluster resource] load-balancer.hetzner.cloud/location: fsn1 // [!code tooltip:lb11:1:Should match the type set on the Cluster resource] load-balancer.hetzner.cloud/type: lb11

Then install with:

For more information on the annotations, refer to the Configuring a Hetzner Load Balancer guide.

Step 4: Verify Installation

Wait a few seconds and run:

You should see an external IP assigned to the ingress-nginx-controller service. This means the Hetzner Load Balancer is provisioned and working.

You can now deploy applications and expose them using Ingress resources.

Previous
Preserving source IP address
Next
Configuring Egress Gateway with Static Node IP