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
- Potřebujete existující cluster AKS s integrací ACR. Pokud ho nemáte, můžete ho vytvořit pomocí ověřování pomocí ACR z AKS.
- Povolení streamování artefaktů v ACR
- Tato funkce vyžaduje Kubernetes verze 1.25 nebo novější. Pokud chcete zkontrolovat verzi clusteru AKS, přečtěte si téma Kontrola dostupných upgradů clusteru AKS.
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
Nainstalujte rozšíření rozhraní příkazového
aks-preview
az extension add
řádku pomocí příkazu.az extension add --name aks-preview
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.
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
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
Pomocí příkazu nakonfigurujte výchozí instanci ACR pro vaše předplatné
az configure
.az configure --defaults acr="mystreamingtest"
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
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
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 natrue
hodnotu .
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.
Azure Kubernetes Service