Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Высокопроизводительные вычислительные рабочие нагрузки часто включают большие образы, что может привести к длительному времени извлечения изображений и замедлению развертывания рабочей нагрузки. Потоковая передача артефактов в AKS позволяет передавать образы контейнеров из Реестр контейнеров Azure (ACR) в AKS. AKS извлекает только необходимые слои для начального запуска pod, уменьшая время, необходимое для извлечения образов и развертывания рабочих нагрузок.
Потоковая передача артефактов может сократить время до готовности pod к более чем 15%, в зависимости от размера изображения, и лучше всего подходит для изображений <30 ГБ. На основе нашего тестирования мы видели сокращение времени их запуска от минут до секунд для изображений размером <10 ГБ. Если у вас есть модуль pod, которому требуется доступ к большому файлу (>30 ГБ), необходимо подключить его в виде тома, а не создавать его как слой. Это связано с тем, что если вашему pod требуется этот файл для запуска, он перегружает узел. Потоковая передача артефактов не идеально подходит для чтения тяжелых изображений из файловой системы, если это необходимо при запуске. При потоковой передаче артефактов запуск подов становится параллельным, тогда как без неё поды запускаются последовательно.
В этой статье описывается, как включить функцию потоковой передачи артефактов в пулах узлов AKS для потоковой передачи артефактов из ACR.
Внимание
Предварительные функции AKS доступны на условиях самообслуживания и добровольной регистрации. Предварительные версии предоставляются "как есть" и "при наличии". На них не распространяются соглашения об уровне обслуживания и ограниченная гарантия. Предварительные версии AKS предоставляются с частичной клиентской поддержкой по мере возможности. Следовательно, эти функции не предназначены для использования в рабочей среде. Дополнительные сведения доступны в следующих статьях поддержки.
Внимание
Начиная с 30 ноября 2025 г. служба Azure Kubernetes (AKS) больше не поддерживает или предоставляет обновления безопасности для Azure Linux 2.0. Образ узла Linux 2.0 Azure заморожен в выпуске 202512.06.0. Начиная с 31 марта 2026 г. образы узлов будут удалены, и вы не сможете масштабировать пулы узлов. Выполните миграцию в поддерживаемую версию Linux Azure, обновив пулы узлов до поддерживаемой версии Kubernetes или переключив ее на osSku AzureLinux3. Дополнительные сведения см. в вопросе о прекращении поддержки на GitHub и объявлении об устаревании обновлений Azure. Чтобы оставаться в курсе объявлений и обновлений, следуйте заметкам о выпуске AKS.
Внимание
Начиная с 15 июля 2025 г. служба Azure Kubernetes (AKS) больше не поддерживает телепорт (предварительная версия) в AKS. После этой даты пулы узлов AKS с включенным Teleport могут столкнуться с нарушениями и сбоями при подготовке узлов. Реестр контейнеров Azure удалил API Телепорт, что означает, что все узлы с включенным Телепорт будут извлекать образы из реестра контейнеров Azure так же, как и любой другой узел AKS без Телепорта. Переходите на стриминг артефактов (предварительная версия) или обновите пулы узлов, чтобы задать --aks-custom-headers EnableACRTeleport=false. Для получения дополнительной информации об этом снятии с поддержки, см. соответствующую проблему на GitHub. Чтобы оставаться в курсе объявлений и обновлений, следуйте заметкам о выпуске AKS.
Ограничения
- Артефакт Steaming не поддерживается для следующих опций ОС: версии Windows Server, Flatcar Container Linux для AKS и Azure Linux с OS Guard для AKS.
Предварительные условия
- Вам нужен существующий кластер AKS с интеграцией ACR. Если у вас его нет, его можно создать с помощью проверки подлинности с помощью ACR из AKS.
- Включите потоковую передачу артефактов в ACR.
- Для этой функции требуется Kubernetes версии 1.25 или более поздней. Сведения о проверке версии кластера AKS см. в разделе "Проверка доступных обновлений кластера AKS".
Примечание.
Потоковая трансляция артефактов поддерживается только на Ubuntu 22.04, Ubuntu 20.04 и в пулах узлов Azure Linux. Пулы узлов Windows не поддерживаются.
aks-preview Установка расширения CLI
aks-previewУстановите расширение CLI с помощьюaz extension addкоманды.az extension add --name aks-previewОбновите расширение, чтобы убедиться, что установлена последняя версия с помощью
az extension updateкоманды.az extension update --name aks-preview
Зарегистрируйте флаг функции ArtifactStreamingPreview в вашей подписке
Зарегистрируйте флаг функции в вашей подписке с помощью команды
ArtifactStreamingPreview.az feature register --namespace Microsoft.ContainerService --name ArtifactStreamingPreview
Включение потоковой передачи артефактов в ACR
Настройка на ACR является обязательным условием для потоковой передачи артефактов в AKS. Дополнительные сведения см. в статье "Потоковая передача артефактов" в ACR.
Создайте группу ресурсов Azure с помощью команды
az group create, чтобы содержать экземпляр ACR.az group create --name myStreamingTest --location westusСоздайте новый номер SKU уровня "Премиум" Реестр контейнеров Azure с помощью
az acr createкоманды с флагом--sku Premium.az acr create --resource-group myStreamingTest --name mystreamingtest --sku PremiumНастройте экземпляр ACR по умолчанию для подписки, используя команду
az configure.az configure --defaults acr="mystreamingtest"Отправьте или импортируйте образ в реестр с помощью
az acr importкоманды.az acr import --source docker.io/jupyter/all-spark-notebook:latest --repository jupyter/all-spark-notebook:latestСоздайте артефакт потоковой передачи из образа с помощью команды
az acr artifact-streaming create.az acr artifact-streaming create --image jupyter/all-spark-notebook:latestПроверьте созданную потоковую передачу артефактов с помощью
az acr manifest list-referrersкоманды.az acr manifest list-referrers --name jupyter/all-spark-notebook:latest
Включение потоковой передачи артефактов в AKS
Включение потоковой передачи артефактов в новом пуле узлов
Создайте новый пул узлов с поддержкой потоковой передачи артефактов, используя команду
az aks nodepool addс--enable-artifact-streaming.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name myNodePool \ --enable-artifact-streaming
Включение потоковой передачи артефактов в существующем пуле узлов
Обновите существующий пул узлов, чтобы включить потоковую передачу артефактов с помощью команды
az aks nodepool updateи--enable-artifact-streaming.az aks nodepool update \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name myNodePool \ --enable-artifact-streaming
Проверьте, включена ли потоковая передача артефактов
Теперь, когда вы включили потоковую передачу артефактов в ACR уровня "Премиум" и подключили её к пулу узлов AKS с включённой потоковой передачей артефактов, все новые развертывания pods в этом кластере, использующие вытягивание изображения из ACR с включенной потоковой передачей артефактов, будут сокращать время извлечения изображения.
Проверьте, включена ли функция потоковой передачи артефактов в пуле узлов, с помощью команды
az aks nodepool show.az aks nodepool show --resource-group myResourceGroup --cluster-name myAKSCluster --name myNodePool --query artifactStreamingProfileВ выходных данных убедитесь, что поле
Enabledустановлено наtrue.
Следующие шаги
В этой статье описано, как включить потоковую передачу артефактов в пулах узлов AKS для потоковой передачи артефактов из ACR и уменьшения времени извлечения изображения. Дополнительные сведения о работе с образами контейнеров в AKS см. в рекомендациях по управлению образами контейнеров и безопасности в AKS.