Using nginx as an Ingress Controller
An Ingress Controller is a Kubernetes controller that is deployed manually to the cluster, most often as a DaemonSet or a Deployment object that runs dedicated Pods for handling incoming traffic load balancing and smart routing. It is responsible for processing the Ingress objects (which specify that they especially want to use the Ingress Controller) and dynamically configuring real routing rules. A commonly used Ingress controller for Kubernetes is ingress-nginx
(https://www.nginx.com/products/nginx/kubernetes-ingress-controller), which is installed in the cluster as a Deployment of an nginx
web host with a set of rules for handling Ingress API objects. The Ingress Controller is exposed as a Service with a type that depends on the installation – in cloud environments, this will be LoadBalancer
.
Important note
In cloud environments, you will often see dedicated Ingress Controllers that leverage vendor-specific features that allow direct...