Как добавить кастомную 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

Как работает CoreDNS простыми словами

CoreDNS — один из тех компонентов Kubernetes, о которых редко вспоминают… до тех пор, пока не перестаёт работать DNS. А потом — всё ломается. Разберём, что это такое и как работает — на простом языке. Что такое CoreDNS? CoreDNS — это дефолтный DNS-сервер Kubernetes. Он позволяет подам находить друг друга по имени, например my-service.default.svc.cluster.local. Это не просто DNS-сервер. Он модульный, расширяемый и отлично подходит для облачных систем. Зачем нужен DNS в Kubernetes? В кластере всё постоянно меняется: ...

июля 19, 2025 · 2 минуты · 249 слов · John Cena

Что такое NodeLocalDNS и как он работает

Что такое NodeLocalDNS? NodeLocalDNS — это дополнительный компонент в Kubernetes, который ускоряет и стабилизирует работу DNS, запуская локальный кэширующий DNS-сервер на каждой ноде. Вместо того чтобы каждая DNS-запрос шёл по сети к kube-dns или CoreDNS, он обрабатывается локально на ноде. Это снижает задержки и уменьшает нагрузку на общий DNS сервис кластера. Зачем использовать NodeLocalDNS? ⚡ Быстрее разрешение DNS — ответы кэшируются локально. 🔻 Меньше нагрузки на CoreDNS/kube-dns. 🛡 Более стабильная работа — при сбоях центрального DNS кэш продолжит работать. Как работает NodeLocalDNS Простой порядок действий: ...

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