<p>I have a <strong>non-EKS</strong> AWS kubernetes cluster with 1 master 3 worker nodes</p>
<p>I am trying to install <strong>nginx ingress controller</strong> in order to use the cluster with a domain name but unfortunately it does not seem to work, the <strong>nginx ingress controller service</strong> is not taking automatically an IP and even if I set manually an <strong>external IP</strong> this IP is not answering in 80 port.</p>

chatzich
<p>The reason for <code>External IP</code> remaining in pending is that there is no load balancer in front of your cluster to provide it with external IP, like it would work EKS. You can achieve it by boostraping your cluster with <code>--cloud-provider</code> option using <code>kubeadm</code>.</p>
<p>You can follow these tutorials on how to successfully achieve it:</p>
<p><a href="https://blog.scottlowe.org/2019/02/18/kubernetes-kubeadm-and-the-aws-cloud-provider/" rel="nofollow noreferrer">Kubernetes, Kubeadm, and the AWS Cloud Provider</a></p>
<p><a href="https://blog.heptio.com/setting-up-the-kubernetes-aws-cloud-provider-6f0349b512bd" rel="nofollow noreferrer">Setting up the Kubernetes AWS Cloud Provider</a></p>
<p><a href="https://itnext.io/kubernetes-part-2-a-cluster-set-up-on-aws-with-aws-cloud-provider-and-aws-loadbalancer-f02c3509f2c2" rel="nofollow noreferrer">Kubernetes: part 2 — a cluster set up on AWS with AWS cloud-provider and AWS LoadBalancer</a></p>
