Nasazení a správa rozšíření clusteru pro Azure Kubernetes Service (AKS) (Preview)

Rozšíření clusteru poskytují Azure Resource Manager prostředí pro instalaci a správu životního cyklu služeb, jako je Azure Machine Learning (ML) v clusteru AKS. Tato funkce umožňuje:

  • Azure Resource Manager nasazení rozšíření, včetně nasazení ve velkém měřítku napříč clustery AKS.
  • Správa životního cyklu rozšíření (aktualizace, odstranění) z Azure Resource Manager.

V tomto článku se dozvíte o:

  • Jak vytvořit instanci rozšíření.
  • Dostupná rozšíření clusteru v AKS
  • Zobrazení, zobrazení seznamu, aktualizace a odstranění instancí rozšíření

Koncepční přehled této funkce je k dispozici v článku o Azure Arc s podporou Kubernetes.

Důležité

Funkce AKS ve verzi Preview jsou k dispozici na základě samoobslužných možností. Verze Preview se poskytují "tak, jak jsou" a "jak jsou k dispozici" a jsou vyloučené ze smluv o úrovni služeb a omezené záruky. Verze Preview služby AKS částečně pokryje zákaznická podpora na základě maximálního úsilí. Proto nejsou tyto funkce určeny pro použití v produkčním prostředí. Další informace najdete v následujících článcích podpory:

Požadavky

Registrace poskytovatele pro rozšíření clusteru

  1. Zadejte následující příkazy:

    az provider register --namespace Microsoft.KubernetesConfiguration
    az provider register --namespace Microsoft.ContainerService
    
  2. Monitorujte proces registrace. Registrace může trvat až 10 minut.

    az provider show -n Microsoft.KubernetesConfiguration -o table
    az provider show -n Microsoft.ContainerService -o table
    

    Po registraci byste měli vidět, že RegistrationState se stav těchto oborů názvů změní na Registered .

Registrace funkcí AKS-ExtensionManager Preview

Pokud chcete vytvořit cluster AKS, který může používat rozšíření clusteru, musíte ve svém předplatném povolit AKS-ExtensionManager příznak funkce.

Zaregistrujte AKS-ExtensionManager příznak funkce pomocí příkazu az feature register, jak je znázorněno v následujícím příkladu:

az feature register --namespace "Microsoft.ContainerService" --name "AKS-ExtensionManager"

Zobrazení stavu Registrováno trvá několik minut. Pomocí příkazu az feature list ověřte stav registrace:

az feature list -o table --query "[?contains(name, 'Microsoft.ContainerService/AKS-ExtensionManager')].{Name:name,State:properties.state}"

Až budete připravení, aktualizujte registraci poskytovatelů prostředků Microsoft.KubernetesConfiguration a Microsoft.ContainerService pomocí příkazu az provider register:

az provider register --namespace Microsoft.KubernetesConfiguration
az provider register --namespace Microsoft.ContainerService

Nastavení rozšíření Azure CLI pro rozšíření clusteru

Poznámka

Minimální podporovaná verze rozšíření k8s-extension Azure CLI je 1.0.0 . Pokud si nejste jistí, jakou verzi máte nainstalovanou, spusťte příkaz a az extension show --name k8s-extension vyhledejte version pole .

Budete také potřebovat rozšíření k8s-extension Azure CLI. Nainstalujte ho spuštěním následujících příkazů:

az extension add --name k8s-extension

Pokud je rozšíření už nainstalované, můžete ho aktualizovat na nejnovější k8s-extension verzi pomocí následujícího příkazu:

az extension update --name k8s-extension

Aktuálně dostupná rozšíření

Poznámka

Rozšíření clusteru poskytují platformu pro instalaci a spravování různých rozšíření v clusteru AKS. Pokud máte problémy s používáním jakéhokoli z těchto rozšíření, otevřete lístek podpory s příslušnou službou.

Linka Description
Dapr Dapr je přenosný modul runtime řízený událostmi, který vývojářům usnadňuje vytváření odolných, bez stavových a stavových aplikací, které běží na cloudu a hraničních zařízeních.
Azure ML Pomocí Azure Kubernetes Service clusterů můžete trénovat, odvozovat a spravovat modely strojového učení v Azure Machine Learning.

Podporované oblasti a verze Kubernetes

Rozšíření clusteru je možné používat v clusterech AKS v oblastech uvedených Azure Arc podporu oblasti Kubernetes.

Informace o podporovaných verzích Kubernetes najdete v odpovídající dokumentaci pro jednotlivá rozšíření.

