5

enter image description here

I have installed kubernetes on my ubuntu machine when I tried to run the following command I see external-IP as "pending", where svc.yml is service object in linkerd, link below

link: https://linkerd.io/getting-started/k8s/

William Morgan
  • 476
  • 2
  • 7
zillani
  • 1,070
  • 3
  • 18
  • 26

3 Answers3

7

The yaml you specified for the Service has type: LoadBalancer. That will only work with a cloud provider - so not on your bare metal Ubuntu installation.

Modify the Service definition and specify a different type, for example clusterIP

Janos Lenart
  • 25,074
  • 5
  • 73
  • 75
3

I think you have insufficient memory on your machine, try this command

kubectl get nodes -o yaml | grep '\sname\|cpu\|memory'

reference: https://kubernetes.io/docs/user-guide/debugging-pods-and-replication-controllers/

praveen kumar
  • 1,474
  • 4
  • 13
  • 19
1

Try this one if you are using LoadBalancer on an on-premise / bare-metal kubernetes cluster.

https://github.com/google/metallb

From the project description:

Kubernetes does not offer an implementation of network load-balancers (Services of type LoadBalancer) for bare metal clusters. ... If you’re not running on a supported IaaS platform (GCP, AWS, Azure…), LoadBalancers will remain in the “pending” state indefinitely when created.

and this project tries to solve this problem.

Kevin
  • 2,775
  • 4
  • 16
  • 27