Dela via


Minska avbildningens pull-tid med artefaktströmning i Azure Kubernetes Service (AKS) (förhandsversion)

Beräkningsarbetsbelastningar med höga prestanda omfattar ofta stora avbildningar, vilket kan orsaka långa hämtningstider för avbildningar och göra arbetsbelastningsdistributionerna långsammare. Med artefaktströmning i AKS kan du strömma containeravbildningar från Azure Container Registry (ACR) till AKS. AKS hämtar bara de nödvändiga lagren för den första poddstarten, vilket minskar den tid det tar att hämta avbildningar och distribuera dina arbetsbelastningar.

Artefaktströmning kan minska tiden till poddberedskap med över 15 %, beroende på bildens storlek, och det fungerar bäst för bilder <30 GB. Baserat på våra tester såg vi minskningar av starttiderna för poddar för bilder <på 10 GB från minuter till sekunder. Om du har en podd som behöver åtkomst till en stor fil (>30 GB) bör du montera den som en volym i stället för att skapa den som ett lager. Det beror på att om podden kräver att filen startas överbelastas noden. Artefaktströmning är inte idealiskt för att läsa tunga bilder från filsystemet om du behöver det vid start. Med Artifact Streaming blir poddstart samtidigt, medan poddar utan den startar i seriellt.

Den här artikeln beskriver hur du aktiverar funktionen Artefaktuppspelning i AKS-nodpoolerna för att strömma artefakter från ACR.

Viktigt!

AKS-förhandsversionsfunktioner är tillgängliga via självbetjäning och anmäl dig. Förhandsversioner tillhandahålls "som är" och "som tillgängliga", och de undantas från serviceavtalen och den begränsade garantin. AKS-förhandsversioner omfattas delvis av kundsupport på bästa sätt. Därför är dessa funktioner inte avsedda för produktionsanvändning. Mer information finns i följande supportartiklar:

Förutsättningar

Kommentar

Artefaktströmning stöds endast i Ubuntu 22.04-, Ubuntu 20.04- och Azure Linux-nodpooler. Windows-nodpooler stöds inte.

Installera CLI-tillägget aks-preview

  1. Installera CLI-tillägget aks-preview med kommandot az extension add .

    az extension add --name aks-preview
    
  2. Uppdatera tillägget så att du har den senaste versionen installerad med kommandot az extension update .

    az extension update --name aks-preview
    

Registrera funktionsflaggan ArtifactStreamingPreview i din prenumeration

  • Registrera funktionsflaggan ArtifactStreamingPreview i din prenumeration med kommandot az feature register .

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

Aktivera artefaktströmning på ACR

Aktivering på ACR är en förutsättning för artefaktströmning på AKS. Mer information finns i Artefaktströmning på ACR.

  1. Skapa en Azure-resursgrupp för att lagra din ACR-instans med hjälp av az group create kommandot .

    az group create --name myStreamingTest --location westus
    
  2. Skapa ett nytt Premium SKU Azure Container Registry med kommandot az acr create med --sku Premium flaggan .

    az acr create --resource-group myStreamingTest --name mystreamingtest --sku Premium
    
  3. Konfigurera ACR-standardinstansen för din prenumeration med hjälp av az configure kommandot .

    az configure --defaults acr="mystreamingtest"
    
  4. Skicka eller importera en avbildning till registret med hjälp av az acr import kommandot .

    az acr import --source docker.io/jupyter/all-spark-notebook:latest --repository jupyter/all-spark-notebook:latest
    
  5. Skapa en strömmande artefakt från avbildningen az acr artifact-streaming create med kommandot .

    az acr artifact-streaming create --image jupyter/all-spark-notebook:latest
    
  6. Verifiera den genererade artefaktströmningen az acr manifest list-referrers med kommandot .

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

Aktivera artefaktströmning i AKS

Aktivera artefaktströmning i en ny nodpool

  • Skapa en ny nodpool med Artifact Streaming aktiverat med kommandot az aks nodepool add med --enable-artifact-streaming.

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

Aktivera artefaktströmning i en befintlig nodpool

  • Uppdatera en befintlig nodpool för att aktivera Artefaktströmning med kommandot az aks nodepool update med --enable-artifact-streaming.

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

Kontrollera om Artefaktströmning är aktiverat

Nu när du har aktiverat Artefaktströmning på en premium-ACR och anslutit den till en AKS-nodpool med Artifact Streaming aktiverat, kommer alla nya podddistributioner i det här klustret med en bildhämtning från ACR med Artefaktströmning aktiverat att se minskningar av avbildningens pull-tider.

  • Kontrollera om nodpoolen har Artifact Streaming aktiverat med kommandot az aks nodepool show .

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

    I utdata kontrollerar du att fältet är inställt på Enabled true.

Nästa steg

I den här artikeln beskrivs hur du aktiverar artefaktströmning i dina AKS-nodpooler för att strömma artefakter från ACR och minska avbildningens hämtningstid. Mer information om hur du arbetar med containeravbildningar i AKS finns i Metodtips för hantering och säkerhet av containeravbildningar i AKS.