部署一个nginx的dns解析异常

  • Choerodon平台版本:0.6.0

  • 运行环境:自主搭建

  • 问题描述:

    请尽量详细的描述您遇到的问题,以便我们能更快速的提供解决办法。

    部署一个ngnix的时候 dns解析异常。
    我查了所有的pod,dns server都svc地址。内部解析都正常,但是使用了gitlad的ci功能后,pod中dns默认为1114.114.114.114

  • 执行的操作:
    参考官方文档部署一个nginx代码一样。

  • 报错信息(请尽量使用代码块或系统截图的形式展现):

  • 建议:

    提出您认为不合理的地方,帮助我们优化用户操作

我们的runner使用的主机的DNS, 你需要将主机的 DNS server修改为你自己的DNS server ,cat /etc/resolv.conf (ps:是否能直接修改此文件,请咨询您的云服务商)

options timeout:2 attempts:3 rotate single-request-reopen
; generated by /usr/sbin/dhclient-script
nameserver 10.30.141.250
#nameserver 100.100.2.136
#nameserver 100.100.2.138

所有node节点的dns server就是其中master节点,域名也可以正常解析的
[root@node1 ~]# for i in cat k8s.list| awk '{print $1}';do echo “#######$i#########”;cat /etc/resolv.conf;done
#######10.201.143.51#########
nameserver 10.201.143.51
nameserver 10.201.143.150
#######10.201.143.52#########
nameserver 10.201.143.51
nameserver 10.201.143.150
#######10.201.143.53#########
nameserver 10.201.143.51
nameserver 10.201.143.150
#######10.201.143.54#########
nameserver 10.201.143.51
nameserver 10.201.143.150
#######10.201.143.55#########
nameserver 10.201.143.51
nameserver 10.201.143.150

我刚刚也捕获到了runner的dnserver,确实是kube-dns的svc地址,但是为什么报错还显示114.114.114.114?
这个dns到底是从哪里继承来的?node节点还是docker本身了?

你可以在一台节点上 docker run 一个容器 ,然后 ping一下这个gitlab的域名

这样解析是对的

你的runner在那个主机上运行的, 你重新执行下 ci, 然后看下 新建的pod在哪个主机