Zkrácení doby vyžádání image pomocí streamování artefaktů ve službě Azure Kubernetes Service (AKS) (Preview)

Úlohy s vysokým výkonem často zahrnují velké image, což může způsobit dlouhé doby načítání imagí a zpomalovat nasazení úloh. Streamování artefaktů v AKS umožňuje streamovat image kontejnerů ze služby Azure Container Registry (ACR) do AKS. AKS načítá jenom potřebné vrstvy pro počáteční spuštění podu, což zkracuje dobu potřebnou k načtení imagí a nasazení úloh.

Streamování artefaktů může zkrátit dobu připravenosti podů o více než 15 % v závislosti na velikosti image a funguje nejlépe pro obrázky <o velikosti 30 GB. Na základě našeho testování jsme viděli snížení doby spuštění podů pro obrázky <o 10 GB od minut do sekund. Pokud máte pod, který potřebuje přístup k velkému souboru (>30 GB), měli byste ho připojit jako svazek místo jeho sestavení jako vrstvy. Důvodem je to, že pokud pod vyžaduje, aby se tento soubor spustil, protáhne uzel. Streamování artefaktů není ideální pro čtení těžkých imagí ze systému souborů, pokud to potřebujete při spuštění. Se streamováním artefaktů se spouštění podů stává souběžným, zatímco bez něj se pody spouštějí sériově.

Tento článek popisuje, jak povolit funkci Streamování artefaktů ve fondech uzlů AKS ke streamování artefaktů z ACR.

Důležité

Funkce AKS ve verzi Preview jsou k dispozici na samoobslužné bázi. Verze Preview jsou poskytovány "tak, jak jsou" a "dostupné", a jsou vyloučené ze smluv o úrovni služeb a omezené záruky. Verze Preview AKS jsou částečně pokryty zákaznickou podporou na základě maximálního úsilí. Proto tyto funkce nejsou určené pro produkční použití. Další informace najdete v následujících článcích podpory:

Požadavky

Poznámka:

Streamování artefaktů se podporuje jenom ve fondech uzlů Ubuntu 22.04, Ubuntu 20.04 a Azure Linux. Fondy uzlů Windows nejsou podporované.

Instalace rozšíření rozhraní příkazového aks-preview řádku

  1. Nainstalujte rozšíření rozhraní příkazového aks-previewaz extension add řádku pomocí příkazu.

    az extension add --name aks-preview
    
  2. Pomocí příkazu aktualizujte rozšíření, abyste měli nainstalovanou az extension update nejnovější verzi.

    az extension update --name aks-preview
    

Registrace příznaku ArtifactStreamingPreview funkce v předplatném

  • ArtifactStreamingPreview Pomocí příkazu zaregistrujte příznak funkce ve svém předplatnémaz feature register.

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

Povolení streamování artefaktů v ACR

Povolení služby ACR je předpokladem pro streamování artefaktů v AKS. Další informace najdete v tématu Streamování artefaktů v ACR.

  1. Pomocí příkazu vytvořte skupinu prostředků Azure, která bude uchovávat instanci az group create ACR.

    az group create --name myStreamingTest --location westus
    
  2. Pomocí příkazu s příznakem --sku Premium vytvořte novou skladovou položku Premium Azure Container Registryaz acr create.

    az acr create --resource-group myStreamingTest --name mystreamingtest --sku Premium
    
  3. Pomocí příkazu nakonfigurujte výchozí instanci ACR pro vaše předplatné az configure .

    az configure --defaults acr="mystreamingtest"
    
  4. Pomocí příkazu nasdílíte nebo naimportujete image do registru az acr import .

    az acr import --source docker.io/jupyter/all-spark-notebook:latest --repository jupyter/all-spark-notebook:latest
    
  5. Pomocí příkazu vytvořte artefakt streamování z image az acr artifact-streaming create .

    az acr artifact-streaming create --image jupyter/all-spark-notebook:latest
    
  6. Pomocí příkazu ověřte vygenerované streamování artefaktů az acr manifest list-referrers .

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

Povolení streamování artefaktů v AKS

Povolení streamování artefaktů v novém fondu uzlů

  • Vytvořte nový fond uzlů s povoleným streamováním artefaktů az aks nodepool add pomocí příkazu s příkazem --enable-artifact-streaming.

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

Povolení streamování artefaktů ve stávajícím fondu uzlů

  • Aktualizace existujícího fondu uzlů, aby bylo možné povolit streamování artefaktů az aks nodepool update pomocí příkazu s nástrojem --enable-artifact-streaming.

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

Kontrola, jestli je povolené streamování artefaktů

Teď, když jste povolili streamování artefaktů ve službě ACR úrovně Premium a připojili jste ho k fondu uzlů AKS s povoleným streamováním artefaktů, všechna nová nasazení podů v tomto clusteru s povoleným načtením image z ACR s povoleným streamováním artefaktů uvidí snížení doby načítání imagí.

  • Pomocí příkazu zkontrolujte, jestli je ve fondu uzlů povolené streamování artefaktů az aks nodepool show .

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

    Ve výstupu zkontrolujte, zda Enabled je pole nastaveno na truehodnotu .

Další kroky

Tento článek popisuje, jak povolit streamování artefaktů ve fondech uzlů AKS ke streamování artefaktů z ACR a zkrácení doby vyžádání image. Další informace o práci s imagemi kontejnerů v AKS najdete v tématu Osvědčené postupy pro správu a zabezpečení imagí kontejnerů v AKS.