CertGrid CertGrid
Hands-on Lab·Certified Kubernetes Application Developer

Ingress Rules and Ingress Controllers

An Ingress is only a request. Something has to implement it, and if nothing claims it the object sits there looking healthy forever. This creates that exact failure first, then a working two-path Ingress, and finishes with the behaviour that surprises people most: the matched path is passed to the backend unchanged.

Services and Networking Guide 36 of 44 Intermediate

Written against the versions above. This cluster's ingress-nginx runs as a **NodePort** Service, so the address the Ingress advertises has nothing listening on port 80 - traffic goes to the controller's ClusterIP from inside, or its NodePort from outside. On a cloud cluster the same Service would be a LoadBalancer and the advertised address would answer on 80 directly.

The ingress-nginx controller runs on cka1001-node03, which is the node its NodePort is reached on in the last step.
Server NameIP AddressOSRolesCPURAMHDD
CKA1001192.168.0.175Ubuntu 26.04 LTSControl Plane Node2 Core4 GB50 GB
CKA1001-NODE01192.168.0.176Ubuntu 26.04 LTSWorker Node2 Core4 GB50 GB
CKA1001-NODE02192.168.0.177Ubuntu 26.04 LTSWorker Node2 Core4 GB50 GB
CKA1001-NODE03192.168.0.178Ubuntu 26.04 LTSWorker Node2 Core4 GB50 GB

Before you start

  1. Two backends that serve their own path

  2. An Ingress with no class

  3. With a class, it is programmed

  4. Does it route

  5. The path reaches the backend unchanged

Official sources