Сборки изолированных образов для построителя образов виртуальных машин Azure

Изолированные сборки образов — это функция построителя образов виртуальных машин Azure (AIB). Он преобразует основной процесс настройки и проверки образа виртуальной машины из общей инфраструктуры платформы в выделенные ресурсы Экземпляры контейнеров Azure (ACI) в подписке, предоставляя вычислительные ресурсы и сетевую изоляцию.

Преимущества изолированных сборок образов

Изолированные сборки образов позволяют глубоко защищаться, ограничивая сетевой доступ виртуальной машины сборки только к вашей подписке. Изолированные сборки образов также обеспечивают большую прозрачность, позволяя проверять обработку, выполненную AIB для настройки или проверки образа виртуальной машины. Кроме того, изолированные сборки образов упрощают просмотр журналов динамической сборки. В частности:

  1. Изоляция вычислений. Изолированные сборки образов выполняют основную часть обработки сборки образов в ресурсах ACI в подписке вместо ресурсов общей платформы AIB. Служба "Экземпляры контейнеров Azure" позволяет изолировать гипервизор для каждой группы контейнеров, чтобы запускать контейнеры изолированно, без общего доступа к ядру.

  2. Сетевая изоляция: изолированные сборки образов удаляют все прямые сетевые подключения WinRM/ssh между виртуальной машиной сборки и внутренними компонентами службы AIB.

    • Если вы подготавливаете шаблон AIB без собственной подсети для виртуальной машины сборки, ресурс общедоступного IP-адреса больше не подготавливается в промежуточной группе ресурсов во время сборки образа.
    • Если вы подготавливаете шаблон AIB с существующей подсетью для сборки виртуальной машины, то канал связи на основе Приватный канал больше не настраивается между виртуальными машинами сборки и внутренними ресурсами платформы AIB. Вместо этого канал обмена данными настраивается между ACI и ресурсами виртуальной машины сборки, оба из которых находятся в промежуточной группе ресурсов в подписке.
    • Начиная с API версии 2024-02-01 можно указать вторую подсеть для развертывания ACI в дополнение к подсети для сборки виртуальной машины. Если этот параметр указан, AIB развертывает ACI в этой подсети и не требуется настраивать канал связи на основе Приватный канал между ACI и виртуальной машиной сборки. Дополнительные сведения о второй подсети см . здесь.
  3. Прозрачность: AIB основан на HashiCorp Packer. Изолированные сборки образов выполняют packer в ACI в подписке, что позволяет проверить ресурс ACI и его контейнеры. Аналогичным образом, наличие всего конвейера сетевого взаимодействия в подписке позволяет проверять все сетевые ресурсы, их параметры и их пособия.

  4. Лучшее просмотр динамических журналов: AIB записывает журналы настройки в учетную запись хранения в промежуточной группе ресурсов в подписке. Изолированные сборки образов предоставляют другой способ следовать тем же журналам непосредственно в портал Azure, что можно сделать, перейдя к контейнеру AIB в ресурсе ACI.

Сетевые топологии

Изолированные сборки образов развертывают ACI и виртуальную машину сборки как в промежуточной группе ресурсов в подписке. Чтобы AIB настроить или проверить образ, экземпляры контейнеров, работающие в ACI, должны иметь сетевой путь к виртуальной машине сборки. В зависимости от пользовательских сетевых потребностей и политик можно настроить AIB для использования различных топологий сети для этой цели:

Не создавайте собственную подсеть виртуальной машины сборки

  • Эту топологию можно выбрать, не указав vnetConfig поле в шаблоне изображения или указав поле subnetId без containerInstanceSubnetId подполя.
  • В этом случае AIB развертывает виртуальная сеть в промежуточной группе ресурсов вместе с двумя подсетями и группами безопасности сети (NSG). Одна из подсетей используется для развертывания ACI, а другая подсеть используется для развертывания виртуальной машины сборки. Группы безопасности сети настраиваются, чтобы разрешить обмен данными между двумя подсетями.
  • AIB не развертывает ресурс общедоступного IP-адреса или конвейер связи на основе приватного канала в данном случае.

