【问题标题】:Local-machine Kubernetes service unreachable by podspod 无法访问本地机器 Kubernetes 服务
【发布时间】:2015-10-27 17:32:24
【问题描述】:

按照本指南启动本地机器 kubernetes 集群: http://kubernetes.io/v1.0/docs/getting-started-guides/docker.html

我用 .yaml 文件创建了各种 pod,一切正常,我可以使用容器 IP(在 172.17.xx 范围内,使用 docker0)访问 nginx 和 mysql,但是当我创建服务时,服务 IP 在 10.0 .0.x 范围,无法从其他容器访问。

kube-proxy 不是应该自动创建 iptables 规则,提供对服务 IP 后面的容器的访问吗?没有发生 iptables 更改,其他容器无法访问服务。谢谢!

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    我刚刚浏览了这个(稍微过时的)文档。我发现如果在 2 个“docker run”行中将hyperkube:v0.21.2 替换为hyperkube:v1.0.7,并在kubectl 下载URL 中将0.18.2 替换为1.0.7,它会起作用。

    我已提出更新此文档的请求。给您添麻烦了。

    【讨论】:

    • 不走运——同样的症状。我有 pod 与 GKE 上的服务交谈,但不是在仅限本地的开发系统上。容器到端点有效,但容器到服务 IP 无效。能够从所有容器 ping 到 www。运行 docker for kubernetes 时是否有一组必要的命令选项?使用 /usr/bin/docker -d -p /run/docker.pid --icc=true --ip-forward=true --iptables=true
    • gist.github.com/thockin/3a8043ce6129a44af530 我刚刚在一个全新的虚拟机上再次运行它。你能追踪我的脚步,看看有没有什么不同吗?
    【解决方案2】:

    Tim,我确实使用你的步骤再次运行它,没有区别,没有工作,但是今天我在这里切换到 1.1 版文档:

    http://kubernetes.io/v1.1/docs/getting-started-guides/docker.html

    并且还切换了容器版本,目前正在使用:

    gcr.io/google_containers/etcd:2.2.1

    gcr.io/google_containers/hyperkube:v1.1.1

    你瞧……它有效!!!容器现在可以与服务对话了! 感谢回复

    【讨论】:

      猜你喜欢
      • 2021-09-17
      • 1970-01-01
      • 1970-01-01
      • 2020-07-06
      • 2019-07-29
      • 2020-07-12
      • 1970-01-01
      • 1970-01-01
      • 2019-09-16
      相关资源
      最近更新 更多