使coredns响应依赖于k8s集群中的客户端名称空间

使coredns响应依赖于k8s集群中的客户端名称空间,dns,kubernetes,coredns,Dns,Kubernetes,Coredns,如何使coredns使用不同的IP地址响应k8s集群中不同名称空间的同一域查询 我希望它的行为如下: namespace A (inside k8s cluster): domain “abc.foo.bar” query —— coredns1---—> response 192.168.0.100 (outside k8s cluster) namespace B (inside k8s cluster): domain “abc.foo.bar” query —— coredn

如何使coredns使用不同的IP地址响应k8s集群中不同名称空间的同一域查询

我希望它的行为如下:

namespace A (inside k8s cluster):
domain “abc.foo.bar” query  —— coredns1---—> response 192.168.0.100 (outside k8s cluster)

namespace B (inside k8s cluster):
domain “abc.foo.bar” query  —— coredns1---—> response 192.168.0.101 (outside k8s cluster)

namespace C (inside k8s cluster):
domain “abc.foo.bar” query  —— coredns1---—> response 192.168.0.102 (outside k8s cluster)
在默认安装中,根据查询来自的名称空间的来源,无法为不同的区域提供服务。 以实现CoreDNS针对不同传入查询提供的不同答案 在命名空间上,您需要为各个命名空间创建单独的CoreDNS实例。 第二个问题是CoreDNS需要缓存答案。达到 对于不同的查询,它需要有单独的缓存

好消息是-CoreDNS为提供了一个接口,因此您可以为您的应用程序编写插件 你自己的目的