Cloudflare External DNS и CNAME против записей A
Я пытаюсь настроить инструмент Kubernetes для автоматической настройки внешнего DNS Cloudflare.
Возможны два варианта конфигурации:
external-dns.alpha.kubernetes.io/hostname: nginx.hostname.net
external-dns.alpha.kubernetes.io/target: nginx.hostname.net
Заполнение target
приводит к созданию записей CNAME, оставление его пустым ведет к созданию записей A. У меня был плохой опыт работы с такими сообщениями, какDNS_PROBE_FINISHED_NXDOMAIN
а также server IP address could not be found
при использовании CNAME, поэтому я хочу использовать записи A.
Однако, когда это не учитывается, инструмент генерирует запись A с nginx-ingress, однако этот IP-адрес недоступен из внешнего мира, и правильный IP-адрес - это IP-адрес LoadBalancer, который стоит перед nginx-ingress.
Одно из решений - вручную записать IP-адрес LoadBalancer в target
поле, однако не очень хорошо писать его вручную.
Так что я делаю не так? Как заставить инструмент использовать IP LoadBalancer вместо Ingress?
1 ответ
На самом деле исходная проблема была вызвана:
https://github.com/kubernetes-sigs/external-dns/issues/992
Обновление external-dns помогло, и теперь я могу правильно использовать метод CNAME:
external-dns.alpha.kubernetes.io/target: nginx.hostname.net