<p>So i have set up an AWS EKS cluster (using fargate), and intend to use it for gitlab CI/CD integration</p>
<p>Then tried to set up the base domain based on <a href="https://docs.gitlab.com/ee/topics/autodevops/quick_start_guide.html#install-ingress" rel="nofollow noreferrer">this doc</a></p>
<pre><code>helm repo add nginx-stable https://helm.nginx.com/stable
helm repo update
helm install nginx-ingress nginx-stable/nginx-ingress
</code></pre>
<p><code>kubectl get service nginx-ingress-nginx-ingress -ojson | jq -r '.status.loadBalancer.ingress[].ip'</code> always returns <code>null</code> even after waiting for long</p>
<p>Basically I need a loadBalancer IP for setting up base domain in gitlab.</p>
<p>Read that i need to set service type to loadBalancer, so retried with
<code> helm install nginx-ingress nginx-stable/nginx-ingress --set controller.service.type=LoadBalancer</code></p>
<p>Same result</p>
<p>result of <code>kubectl get service nginx-ingress-nginx-ingress -ojson</code> includes</p>
<pre><code>{
    &quot;apiVersion&quot;: &quot;v1&quot;,
    &quot;kind&quot;: &quot;Service&quot;,
    &quot;metadata&quot;: {
        &quot;annotations&quot;: {
            &quot;meta.helm.sh/release-name&quot;: &quot;nginx-ingress&quot;,
            &quot;meta.helm.sh/release-namespace&quot;: &quot;default&quot;
        },
        &quot;creationTimestamp&quot;: &quot;2021-03-26T19:49:02Z&quot;,
        &quot;finalizers&quot;: [
            &quot;service.kubernetes.io/load-balancer-cleanup&quot;
        ],
        &quot;labels&quot;: {
            &quot;app.kubernetes.io/instance&quot;: &quot;nginx-ingress&quot;,
            &quot;app.kubernetes.io/managed-by&quot;: &quot;Helm&quot;,
            &quot;app.kubernetes.io/name&quot;: &quot;nginx-ingress-nginx-ingress&quot;,
            &quot;helm.sh/chart&quot;: &quot;nginx-ingress-0.8.1&quot;
        },
   .
   .
   .
   .
    &quot;status&quot;: {
        &quot;loadBalancer&quot;: {
            &quot;ingress&quot;: [
                {
                    &quot;hostname&quot;: &quot;&lt;xyz-key&gt;.ap-southeast-1.elb.amazonaws.com&quot;
                }
            ]
        }
    }
}
</code></pre>
<p>Any help on <strong>how to obtain a load balancer IP address</strong> would be appreciated</p>

<p>As @rockn-rolla mentioned in the comments, an Elastic Load Balancer provisioned through nginx-ingress on EKS returns is exposed by a hostname. The Load Balancer does have IP addresses tied to the subnets that it's deployed into (Elastic Network Interfaces), but its possible that they change. If you have a domain name, you can point a custom subdomain to the load balancer and provide that to GitLab. This GitLab blog has additional details: <a href="https://about.gitlab.com/blog/2020/05/05/deploying-application-eks/" rel="nofollow noreferrer">https://about.gitlab.com/blog/2020/05/05/deploying-application-eks/</a></p>
