Configuring NGINX Ingress Controller
There are three main ways in which to expose Kubernetes services externally: NodePort, load balancers, and Ingress. In this section, we will focus on ingresses, as they fulfill the needs of the majority of the workloads and deployments on Kubernetes clusters.
Ingress exposes TCP/IP L7 services (such as HTTP/HTTPS) and it routes traffic from outside the cluster to services within the cluster. Ingress controls traffic routing through a defined set of rules for each ingress resource and/or a global configuration for all ingress resources.
There are many configurations that an ingress can control, including giving services an external URL, SSL/TLS termination, session validity, and name-based virtual hosting. An ingress controller is the Kubernetes resource that is responsible for fulfilling the ingress.
The most popular and battle-tested ingress is NGINX Ingress Controller. This is an ingress controller for Kubernetes that uses NGINX as a...