关于kubernetes+flannel 的一个疑问

跑了一个2节点的kubernetes,用的flannel,有一个疑问,通过kubernetes create的的2个pod ,在2节点上都可以ping通,网络通信无问题,那么问题来了,内网的其他机器如何访问pod上的应用,也就是内网的其他机器和kubernetes中的service的网段通信,求知道的 指点下,
已邀请:

FanLin - Docker&CoreOS爱好者

赞同来自: 徐新坤 marsty DonTony xiezefan

Pod的ClusterIP只能在Pod之间相互ping通,想要让Pod以外的地方连接Pod提供的服务需要将服务的类型设置为『NodePort』: <pre> apiVersion: v1 kind: Service metadata: type: NodePort ... ... </pre> 启动服务时会提示相应的NodePort端口,连接任意Node节点IP加这个端口号即可。 这是官方推荐的主机访问服务方法,没有必要在主机和Service的网段直接通信。不知这样回复解答了题主疑问没有。

gosharplite

赞同来自: marsty

也可以用External IPs。 https://github.com/kubernetes/kubernetes/blob/master/docs/user-guide/services.md#external-ips

要回复问题请先登录注册