Freigeben über


Verringern der Image-Pullzeit mit Artifact Streaming auf Azure Kubernetes Service (AKS) (Vorschau)

Rechenarbeitslasten mit hoher Leistung beziehen sich häufig auf große Images, was zu langen Image-Pullzeiten führen kann und Ihre Workloadbereitstellungen verlangsamen kann. Das Artefaktstreaming auf AKS ermöglicht Ihnen das Streamen von Container-Images aus Azure Container Registry (ACR) auf AKS. AKS ruft nur die erforderlichen Ebenen für den anfänglichen Podstart ab, wodurch die Zeit reduziert wird, die zum Abrufen von Images und zum Bereitstellen Ihrer Workloads benötigt wird.

Artefaktstreaming kann die Zeit für die Pod-Bereitschaft je nach Größe des Image um mehr als 15 % reduzieren und eignet sich am besten für Images <30 GB. Basierend auf unserem Test haben wir eine Reduzierung der Pod-Startzeiten für Bilder <10 GB von Minuten auf Sekunden beobachtet. Wenn Sie über einen Pod verfügen, der Zugriff auf eine große Datei (>30 GB) benötigt, sollten Sie ihn als Volume mounten, anstatt ihn als Ebene zu erstellen. Denn wenn Ihr Pod diese Datei zum Starten benötigt, überlastet es den Knoten. Artefaktstreaming ist nicht ideal für das Lesen von umfangreichen Images aus dem Dateisystem, wenn Sie diese beim Start benötigen. Mit Artefaktstreaming wird der Start eines Pods gleichzeitig erfolgen, während ohne Artefaktstreaming die Pods seriell starten.

In diesem Artikel wird beschrieben, wie Sie das Artefaktstreaming-Feature in Ihren AKS-Knotenpools aktivieren, um Artefakte von ACR zu streamen.

Wichtig

AKS-Vorschaufunktionen sind auf Selbstbedienungsbasis und freiwillig verfügbar. Vorschauversionen werden „im Istzustand“ und „wie verfügbar“ bereitgestellt und sind von den Service Level Agreements und der eingeschränkten Garantie ausgeschlossen. AKS-Vorschauversionen werden teilweise vom Kundensupport auf Grundlage der bestmöglichen Leistung abgedeckt. Daher sind diese Funktionen nicht für die Verwendung in der Produktion vorgesehen. Weitere Informationen finden Sie in den folgenden Supportartikeln:

Wichtig

Ab dem 30. November 2025 unterstützt Azure Kubernetes Service (AKS) keine Sicherheitsupdates für Azure Linux 2.0 mehr oder stellt diese bereit. Das Azure Linux 2.0-Knotenimage ist eingefroren bei der Version 202512.06.0. Ab dem 31. März 2026 werden Knotenimages entfernt, und Sie können Ihre Knotenpools nicht skalieren. Migrieren Sie zu einer unterstützten Azure Linux-Version, indem Sie Ihre Knotenpools auf eine unterstützte Kubernetes-Version aktualisieren oder zu osSku AzureLinux3 migrieren. Weitere Informationen finden Sie unter [Stilllegung] von Azure Linux 2.0-Knotenpools in AKS.

Wichtig

Artifact Streaming (Vorschau) ist eine vorgeschlagene Alternative für Kunden, die zuvor Teleport (Vorschau) verwenden. Teleport (Vorschau) auf AKS wird am 15. Juli 2025 eingestellt. Migrieren Sie zu Artifact Streaming (Vorschau) auf AKS, oder aktualisieren Sie Ihre Knotenpools zur Festlegung von --aks-custom-headers EnableACRTeleport=false. Die Azure Container Registry hat die Teleport-API entfernt, d. h., alle Knoten mit aktiviertem Teleport rufen Bilder aus der Azure Container-Registrierung wie alle anderen AKS-Knoten ohne Teleport ab. Nach dem 15. Juli 2025 könnten bei AKS-Knotenpools mit aktiviertem Teleport Unterbrechungen und Fehler bei der Knotenbereitstellung auftreten. Weitere Informationen finden Sie unter aka.ms/aks/teleport-retirement.

