首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >名称不解析在库伯内特斯与码头

名称不解析在库伯内特斯与码头
EN

Stack Overflow用户
提问于 2018-07-02 14:12:29
回答 2查看 3.4K关注 0票数 1

当我在我的码头容器上运行nslookup时,我会得到这个错误

代码语言:javascript
复制
 nslookup  10.0.96.xx
 nslookup: can't resolve '(null)': Name does not resolve

 Name:      10.0.96.xx
 Address 1: 10.0.96.xx

我读到这个问题来自码头,它在resolv.conf上注入了这个

代码语言:javascript
复制
nameserver 10.109.0.xx
nameserver 10.96.0.xx
search devlan.xxx.corp poc.svc.cluster.local svc.cluster.local cluster.local
options ndots:2 edns0

对于kubernetes,我试图在我的PodConfFile.yaml上用以下参数覆盖它。

代码语言:javascript
复制
spec:
  dnsPolicy: "None"
#  dnsPolicy: ClusterFirst
  dnsConfig:
   nameservers:
     - 10.109.0.xx
     - 10.96.0.xx
   searches:
     - devlan.xxx.corp
     - poc.svc.cluster.local
     - svc.cluster.local
     - cluster.local
   options:
     - name: ndots
       value: "2"
     - name: edns0

你有什么建议来解决这个问题吗?

  • 码头版本:18.03.1-行政长官
  • go1.9.3
EN

回答 2

Stack Overflow用户

发布于 2018-07-02 15:24:49

我找到了解决这个问题的办法。在你的脚上移除这个帕姆

名称服务器选项搜索

再加上一个

代码语言:javascript
复制
spec:
  dnsPolicy: Default

它将直接继承DNS配置。

您将能够平平外部服务。

票数 3
EN

Stack Overflow用户

发布于 2018-07-03 12:14:25

否则我找到了另一个更干净的解决方案

您的/etc/resolv.conf中是否有@IP 10.0.96.XX

代码语言:javascript
复制
nslookup  10.0.96.xx
 nslookup: can't resolve '(null)': Name does not resolve

要解决这个问题:

代码语言:javascript
复制
vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf  

用您的IP更改@IP地址

代码语言:javascript
复制
Environment="KUBELET_DNS_ARGS=--cluster-dns=YOUR-IP-DNS --cluster-domain=cluster.local"

重新启动kublet

代码语言:javascript
复制
systemctl restart kubelet.service

我希望这会对你有所帮助;)

您可以从Pod.yaml中删除

DnsPolicy

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51138175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档