<p>Service showing pending status after exposing the deployment.</p>

<pre><code>packet@ubuntu:/home/gss$ kubectl get services
NAME         TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
kubernetes   ClusterIP      10.96.0.1       &lt;none&gt;        443/TCP          22h
wms1         LoadBalancer   10.106.19.103   &lt;pending&gt;     8000:32461/TCP   17h
</code></pre>

<p>Installed kubeadm with one master and 4 worker nodes. 
created deployment with the command:</p>

<pre><code>sudo docker run -p 8000:8000 w1
</code></pre>

<p>here w1 is my image name.</p>

<p>created service with the command:</p>

<pre><code>kubectl expose deployment wms1 --type=LoadBalancer --port=8000
</code></pre>

<p>To retrieve external ip for your application in Kubernetes Cluster you have to use cloud provider like Google Kubernetes Engine or Amazon Web Services. </p>

<p>Please check:
<a href="https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#external-load-balancer-providers" rel="nofollow noreferrer">https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#external-load-balancer-providers</a></p>

<p>Otherwise you can use Type NodePort and in that case Kubernetes master will allocate a port from a range specified by --service-node-port-range flag (default: 30000-32767), and each Node will proxy that port (the same port number on every Node) into your Service.</p>

<p>For detailed information: <a href="https://kubernetes.io/docs/concepts/services-networking/service/#nodeport" rel="nofollow noreferrer">https://kubernetes.io/docs/concepts/services-networking/service/#nodeport</a></p>
