Как подключиться из контейнера в экземплярах контейнера Azure к внутреннему IP-адресу виртуальной машины в Azure
Я пытаюсь работать с экземплярами контейнера Azure. Я успешно развернул контейнер, но мне не удается заставить его взаимодействовать с внутренним IP-адресом экземпляра, который я развернул в Azure. Контейнер получает внутренний IP-адрес (в качестве переменной среды) и пытается подключиться. В логах видно, что не удается открыть соединение. Сетевая политика (на целевой ВМ и Подсети) разрешает подключение к этому порту.
Как я могу устранить это? В какой подсети развернут контейнер, размещенный на ACI? Я создал его без публичного IP-адреса (так как для этого нужно только подключиться к внутренним сервисам).
L
3 ответа
Похоже, теперь Azure его поддерживает .
Виртуальная сеть Azure обеспечивает безопасную частную сеть для ваших ресурсов Azure и локальных ресурсов. Развернув группы контейнеров в виртуальной сети Azure, ваши контейнеры могут безопасно взаимодействовать с другими ресурсами в виртуальной сети.
Например:
az container create \
--name appcontainer \
--resource-group myResourceGroup \
--image mcr.microsoft.com/azuredocs/aci-helloworld \
--vnet aci-vnet \
--vnet-address-prefix 10.0.0.0/16 \
--subnet aci-subnet \
--subnet-address-prefix 10.0.0.0/24
Экземпляры контейнера Azure не могут (на момент написания) подключаться к Vnet (и всему, что в нем) внутри. Ваш единственный вариант - внешнее соединение.
По состоянию на 1/1/18 ACI еще не поддерживает виртуальные сети, однако это находится на вершине нашего отставания, поскольку мы осознаем необходимость размещения экземпляров в виртуальной сети. Мы активно работаем над этим, и это скоро произойдет.