Einschränkungen

Voraussetzungen

Hinweis

Artefaktstreaming wird nur für Ubuntu 22.04-, Ubuntu 20.04- und Azure Linux-Knotenpools unterstützt. Windows-Knotenpools werden nicht unterstützt.

Installieren Sie die aks-preview-Erweiterung für die Befehlszeilenschnittstelle

  1. Installieren Sie die CLI-Erweiterung aks-preview mit dem Befehl az extension add.

    az extension add --name aks-preview
    
  2. Aktualisieren Sie die Erweiterung mit dem Befehl az extension update, um sicherzustellen, dass Sie die neueste Version installiert haben.

    az extension update --name aks-preview
    

Registrieren Sie das Feature-Flag ArtifactStreamingPreview in Ihrem Abonnement

  • Registrieren Sie die Feature-Flag ArtifactStreamingPreview in Ihrem Abonnement mithilfe des az feature register-Befehls.

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

Aktivieren des Artefaktstreamings auf ACR

Die Aktivierung von ACR ist eine Voraussetzung für das Artefakt-Streaming auf AKS. Weitere Informationen finden Sie unter Artefaktstreaming auf ACR.

  1. Erstellen Sie eine Azure-Ressourcengruppe, um Ihre ACR-Instanz mithilfe des az group create-Befehls zu speichern.

    az group create --name myStreamingTest --location westus
    
  2. Erstellen Sie mithilfe des az acr create-Befehls mit dem --sku Premium-Flag eine neue Premium-SKU-Azure-Containerregistrierung.

    az acr create --resource-group myStreamingTest --name mystreamingtest --sku Premium
    
  3. Konfigurieren Sie mithilfe des Befehls az configure die ACR-Standardinstanz für Ihr Abonnement.

    az configure --defaults acr="mystreamingtest"
    
  4. Übertragen oder importieren Sie mithilfe des Befehls az acr import ein Image in die Registrierung.

    az acr import --source docker.io/jupyter/all-spark-notebook:latest --repository jupyter/all-spark-notebook:latest
    
  5. Erstellen Sie mithilfe des Befehls az acr artifact-streaming create ein Streamingartefakt aus dem Image.

    az acr artifact-streaming create --image jupyter/all-spark-notebook:latest
    
  6. Überprüfen Sie das generierte Artifakt-Streaming mithilfe des az acr manifest list-referrers-Befehls.

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

Artefaktstreaming auf AKS aktivieren

Aktivieren von Artefakt-Streaming auf einem neuen Knotenpool

  • Erstellen Sie einen neuen Knotenpool mit aktiviertem Artefaktstreaming mithilfe des Befehls az aks nodepool add mit dem --enable-artifact-streaming-Flag.

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

Aktivieren des Artefaktstreamings in einem bereits vorhandenen Knotenpool

  • Aktualisieren Sie einen vorhandenen Knotenpool für die Aktivierung von Artefaktstreaming mithilfe des Befehls az aks nodepool update mit der Option --enable-artifact-streaming.

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

Überprüfen, ob Artefaktstreaming aktiviert ist

Nachdem Sie nun das Artefaktstreaming auf einem Premium-ACR aktiviert und diesen mit einem AKS-Knotenpool mit aktiviertem Artefaktstreaming verbunden haben, werden alle neuen Podbereitstellungen auf diesem Cluster mit einem Image-Pull vom ACR mit aktiviertem Artefaktstreaming eine Verkürzung der Image-Pullzeiten feststellen.

  • Überprüfen Sie mithilfe des Befehls az aks nodepool show, ob ihr Knotenpool Artefaktstreaming aktiviert hat.

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

    Überprüfen Sie in der Ausgabe, ob das Feld Enabled auf true festgelegt ist.

Nächste Schritte

In diesem Artikel wird beschrieben, wie Sie das Artefaktstreaming in Ihren AKS-Knotenpools aktivieren, um Artefakte von ACR zu streamen und die Image-Pullzeit zu reduzieren. Weitere Informationen zum Arbeiten mit Containerimages in AKS finden Sie unter Bewährte Methoden für die Verwaltung und Sicherheit von Containerimages in AKS.