2016-11-15 124 views
0

我試圖從一個節點(不是一個pod)訪問Kubernetes內部DNS服務器。節點中訪問Kubernetes DNS服務器

一切工作都適用於inter pod通信,但現在我有一個用例,我需要一個非docker/k8s應用程序來訪問kubernetes中的服務。

由於我的應用程序不使用k8s內部DNS,因此我無法使用服務名稱來訪問它。 有沒有辦法告訴我的節點使用Kubernetes dns?

回答

0

Kubernetes使用skyDNSKube2sky的DNS服務器。 Kube2sky維護與服務名稱相關的k8s相關DNS記錄,而skyDNS從ETCD中讀取這些記錄。因此,您可以將k8s DNS名稱服務器和搜索域添加到系統DNS配置中。例如,您的k8s DNS服務器是10.16.42.197,搜索域是domeos.sohu,並且您的應用程序在Centos 7中運行。因此,您需要將nameserver 10.16.42.197search default.svc.domeos.sohu svc.domeos.sohu domeos.sohu添加到/etc/resolv.conf文件中。

+0

問題是由Kubernetes給出的IP不能從我的主機路由 –