#azure #kubernetes #azure-aks
#azure #kubernetes #azure-aks
Вопрос:
Кластер AKS с несколькими пулами узлов Linux и Windows. Клиент Kafka: Confluent.Kafka 1.4.4
Пытаюсь разрешить службу kafka с именем «tt-kafka-kafka-bootstrap.shared».
Из с в модуле Windows — НЕ УДАЕТСЯ РАЗРЕШИТЬ:
kubectl exec -it test-print-7f6b64dc4f-4z7lt --namespace test -- nslookup tt-kafka-kafka-bootstrap.shared
Server: kube-dns.kube-system.svc.cluster.local
Address: 10.0.0.10
*** kube-dns.kube-system.svc.cluster.local can't find tt-kafka-kafka-bootstrap.shared: Non-existent domain
НО ЕСЛИ Я УКАЖУ АДРЕС СЛУЖБЫ С ПОМОЩЬЮ svc.cluster.local , ОН РАЗРЕШИТСЯ:
kubectl exec -it test-print-7f6b64dc4f-4z7lt --namespace test -- nslookup tt-kafka-kafka-bootstrap.shared.svc.cluster.local
Server: kube-dns.kube-system.svc.cluster.local
Address: 10.0.0.10
Name: tt-kafka-kafka-bootstrap.shared.svc.cluster.local
Address: 10.0.192.149
ИЗ С в LINUX POD — РАЗРЕШАЕТ НОРМАЛЬНО:
root@test-worker-t1-0:/app# nslookup tt-kafka-kafka-bootstrap.shared
Server: 10.0.0.10
Address: 10.0.0.10#53
Name: tt-kafka-kafka-bootstrap.shared.svc.cluster.local
Address: 10.0.192.149
Комментарии:
1. Для его разрешения в контейнерах Windows в kubernetes необходимо использовать полное доменное имя (service-name.namespace.svc.cluster.local). Если вы хотите получить доступ к службе в том же пространстве имен, использование «service-name» будет разрешено просто отлично.
Ответ №1:
Оказывается, Windows не может разрешить пробелы имен с помощью в kubernetes.
Пожалуйста, обратитесь к следующей документации K8 для получения дополнительной информации о контейнерах Windows в Kubernetes: https://kubernetes.io/docs/setup/production-environment/windows/intro-windows-in-kubernetes/#dns-limitations