Partage via


Réduire le temps d’extraction d’images avec la diffusion en continu d’artefacts sur AKS (préversion)

Les charges de travail liées au calcul haute performance incluent souvent des images volumineuses, ce qui peut entraîner des temps d’extraction d’images longs et ralentir les déploiements de charge de travail. La diffusion en continu d’artefacts sur AKS vous permet de diffuser en continu des images conteneur depuis Azure Container Registry (ACR) vers AKS. AKS extrait uniquement les couches nécessaires pour le démarrage initial du pod, ce qui réduit le temps requis pour extraire des images et déployer vos charges de travail.

La diffusion en continu d’artefacts peut réduire le temps de préparation des pods de plus de 15 %, en fonction de la taille de l’image, et fonctionne de manière optimale pour les images de <30 Go. Selon nos tests, nous avons observé des temps réduits de minutes en secondes lors du démarrage de pods avec des images de <10 Go. Si vous avez un pod qui requiert l’accès à un fichier volumineux (>30 Go), vous devez le monter en tant que volume au lieu de le générer en tant que couche. Cela est dû au fait que si votre pod exige le démarrage de ce fichier, il encombre le nœud. Le diffusion en continu d’artefacts n’est pas idéale pour lire des images lourdes à partir de votre système de fichiers si vous en avez besoin au démarrage. Avec la diffusion en continu d’artefacts, le démarrage des pods devient simultané, alors que sans celui-ci, les pods démarrent en série.

Cet article explique comment activer la fonctionnalité de diffusion en continu d’artefacts sur vos pools de nœuds AKS pour diffuser des artefacts à partir d’ACR.

Important

Les fonctionnalités d’évaluation AKS sont disponibles en libre-service et font l’objet d’un abonnement. Les préversions sont fournies « en l’état » et « en fonction des disponibilités », et sont exclues des contrats de niveau de service et de la garantie limitée. Les préversions AKS sont, dans la mesure du possible, partiellement couvertes par le service clientèle. Telles quelles, ces fonctionnalités ne sont pas destinées à une utilisation en production. Pour plus d’informations, consultez les articles de support suivants :

Prérequis

Remarque

La diffusion en continu d’artefacts est prise en charge uniquement sur les pools de nœuds Ubuntu 22.04, Ubuntu 20.04 et Azure Linux. Les pools de nœuds Windows ne sont pas pris en charge.

Installez l’extension CLI aks-preview

  1. Installez l’extension CLI aks-preview à l’aide de la commande az extension add.

    az extension add --name aks-preview
    
  2. Mettez à jour l’extension pour vous assurer que la dernière version est installée à l’aide de la commande az extension update.

    az extension update --name aks-preview
    

Inscrire l’indicateur de fonctionnalité ArtifactStreamingPreview dans votre abonnement

  • Inscrivez l’indicateur de fonctionnalité ArtifactStreamingPreview dans votre abonnement à l’aide de la commande az feature register.

    az feature register --namespace Microsoft.ContainerService --name ArtifactStreamingPreview
    

Activer la diffusion en continu d’artefacts sur ACR

L’activation sur ACR est un prérequis pour la;diffusion en continu d’artefacts sur AKS. Pour plus d’informations, consultez diffusion en continu d’artefacts sur ACR.

  1. Créez un groupe de ressources Azure pour contenir votre instance ACR à l’aide de la commande az group create.

    az group create --name myStreamingTest --location westus
    
  2. Créez une référence SKU Premium Azure Container Registry à l’aide de la commande az acr create avec l’indicateur --sku Premium.

    az acr create --resource-group myStreamingTest --name mystreamingtest --sku Premium
    
  3. Configurez l’instance ACR par défaut pour votre abonnement à l’aide de la commande az configure.

    az configure --defaults acr="mystreamingtest"
    
  4. Envoyez ou importez une image dans le registre de conteneurs à l’aide de la commande az acr import.

    az acr import --source docker.io/jupyter/all-spark-notebook:latest --repository jupyter/all-spark-notebook:latest
    
  5. Créez une diffusion en continu d’artefacts à partir de l’image avec la commande az acr artifact-streaming create.

    az acr artifact-streaming create --image jupyter/all-spark-notebook:latest
    
  6. Vérifiez la diffusion en continu générée à l’aide de la commande az acr manifest list-referrers.

    az acr manifest list-referrers --name jupyter/all-spark-notebook:latest
    

Activer la diffusion en continu d’artefacts sur AKS

Activer la diffusion en continu d’artefacts sur un nouveau pool de nœuds

  • Créez un nouveau pool de nœuds avec la diffusion en continu d’artefacts activée à l’aide de la commande az aks nodepool add avec --enable-artifact-streaming.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myNodePool \
        --enable-artifact-streaming
    

Activer la diffusion en continu d’artefacts sur un nouveau pool de nœuds

  • Mettez à jour un pool de nœuds existant pour activer la diffusion en continu d’artefacts à l’aide de la commande az aks nodepool update avec l’argument --enable-artifact-streaming.

    az aks nodepool update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myNodePool \
        --enable-artifact-streaming
    

Vérifier si la diffusion en continu d’artefacts est activée

Maintenant que la diffusion en continu d’artefacts est activée sur un ACR Premium et que celui-ci est connecté à un pool de nœuds AKS, tous les nouveaux déploiements de pods sur ce cluster avec une image extraite de l’ACR verront des réductions dans les temps d’extraction d’images.

  • Vérifiez si la diffusion en continu d’artefacts est activée à l’aide de la commande az aks nodepool show.

    az aks nodepool show --resource-group myResourceGroup --cluster-name myAKSCluster --name myNodePool --query artifactStreamingProfile
    

    À la sortie, vérifiez que le champ Enabled est défini sur true.

Étapes suivantes

Cet article montre comment activer la diffusion en continu d’artefacts sur vos pools de nœuds AKS pour diffuser des artefacts à partir d’ACR et réduire le temps d’extraction d’images. Pour en savoir plus sur l’utilisation d’images conteneur dans AKS, consultez les meilleures pratiques pour la gestion et la sécurité des images conteneur dans AKS.