nodelocaldns导致coredns hosts配置失效

2022-05-22  本文已影响0人  wwq2020

背景

同事部署的k8s 域名是在各个node上/etc/hosts中静态添加的,而不是在dns server上,手动在coredns中添加域名解析后发现pod中依然解析不了
因为部署了nodelocaldns(nodelocaldns不支持hosts插件),pod对于集群本身的域名解析会先访问nodelocaldns然后是coredns,但是对于非集群本身的会先访问nodelocaldns然后是/etc/resolve.conf中对应的nameserver(也就是不会经过coredns),所以直接在coredns中配置pod中是依然解析不了此域名

解决方案

第一种

部署dns server,在dns server中配置k8s域名指向相应的节点

第二种

修改nodelocaldns对应的configmap

image.png

修改之前是forward . /etc/resolv.conf

10.22.0.3改为coredns实际的clusterip

补充

coredns中添加自定义域名解析

.:53 {
        ...
        hosts {
          yourip yourdomain
          fallthrough
        }
  ...
}
上一篇 下一篇

猜你喜欢

热点阅读