【发布时间】:2016-01-22 18:59:50
【问题描述】:
我刚开始在工作中使用 Kubernetes,想知道是否有一种简单的方法可以将服务公开给谷歌云中的私有网络。使用LoadBalancer 的标准服务类型公开时,一切正常。通过可公开寻址的网络公开所有内容似乎很奇怪。
【问题讨论】:
标签: networking kubernetes google-kubernetes-engine
我刚开始在工作中使用 Kubernetes,想知道是否有一种简单的方法可以将服务公开给谷歌云中的私有网络。使用LoadBalancer 的标准服务类型公开时,一切正常。通过可公开寻址的网络公开所有内容似乎很奇怪。
【问题讨论】:
标签: networking kubernetes google-kubernetes-engine
服务可以暴露给集群中的任何其他 pod,只需使用 no type at all,或者将 ClusterIP 设置为“None”,Headless Service 可以让您访问所有选定 Pod 的 IP。
要安全地暴露于外部世界,有几个选择,但没有什么超级简单的:
为您的服务设置 TLS 身份验证,使它们暴露在外部但需要身份验证。
在您的集群中使用 VPN:这是我采用的解决方案,使用此项目:https://github.com/kylemanna/docker-openvpn 我有一个生成 Kubernetes Secrets 文件的待处理 PR,因此不必在映像中保留凭据。
编辑(2017-08):
现在还有2个基于上述的kube-openvpn项目:
【讨论】: