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
- Du behöver ett befintligt AKS-kluster med ACR-integrering. Om du inte har en kan du skapa en med Autentisera med ACR från AKS.
- Aktivera artefaktströmning på ACR.
- Den här funktionen kräver Kubernetes version 1.25 eller senare. Information om hur du kontrollerar aks-klusterversionen finns i Söka efter tillgängliga AKS-klusteruppgraderingar.
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
Installera CLI-tillägget
aks-preview
med kommandotaz extension add
.az extension add --name aks-preview
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 kommandotaz 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.
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
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
Konfigurera ACR-standardinstansen för din prenumeration med hjälp av
az configure
kommandot .az configure --defaults acr="mystreamingtest"
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
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
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.
Azure Kubernetes Service