Ich verwende eine Funktion in Nginx, die erfordert, einen Resolver anzugeben, sonst würde ich nur auf die resolve.conf
Host Resolver-Konfiguration von Kubernetes zur Verfügung gestellt. Ich frage mich, ob der Dienstname kube-dns.kube-system.svc.cluster.local
vom kubernetes-Projekt als für Backcompat-Zwecke stabil betrachtet wird, so dass ich darauf vertrauen kann, dass er nicht in Minor Releases verschwindet.Kubernetes DNS Service Name Stabilität
server {
listen 443 ssl;
server_name "~^(?<host_name>host-[0-9a-z]{7,10}).domain.tld$";
ssl_certificate /etc/ssl/certs/chained.crt;
ssl_certificate_key /etc/ssl/private/my.key;
# Use a variable here to force nginx to respect DNS ttl and reresolve
# See: https://tenzer.dk/nginx-with-dynamic-upstreams/
resolver kube-dns.kube-system.svc.cluster.local;
set $downstream_api http://hostapi.default.svc.cluster.local:3000;
location/{
proxy_pass $downstream_api;
}
}