<p>I am following the <a href="https://kubernetes.github.io/ingress-nginx/deploy/#quick-start" rel="nofollow noreferrer">Quick start</a> instructions. I have other LoadBalancer services running on my cluster. They are exposing EXTERNAL-IP values just fine. NGINX Ingress Controller seems to be the only one having this issue.</p>
<p>I executed the first command:</p>
<pre class="lang-sh prettyprint-override"><code>kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.0/deploy/static/provider/cloud/deploy.yaml
</code></pre>
<p>There seems to be an issue with my LoadBalancer service. It has already been more than 1h, but EXTERNAL-IP remains in <code>&lt;pending&gt;</code> state:</p>
<pre class="lang-sh prettyprint-override"><code>kubectl get svc ingress-nginx-controller
NAME                       TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
ingress-nginx-controller   LoadBalancer   10.106.240.88   &lt;pending&gt;     80:31352/TCP,443:31801/TCP   32m

</code></pre>
<p>How do I progress from here? Is this an issue with my provider?</p>

jjrz
<p>My provider Oktawave replied, explaining additional annotations are necessary for LoadBalancers with 2 ports:</p>
<pre class="lang-yaml prettyprint-override"><code>apiVersion: v1
kind: Service
metadata:
  name: wordpress-lb
  annotations:
    k44sServiceType: HTTP
    k44sSslEnabled: &quot;True&quot;
  labels:
    app: hello-wordpress
spec:
  ports:
  - port: 80
    name: http
    protocol: TCP
  - port: 443
    name: https
    protocol: TCP
  selector:
    app: hello-wordpress
  type: LoadBalancer
</code></pre>
<p>I was able to get EXTERNAL-IP assigned to <code>ingress-nginx-controller</code> by editing the <a href="https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.0/deploy/static/provider/cloud/deploy.yaml" rel="nofollow noreferrer">YAML</a> to include these annotations:</p>
<pre class="lang-yaml prettyprint-override"><code>(...)
---
apiVersion: v1
kind: Service
metadata:
  annotations:
    k44sServiceType: HTTP
    k44sSslEnabled: &quot;True&quot;
  labels:
    helm.sh/chart: ingress-nginx-4.0.10
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/instance: ingress-nginx
    app.kubernetes.io/version: 1.1.0
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/component: controller
  name: ingress-nginx-controller
  namespace: ingress-nginx
spec:
  type: LoadBalancer
  externalTrafficPolicy: Local
  ipFamilyPolicy: SingleStack
  ipFamilies:
    - IPv4
  ports:
    - name: http
      port: 80
      protocol: TCP
      targetPort: http
      appProtocol: http
    - name: https
      port: 443
      protocol: TCP
      targetPort: https
      appProtocol: https
  selector:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/instance: ingress-nginx
    app.kubernetes.io/component: controller
---
(...)
</code></pre>
