首页 文章

kubernetes:主人以外无法访问服务

提问于
浏览
2

我按照http://kubernetes.io/docs/getting-started-guides/ubuntu/的指南来创建一个kubernetes集群 . 群集启动后,我可以使用kubectl创建pod和服务 . 基本上,请执行以下操作

kubectl run nginx --image=nginx --port=80
kubectl expose deployment/nginx

我看到一个pod和服务正在运行

# kubectl get services
NAME         CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
kubernetes   192.168.3.1     <none>        443/TCP   2d
nginx        192.168.3.208   <none>        80/TCP    2d

当我尝试从运行pod的机器访问服务时,我返回nginx helloworld页面 . 但是,如果我在kubernetes集群中尝试另一台机器,我会暂停 .

我认为群集中的任何地方都可以访问所有服务 . 为什么不能那样工作?

谢谢

3 回答

  • 0

    是的,服务应该可以在群集中的任何位置访问 . 您的"another machine"是否在 kubectl get nodes 的输出中列出?节点 Ready ?可能是机器配置不正确 .

  • 0

    如果要在群集中的任何位置获取服务器,则必须使用网络插件,例如Flannel,OpenVSwitch . http://kubernetes.io/docs/admin/networking/#flannel https://github.com/coreos/flannel#flannel

  • 0

    通过将它与其工作的另一个安装进行比较来发现我的错误 . 这个安装缺少一个iptables规则,强制所有进入容器的东西都进入法兰绒界面 . 因此,流量在eth0上到达目标主机,使其丢弃数据包 . 我不知道为什么代理没有添加该规则 . 一旦我手动添加它,它就有效了 .

相关问题