如何将Kubernetes API公开给公共IP?

时间:2016-12-17 13:12:16

标签: kubernetes rancher

我已使用Rancher在我的VMware主机上成功设置了Kubernetes群集。我运行了kubernetes-dashboard,可以使用kubectl对集群执行命令。

现在,我想使用SaaS构建工具(Distelli)将我的应用程序部署到集群。此构建工具应使用HTTPS客户端证书,客户端密钥和群集证书连接到我的主机。

但是,我的kubernetes API尚未公开。

这是我目前的kubernetes服务配置:

$kubectl describe services kubernetes
Name:           kubernetes
Namespace:      default
Labels:         component=apiserver
            provider=kubernetes
Selector:       <none>
Type:           ClusterIP
IP:         10.43.0.1
Port:           https   443/TCP
Endpoints:      10.42.173.175:6443
Session Affinity:   ClientIP

如何在外部IP地址上提供此服务?我曾尝试使用入口负载均衡器到服务器,但它只返回503服务不可用。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您需要拥有从公共互联网到API服务器的路线。这可以通过将公共IP直接分配给运行api服务器的计算机来完成,或者也可以让负载均衡器直接进入流量。您提到您使用的是VMWare,因此根据您的网络设置,可能会有几个不同的路径。