Используя Kubernetes, есть ли способ из других модулей получить значение ingress.spec.tls.hosts
без использования kubectl
(DNS, ENVVAR, OTHER) ?
Я знаю, что могу сделать:
# in other pod
dig +short my-app.default.svc.cluster.local
172.20.203.19
echo $MY_APP_SERVICE_HOST
172.20.203.19
echo $MY_APP_SERVICE_PORT
3000
Или:
# in other pod
dig +short SRV my-app.default.svc.cluster.local
0 100 3000 my-app.default.svc.cluster.local.
Но я действительно хочу подключиться к внешнему балансировщику нагрузки my-app
, который имеет входное определение:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: my-app-ingress
annotations:
kubernetes.io/ingress.class: "traefik"
kubernetes.io/tls-acme: "true"
spec:
tls:
- hosts:
- myapp.mydomain.com
rules:
- host: myapp.mydomain.com
http:
paths:
- path: /
backend:
serviceName: my-app
servicePort: http
Итак, я хочу динамически получать myapp.mydomain.com
из стручков.