k8s-loadbalancer一直处于pending状态原因分析

现象

在这里插入图片描述

原因分析

service type 目前有两种,如果使用 gce 的 kubernetes,可以直接使用LoadBalancer类型,gce 会自动帮忙生成一个对外的 ip,并帮你做负载均衡

如果不是在 gce 平台,可以选择使用NodePort的类型,这样会在 node 里面添加一个对外的端口号,可以通过 nodeIP:nodePORT 来访问。可以自己搭建nginx 或者使用云服务商的负载均衡器来做处理。

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

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

你可能感兴趣的:(分布式架构,k8s探险记)