Re: Basic Kubernetes Service Hello World Example: Issue Exposing Service using LoadBalancer

187 views
Skip to first unread message

Sebastien Goasguen

unread,
May 23, 2017, 8:41:06 AM5/23/17
to Traiano Welcome, kubernet...@googlegroups.com, Kubernetes developer/contributor discussion
Hi Traiano,

I am copying  the kubernetes-users list where your question should be posted.

You can also try stackoverflow, these will be better channels as we try to get all users questions in the same place.

thanks a lot

---
Please re-post your question to [stackoverflow]
(http://stackoverflow.com/questions/tagged/kubernetes).

We are trying to consolidate the channels to which questions for help/support
are posted so that we can improve our efficiency in responding to your requests,
and to make it easier for you to find answers to frequently asked questions and
how to address common use cases.

We regularly see messages posted in multiple forums, with the full response
thread only in one place or, worse, spread across multiple forums. Also, the
large volume of support issues on github is making it difficult for us to use
issues to identify real bugs.

The Kubernetes team scans stackoverflow on a regular basis, and will try to
ensure your questions don't go unanswered.

Before posting a new question, please search stackoverflow for answers to
similar questions, and also familiarize yourself with:

  * [user documentation](http://kubernetes.io/docs/)
  * [troubleshooting guide](https://kubernetes.io/docs/tasks/debug-application-cluster/troubleshooting/)

Again, thanks for using Kubernetes.

The Kubernetes Team





On Tue, May 23, 2017 at 1:22 PM, Traiano Welcome <tra...@gmail.com> wrote:
Hi All

I'm going through this kubernetes hello world tutorial and just trying to expose a basic nginx service via LoadBalancer:

http://janetkuo.github.io/docs/hellonode/

I spin up a service as follows:

 bash-3.2$ kubectl run hello-node --image=nginx --port=80
 deployment "hello-node" created

--

bash-3.2$ kubectl get deployments
NAME         DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
hello-node   1         1     

--

bash-3.2$ kubectl get pods
NAME                          READY     STATUS    RESTARTS   AGE
hello-node-4180085773-f4p9x   1/1       Running   0          43s

--

kubectl get events:

---
9m        9m        1         hello-node-4180085773-f4p9x   Pod                                        Normal    Scheduled           default-scheduler                       Successfully assigned hello-node-4180085773-f4p9x to kubernetes-minion-group-kmg7
9m        9m        1         hello-node-4180085773-f4p9x   Pod          spec.containers{hello-node}   Normal    Pulling             kubelet, kubernetes-minion-group-kmg7   pulling image "nginx"
9m        9m        1         hello-node-4180085773-f4p9x   Pod          spec.containers{hello-node}   Normal    Pulled              kubelet, kubernetes-minion-group-kmg7   Successfully pulled image "nginx"
9m        9m        1         hello-node-4180085773-f4p9x   Pod          spec.containers{hello-node}   Normal    Created             kubelet, kubernetes-minion-group-kmg7   Created container with id 3caeab9ebdc3445811d09537d59f4449ec51b1d22d08221577a239352929c128
9m        9m        1         hello-node-4180085773-f4p9x   Pod          spec.containers{hello-node}   Normal    Started             kubelet, kubernetes-minion-group-kmg7   Started container with id 3caeab9ebdc3445811d09537d59f4449ec51b1d22d08221577a239352929c128
9m        9m        1         hello-node-4180085773         ReplicaSet                                 Normal    SuccessfulCreate    replicaset-controller                   Created pod: hello-node-4180085773-f4p9x
10m       10m       1         hello-node                    Deployment                                 Normal    ScalingReplicaSet   deployment-controller                   Scaled down replica set hello-node-272046498 to 0
9m        9m        1         hello-node                    Deployment                                 Normal    ScalingReplicaSet   deployment-controller                   Scaled up replica set hello-node-4180085773 to 1
---

I then try to expose the service to the general internet via loadbalancer mechanism it appears to accept the request, but stays in pending forever:

bash-3.2$ date;kubectl get services hello-node
Tue May 23 14:17:56 +04 2017
NAME         CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
hello-node   10.0.241.214   <pending>     80:31715/TCP   13m

bash-3.2$
bash-3.2$ date;kubectl get services hello-node
Tue May 23 14:18:39 +04 2017
NAME         CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
hello-node   10.0.241.214   <pending>     80:31715/TCP   14m
bash-3.2$

bash-3.2$
bash-3.2$ date;kubectl get services hello-node
Tue May 23 14:52:43 +04 2017
NAME         CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
hello-node   10.0.241.214   <pending>     80:31715/TCP   48m

My question is: How do I troubleshoot this further,and hopefully fix it?

Thanks,
Traiano



--
You received this message because you are subscribed to the Google Groups "Kubernetes developer/contributor discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-dev+unsubscribe@googlegroups.com.
To post to this group, send email to kubernetes-dev@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kubernetes-dev/12b7fd17-f90a-44ee-bf14-8ab4503627ec%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Ahmet Alp Balkan

unread,
May 23, 2017, 12:12:11 PM5/23/17
to Traiano Welcome, kubernet...@googlegroups.com
Traiano, which environment (cloud, local, etc?) your cluster is running on? Service type=LoadBalancer is available only on cloud environments when Kubernetes is configured to use them to create an external load balancer. Otherwise EXTERNAL_IP will stay in <pending> forever.

Also, the actual docs are at kubernetes.io (you're looking at an old fork) and this tutorial has been moved to: https://kubernetes.io/docs/tutorials/stateless-application/hello-minikube/

To post to this group, send email to kuberne...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Kubernetes developer/contributor discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-dev+unsubscribe@googlegroups.com.

Traiano Welcome

unread,
May 23, 2017, 2:03:50 PM5/23/17
to Ahmet Alp Balkan, kubernet...@googlegroups.com
Hi Ahmet


On Tue, May 23, 2017 at 8:11 PM, Ahmet Alp Balkan <ahm...@google.com> wrote:
Traiano, which environment (cloud, local, etc?) your cluster is running on?

I'm using Google Cloud to deploy Kubernetes on.

 
Service type=LoadBalancer is available only on cloud environments when Kubernetes is configured to use them to create an external load balancer. Otherwise EXTERNAL_IP will stay in <pending> forever.



So would this be the default case when deploying a new kubernetes cluster according to the documentation to Google Cloud?

 
Also, the actual docs are at kubernetes.io (you're looking at an old fork) and this tutorial has been moved to: https://kubernetes.io/docs/tutorials/stateless-application/hello-minikube/


I think minikube is for a local / laptop installation? I'm trying to build a production kubernetes cluster on Google Cloud though. Additionall, I'd like to deploy to the AWS cloud too, but I found the deploy package does not include default configuration for AWS.
Reply all
Reply to author
Forward
0 new messages