Použití rozšíření clusteru

Poznámka

Ukázky uvedené v tomto článku nejsou kompletní a jsou určeny pouze k prezentaci funkcí. Úplný seznam příkazů a jejich parametrů najdete v referenčních informace k rozhraní příkazového řádku az k8s-extension.

Vytvoření instance rozšíření

Vytvořte novou instanci rozšíření s k8s-extension create parametrem , který předá hodnoty povinných parametrů. Následující příkaz vytvoří instanci Azure Machine Learning v clusteru AKS:

az k8s-extension create --name aml-compute --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters --configuration-settings enableInference=True allowInsecureConnections=True

Poznámka

Služba Cluster Extensions nemůže uchovávat citlivé informace po dobu delší než 48 hodin. Pokud agenti rozšíření clusteru nemají připojení k síti po dobu delší než 48 hodin a nemohou určit, jestli se má v clusteru vytvořit rozšíření, rozšíření se přechází do Failed stavu. Jakmile budete Failed ve stavu , budete muset znovu spustit příkaz a vytvořit novou instanci k8s-extension create rozšíření.

Požadované parametry

Název parametru Description
--name Název instance rozšíření
--extension-type Typ rozšíření, které chcete v clusteru nainstalovat. Příklad: Microsoft.AzureML.Kubernetes
--cluster-name Název clusteru AKS, ve kterém se má instance rozšíření vytvořit
--resource-group Skupina prostředků obsahující cluster AKS
--cluster-type Typ clusteru, ve kterém se má instance rozšíření vytvořit. Určení, managedClusters jak se mapuje na clustery AKS

Volitelné parametry

Název parametru Description
--auto-upgrade-minor-version Logická vlastnost, která určuje, jestli se podververce rozšíření upgraduj automaticky nebo ne. Výchozí: true. Pokud je tento parametr nastavený na hodnotu true, nemůžete nastavit parametr, protože version verze se bude dynamicky aktualizovat. Pokud je false nastavená na , rozšíření se nebude automaticky upgradovat ani u verzí oprav.
--version Verze rozšíření, které se má nainstalovat (konkrétní verze, na které se má instance rozšíření připnout). Pokud je možnost auto-upgrade-minor-version nastavená na hodnotu , nesmí být zadána true hodnota .
--configuration-settings Nastavení, které je možné předat do rozšíření, aby bylo možné řídit jeho funkce. Předá se jako páry oddělené key=value mezerami za názvem parametru. Pokud se tento parametr používá v příkazu , nelze --configuration-settings-file ho použít ve stejném příkazu.
--configuration-settings-file Cesta k souboru JSON s páry klíč-hodnota, které se mají použít k předání nastavení konfigurace rozšíření. Pokud se tento parametr používá v příkazu , nelze --configuration-settings ho použít ve stejném příkazu.
--configuration-protected-settings Tato nastavení nelze načítejte pomocí volání rozhraní API nebo příkazů, a proto se používají k předání GET az k8s-extension show citlivých nastavení. Předá se jako páry oddělené key=value mezerami za názvem parametru. Pokud se tento parametr používá v příkazu , nelze --configuration-protected-settings-file ho použít ve stejném příkazu.
--configuration-protected-settings-file Cesta k souboru JSON s páry klíč-hodnota, které se mají použít k předání citlivých nastavení rozšíření. Pokud se tento parametr používá v příkazu , nelze --configuration-protected-settings ho použít ve stejném příkazu.
--scope Rozsah instalace rozšíření – cluster nebo namespace
--release-namespace Tento parametr označuje obor názvů, ve kterém se má verze vytvořit. Tento parametr je relevantní jenom v případě, scope že je parametr nastavený na cluster .
--release-train Autoři rozšíření mohou publikovat verze v různých trénech verzí, jako Stable jsou Preview , atd. Pokud tento parametr není explicitně nastavený, Stable použije se jako výchozí. Tento parametr nelze použít, pokud autoUpgradeMinorVersion je parametr nastavený na false .
--target-namespace Tento parametr označuje obor názvů, ve kterém se bude verze vytvářet. Oprávnění systémového účtu vytvořeného pro tuto instanci rozšíření bude omezeno na tento obor názvů. Tento parametr je relevantní jenom v scope případě, že je parametr nastavený na namespace .

Zobrazení podrobností o instanci rozšíření

Zobrazte podrobnosti o aktuálně nainstalované instanci rozšíření s k8s-extension show parametrem , který předává hodnoty povinných parametrů:

az k8s-extension show --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