Принести собственную подсеть виртуальной машины сборки, но не принести собственную подсеть ACI

  • Эту топологию можно выбрать, указав vnetConfig поле вместе с подфилдом subnetId , но не containerInstanceSubnetId подполем в шаблоне изображения.
  • В этом случае AIB развертывает временный виртуальная сеть в промежуточной группе ресурсов вместе с двумя подсетями и группами безопасности сети (NSG). Одна из подсетей используется для развертывания ACI, а другая подсеть используется для развертывания ресурса частной конечной точки. Виртуальная машина сборки развертывается в указанной подсети. Конвейер связи на основе приватного канала, состоящий из частной конечной точки, службы Приватный канал, Azure Load Balancer и виртуальной машины прокси-сервера, также развертывается в промежуточной группе ресурсов для упрощения взаимодействия между подсетью ACI и подсетью виртуальной машины сборки.

Создание подсети виртуальной машины сборки и создание собственной подсети ACI

  • Эту топологию можно выбрать, указав vnetConfig поле вместе с subnetIdcontainerInstanceSubnetId подполями в шаблоне изображения. Этот параметр (и подфилд containerInstanceSubnetId) доступен для запуска API версии 2024-02-01. Вы также можете обновить существующие шаблоны, чтобы использовать эту топологию.
  • В этом случае AIB развертывает виртуальную машину сборки в указанной подсети виртуальной машины сборки и ACI в указанной подсети ACI.
  • AIB не развертывает сетевые ресурсы в промежуточной группе ресурсов, включая общедоступный IP-адрес, виртуальная сеть, подсети, группы безопасности сети, частную конечную точку, Приватный канал службу, Azure Load Balancer и виртуальную машину прокси-сервера. Эту топологию можно использовать, если у вас есть ограничения квоты или политики, разрешающие развертывание этих ресурсов.
  • Подсеть ACI должна соответствовать определенным условиям, чтобы разрешить его использование с изолированными сборками образов.

Дополнительные сведения об этих полях см. в справочнике по шаблону. Параметры сети подробно рассматриваются здесь.

обратная совместимость

Изолированные сборки образов — это изменение уровня платформы и не влияет на интерфейсы AIB. Таким образом, существующие ресурсы шаблона изображения и триггера продолжают функционировать и не изменяются способ развертывания новых ресурсов этих типов. Вам нужно создать новые шаблоны или обновить существующие шаблоны, если вы хотите использовать сетевую топологию, позволяя принести собственную подсеть ACI.

Сборки образов автоматически переносятся в изолированные сборки образов, и вам не нужно предпринимать никаких действий. Кроме того, журналы настройки по-прежнему доступны в учетной записи хранения.

В зависимости от топологии сети, указанной в шаблоне изображения, в промежуточной группе ресурсов (например, ACI, виртуальная сеть, группа безопасности сети и частная конечная точка) могут временно отображаться несколько новых ресурсов (например, общедоступный IP-адрес). Как и ранее, эти временные ресурсы существуют только во время сборки и AIB удаляет их после этого.

Внимание

Убедитесь, что ваша подписка зарегистрирована для Microsoft.ContainerInstance provider:

  • Azure CLI: az provider register -n Microsoft.ContainerInstance
  • PowerShell: Register-AzResourceProvider -ProviderNamespace Microsoft.ContainerInstance

После успешной регистрации подписки убедитесь, что в подписке нет политик Azure, которые запрещают развертывание ресурсов ACI. Политики, разрешающие только ограниченный набор типов ресурсов, не включая ACI, приведет к сбою сборок изолированных образов.

Убедитесь, что подписка также имеет достаточную квоту ресурсов , необходимых для развертывания ресурсов ACI.

Внимание

В зависимости от топологии сети, указанной в шаблоне образа, AIB может потребоваться развернуть временные сетевые ресурсы в промежуточной группе ресурсов в подписке. Убедитесь, что политики Azure не запрещают развертывание таких ресурсов (виртуальная сеть с подсетями, группой безопасности сети, частной конечной точкой) в группе ресурсов.

Если у вас есть политики Azure, применяющие планы защиты от атак DDoS к любой созданной виртуальная сеть, расслабьте политику для группы ресурсов или убедитесь, что у управляемого удостоверения шаблона есть разрешения на присоединение к плану. Кроме того, можно использовать топологию сети, которая не требует развертывания нового виртуальная сеть от AIB.

Внимание

Убедитесь, что вы следуйте всем рекомендациям при использовании AIB.

Примечание.

AIB находится в процессе развертывания этого изменения во всех расположениях и клиентах. Некоторые из этих сведений (особенно вокруг развертывания новых сетевых ресурсов) могут измениться, так как процесс настраивается на основе телеметрии служб и обратной связи. Сведения об ошибках см. в руководстве по устранению неполадок.

Следующие шаги