Я использую функцию в nginx, которая требует указания распознавателя, иначе я бы просто полагался на конфигурацию принимающего решения resolve.conf
, предоставленную kubernetes.Kubernetes DNS Service Name Стабильность
Что мне интересно, если сервисное имя kube-dns.kube-system.svc.cluster.local
будет считаться проектом kubernetes стабильным для целей backcompat, так что я могу полагаться на него, чтобы не исчезать в младших выпусках.
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;
}
}