Zobrazení seznamu všech rozšíření nainstalovaných v clusteru

Pomocí příkazu vypište všechna rozšíření nainstalovaná v clusteru k8s-extension list a předá hodnoty povinných parametrů.

az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

Aktualizace instance rozšíření

Poznámka

Informace o konkrétních nastaveních v části ConfigurationSetting a ConfigurationProtectedSettings, která je možné aktualizovat, najdete v dokumentaci k typu rozšíření (např. Azure ML). U položky ConfigurationProtectedSettings se očekává, že se během aktualizace jednoho nastavení za předpokladu, že budou poskytnuta všechna nastavení. Pokud některá nastavení vy vynechat, budou tato nastavení považována za zastaralá a odstraněná.

Aktualizujte existující instanci rozšíření pomocí k8s-extension update parametru , který předá hodnoty povinných parametrů. Následující příkaz aktualizuje nastavení automatického upgradu pro instanci Azure Machine Learning rozšíření:

az k8s-extension update --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

Požadované parametry

Název parametru Description
--name Název instance rozšíření
--extension-type Typ rozšíření, které chcete v clusteru nainstalovat. Příklad: Microsoft.AzureML.Kubernetes
--cluster-name Název clusteru AKS, ve kterém se má instance rozšíření vytvořit
--resource-group Skupina prostředků obsahující cluster AKS
--cluster-type Typ clusteru, na kterém se má instance rozšíření vytvořit. Určení, managedClusters jak se mapuje na clustery AKS

Volitelné parametry

Název parametru Description
--auto-upgrade-minor-version Logická vlastnost, která určuje, jestli se dílčí verze rozšíření upgraduj automaticky nebo ne. Výchozí: true. Pokud je tento parametr nastavený na hodnotu true, nemůžete nastavit parametr, protože version verze se bude dynamicky aktualizovat. Pokud je false nastavená na , rozšíření se nebude automaticky upgradovat ani u verzí oprav.
--version Verze rozšíření, které se má nainstalovat (konkrétní verze, na které se má instance rozšíření připnout). Pokud je možnost auto-upgrade-minor-version nastavená na hodnotu , nesmí být zadána true hodnota .
--configuration-settings Nastavení, které je možné předat do rozšíření, aby bylo možné řídit jeho funkce. Je potřeba poskytnuta pouze nastavení, která vyžadují aktualizaci. Poskytnutá nastavení by se nahradila poskytnutými hodnotami. Předá se jako páry oddělené key=value mezerami za názvem parametru. Pokud se tento parametr používá v příkazu , nelze --configuration-settings-file ho použít ve stejném příkazu.
--configuration-settings-file Cesta k souboru JSON s páry klíč-hodnota, které se mají použít k předání nastavení konfigurace rozšíření. Pokud se tento parametr používá v příkazu , nelze --configuration-settings ho použít ve stejném příkazu.
--configuration-protected-settings Tato nastavení nelze načítejte pomocí volání rozhraní API nebo příkazů, a proto se používají k předání GET az k8s-extension show citlivých nastavení. Při aktualizaci nastavení se očekává, že budou poskytnuta všechna nastavení. Pokud některá nastavení vy vynechat, budou tato nastavení považována za zastaralá a odstraněná. Předá se jako páry oddělené key=value mezerami za názvem parametru. Pokud se tento parametr používá v příkazu , nelze --configuration-protected-settings-file ho použít ve stejném příkazu.
--configuration-protected-settings-file Cesta k souboru JSON s páry klíč-hodnota, které se mají použít k předání citlivých nastavení rozšíření. Pokud se tento parametr používá v příkazu , nelze --configuration-protected-settings ho použít ve stejném příkazu.
--scope Rozsah instalace rozšíření – cluster nebo namespace
--release-train Autoři rozšíření mohou publikovat verze v různých trénech verzí, jako Stable jsou Preview , atd. Pokud tento parametr není explicitně nastavený, Stable použije se jako výchozí. Tento parametr nelze použít, pokud autoUpgradeMinorVersion je parametr nastavený na false .

Odstranění instance rozšíření

Poznámka

Prostředek Azure představující toto rozšíření se okamžitě odstraní. Verze Helm v clusteru přidruženém k tomuto rozšíření se odstraní pouze v případě, že agenti běžící v clusteru Kubernetes mají připojení k síti a mohou se znovu připojit ke službám Azure a načíst požadovaný stav.

Odstraňte instanci rozšíření v clusteru pomocí k8s-extension delete , který předává hodnoty povinných parametrů.

az k8s-extension delete --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters