我一直在使用ICP实例(ICP 2.1.0.2)进行实验:1个主节点和2个工作节点。
我注意到我的ICP Kubernetes集群中的pod没有出站Internet连接(或者有DNS查找问题)
例如,如果我在集群中启动一个busybox pod,并尝试执行"nslookup github.com“或"ping google.com”..它失败了..
kubectl run curl --image=radial/busyboxplus:curl -i --tty
root@curl-545bbf5f9c-gssbg:/ ]$ nslookup github.com
Server: 10.0.0.10
Address 1: 10.0.0.10
nslookup: can't resolve 'github.com'我检查并看到"kube-dns“(服务、pod、daemonset.extensions、daemonset.apps)似乎正在运行。
当我登录时(例如SSH)连接到ICP主节点和工作节点计算机,我就能够成功ping通这些外部站点。
对如何解决这个问题有什么建议吗?谢谢!
发布于 2018-06-21 15:10:01
我们遇到了相反的问题--我们可以在互联网或其他域上查找任何东西,但不能在其中部署集群的域中查找。
事实证明,这是关于cluster_domain和cluster_CA_domain在config.yaml中的含义的模糊文档。但作为补充,我们需要了解更多关于这些和配置kube-dns的信息。
基本上,kube- cluster_domain应该是集群的私有虚拟域,kube-dns对其具有权威性。它应该使用主机的resolve.conf名称服务器作为上游服务器。如果您怀疑您的DNS服务器没有用于公共DNS,那么您可以更新kube-dns configMap以指定它应该使用的上游服务器。
https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/
当然,这是假设您已经正确配置了cluster_domain和cluster_CA_domain。
它们应该看起来像这样
cluster_domain = mycluster.icp <----- could be "Mickey-mouse" for all it matters
cluster_CA_domain = icp.mycompany.com <----- the endpoint that portal/registry/api etc are accessible to users onhttps://stackoverflow.com/questions/50823719
复制相似问题