Заставьте ответы coredns зависеть от клиентских пространств в кластере k8s - PullRequest
0 голосов
/ 05 июля 2018

Как заставить cornns отвечать разными 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)

1 Ответ

0 голосов
/ 06 июля 2018

CoreDNS в установке по умолчанию не может обслуживать разные зоны в зависимости от происхождения пространств имен, из которых поступает запрос. Для достижения разных ответов, предоставляемых CoreDNS для разных входящих запросов на основе в пространстве имен вам нужно создать отдельные экземпляры CoreDNS для отдельных пространств имен. Вторая проблема заключается в необходимости CoreDNS для кэширования ответов. Достигать это для разных запросов, требуется иметь отдельные кэши.

Хорошая новость - CoreDNS предоставляет интерфейс для плагинов , так что вы можете написать плагины для своих цели своими собственными.

...