我正在尝试从一个节点(不是pod)访问Kubernetes内部DNS服务器。
pods间通信一切正常,但现在我有一个用例,我需要一个非docker/k8s应用程序来访问kubernetes中的服务。
因为我的应用不使用k8s内部域名,所以我不能使用服务名来访问它。有没有办法告诉我的节点使用Kubernetes dns?
发布于 2016-11-16 20:14:01
Kubernetes使用skyDNS和Kube2sky作为DNS服务器。Kube2sky维护与k8s相关的DNS记录,例如服务名称,而skyDNS从ETCD读取这些记录。因此您可以将k8s域名服务器和搜索域添加到系统DNS配置中。例如,您的k8s域名服务器是10.16.42.197,搜索域是domeos.sohu,而您的应用运行的是Centos 7,那么您需要在/etc/resolv.conf文件中添加nameserver 10.16.42.197
和search default.svc.domeos.sohu svc.domeos.sohu domeos.sohu
。
https://stackoverflow.com/questions/40616548
复制相似问题