Я нашел решение сам.
Существует два способа достижения желаемого разрешения имени:
- Если ваш кластер AKS находится в Azure VNET, вы можете установить настройки DNS в VNET для настраиваемого DNS-сервера, который может разрешить ваш настраиваемый домен. Если ваши стручки не имеют указанных настроек DNS, то разрешение будет работать следующим образом:
Сначала модули пытаются разрешить запрос DNS в CoreDNS, если они не могут, тогда они принимают настройки DNS хоста и запрашивают DNS-сервер, настроенный на хосте. Поскольку в Azure настройки DNS VNET применяются к виртуальным машинам, он запрашивает правильный DNS-сервер.
- Измените настройки coreDNS в вашем кластере AKS следующим json:
apiVersion: v1
kind: ConfigMap
metadata:
name: coredns-custom
namespace: kube-system
data:
yourdns.server: |
yourdns.com:53 {
errors
cache 1
proxy . 10.1.0.40
}
Важно знать, что в AKS вы не можете перезаписать cornns ConfigMap. Мастер Kubernetes всегда сбрасывает его на значение по умолчанию через пару секунд. Если вы хотите отредактировать ConfigMap в AKS, вам нужно назвать configmap «coredns-custom».
"yourdns.server" на самом деле не сервер. Это «домен.сервер». IP-адрес DNS-сервера находится за настройкой прокси.