Как добавить кастомную DNS-зону в CoreDNS (Kubernetes)

Зачем добавлять кастомную зону? Это может пригодиться для: Внутреннего тестирования (*.local, *.internal) Разрешения внешних сервисов внутри кластера Переопределения DNS Пошаговая инструкция 1. Редактируем ConfigMap CoreDNS kubectl -n kube-system edit configmap coredns Добавляем зону: apiVersion: v1 kind: ConfigMap metadata: name: coredns namespace: kube-system data: Corefile: | .:53 { errors health kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure fallthrough in-addr.arpa ip6.arpa } forward . /etc/resolv.conf cache 30 loop reload loadbalance } internal.test:53 { hosts { 10.10.10.10 service1.internal.test 10.10.10.11 service2.internal.test fallthrough } } 2. Перезапускаем CoreDNS kubectl -n kube-system rollout restart deployment coredns 3. Проверка Внутри любого пода: ...

июля 19, 2025 · 1 минута · 160 слов · John Cena

Как добавить кастомную DNS-зону в NodeLocal DNSCache

Зачем использовать кастомные зоны в NodeLocal DNSCache? NodeLocal DNSCache ускоряет DNS в Kubernetes за счёт локального CoreDNS на каждом узле. Пользовательские зоны позволяют: Быстро резолвить внутренние или статические имена Заменить внешние DNS-запросы локальными Разделить внутренние и внешние зоны Пошаговая инструкция 1. Получаем ConfigMap kubectl -n kube-system get configmap node-local-dns -o yaml > node-local-dns.yaml 2. Добавляем зону в Corefile В секции Corefile добавьте зону: Corefile: | .:53 { errors cache { success 9984 30 denial 9984 5 } reload loop bind 169.254.20.10 forward . /etc/resolv.conf prometheus :9253 log } internal.zone.local:53 { hosts { 10.10.10.10 service1.internal.zone.local 10.10.10.11 service2.internal.zone.local fallthrough } } Замените internal.zone.local на нужную вам зону. ...

июля 19, 2025 · 1 минута · 1 слово · John Cena