Skip to content

Ingress verification workflow

The Ingress verification workflow is a procedure used to validate the successful deployment and configuration of an NGINX Ingress Controller within a Kubernetes cluster, and to confirm external routing via a reverse proxy^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].

Ingress Controller Deployment

The workflow begins with applying the necessary Ingress resources and verifying the status of the Ingress NGINX components^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md]. Successful installation is indicated by the ingress-nginx-controller pods entering the Running state and the controller service exposing ports (typically 80:30035/TCP,443:30603/TCP)^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].

Internal Connectivity Testing

Once the controller is active, a test deployment and service (e.g., myapp-depl) are created alongside a corresponding Ingress resource[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md][400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].

  1. Service Reachability: Verify the ClusterIP service routes traffic correctly to the backend pods^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].
  2. Endpoint Resolution: Use curl against the service's specific path (e.g., /hostname.html) to confirm load balancing across different backend pods^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].
  3. Direct Ingress Check: Access the application directly through the Ingress Controller's NodePort (e.g., http://myapp.od.com:30035)^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].

Reverse Proxy Configuration

To complete the verification, the workflow typically configures an external Nginx reverse proxy (in this example, on host hdss7-12) to forward traffic to the Kubernetes Ingress backend^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].

  • Upstream Definition: An upstream block is defined containing the backend Kubernetes node IPs and the Ingress NodePort^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].
  • Server Configuration: The proxy server is configured to listen for requests matching *.od.com and proxy them to the defined upstream backend^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].
  • Syntax Verification: The configuration syntax is validated using nginx -t before reloading the service^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md].

Sources

^[400-devops-06-kubernetes-k8s-learning-linux-02-ingress-readme.md]