Можно ли настроить AKS для работы с частной зоной DNS Azure?

Я портирую в Azure приложение, которое изначально было разработано для предприятия Amazon Fargate. Особенностью Fargate является возможность создавать частную зону DNS и автоматически регистрировать создаваемые им имена служб в этой зоне. Это позволяет любой службе Fargate, а также другим виртуальным машинам в том же VPC / подсети иметь возможность ссылаться на службы по имени, используя service-name.zone-name.

Это особенно полезно для виртуальных машин, которые мы запускаем в нашем продукте, поскольку они могут выполнять REST-вызовы к микросервисам, работающим в Fargate, напрямую по своим автоматически сгенерированным частным именам DNS.

Мы используем AKS в нашей реализации Azure, и я обнаружил, что kubernetes предоставляет аналогичный механизм для контейнеров, которыми он управляет, создавая записи формы service-name.namespace, которые сопоставляются с IP-адресом кластера служб. Это отлично работает в сети kubernetes, но любые виртуальные машины, которые мы запускаем в той же виртуальной сети, не знают об этих псевдонимах службы AKS.

Итак, у меня такой вопрос: есть ли способ использовать частный DNS-объект Azure и связать его с AKS, чтобы виртуальные машины, находящиеся в одной виртуальной сети, также могли ссылаться на службы Kubernetes по имени, а не по IP-адресу?


person user3280383    schedule 13.11.2018    source источник


Ответы (1)


вы можете использовать external-dns для этого. Хитрость заключается в том, чтобы использовать диаграмму штурвала, доступную здесь, и добавить publishInternalServices=true к вашим ценностям. Yaml. Таким образом службы ClusterIP будут добавлены во внутреннюю зону Azure DNS.

person Alessandro Vozza    schedule 15.11.2018
comment
Я попробую. Спасибо за инициативу. - person user3280383; 15.11.2018
comment
Было бы здорово, если бы вы могли проголосовать за мой ответ, если он приведет к некоторым улучшениям. Я создаю репутацию переполнения стека :) спасибо - person Alessandro Vozza; 15.11.2018
comment
Если это приведет меня к решению, я обязательно дам вам голос. У меня был только шанс быстро прочитать это, и меня больше всего беспокоит то, что здесь говорится об использовании внешнего DNS. Я не хочу раскрывать общедоступные имена для своих служб, а скорее использую частную зону DNS и генерирую имена, которые видны только в моей виртуальной сети, где находятся мои виртуальные машины и кластер. - person user3280383; 16.11.2018
comment
использовать входящие и внешние DNS-наблюдатели, которые должны нормально работать с частной зоной DNS (расширенный сетевой тип кластера AKS в предварительно созданной виртуальной сети) - person nik.shornikov; 01.02.2019
comment
Для тех, кто ищет эту функцию с частными зонами DNS, существует открытая проблема на внешних -dns. В настоящее время он не поддерживается, только общедоступные зоны Azure. - person tomcooperca; 03.09.2019