Wdrażanie rozszerzeń klastra i zarządzanie nimi przy użyciu interfejsu wiersza polecenia platformy Azure
Wystąpienia rozszerzeń można tworzyć w klastrze usługi AKS, ustawiać wymagane i opcjonalne parametry, w tym opcje związane z aktualizacjami i konfiguracjami. Można również wyświetlać, wyświetlać, aktualizować i usuwać wystąpienia rozszerzeń.
Przed rozpoczęciem przeczytaj o rozszerzeniach klastra.
Uwaga
Przykłady przedstawione w tym artykule nie są kompletne i mają być prezentowane tylko funkcje. Aby uzyskać pełną listę poleceń i ich parametrów, zobacz dokumentację interfejsu wiersza polecenia az k8s-extension.
Wymagania wstępne
Subskrypcja platformy Azure. Jeśli nie masz subskrypcji Azure, możesz utworzyć bezpłatne konto Azure.
Dostawcy
Microsoft.ContainerService
zasobów iMicrosoft.KubernetesConfiguration
muszą być zarejestrowani w ramach subskrypcji. Aby zarejestrować tych dostawców, uruchom następujące polecenie:az provider register --namespace Microsoft.ContainerService --wait az provider register --namespace Microsoft.KubernetesConfiguration --wait
Klaster usługi AKS. Ten klaster musi zostać utworzony przy użyciu tożsamości zarządzanej, ponieważ rozszerzenia klastra nie będą działać z klastrami opartymi na jednostkach usługi. W przypadku nowych klastrów utworzonych przy użyciu
az aks create
tożsamości zarządzanej jest domyślnie konfigurowana. W przypadku istniejących klastrów opartych na jednostkach usługi przejdź do zarządzania tożsamością, uruchamiającaz aks update
flagę--enable-managed-identity
. Aby uzyskać więcej informacji, zobacz Używanie tożsamości zarządzanej.Zainstalowano interfejs >wiersza polecenia platformy Azure = 2.16.0. Zalecamy używanie najnowszej wersji.
Najnowsza wersja rozszerzeń interfejsu
k8s-extension
wiersza polecenia platformy Azure. Zainstaluj rozszerzenie, uruchamiając następujące polecenie:az extension add --name k8s-extension
Jeśli rozszerzenie jest już zainstalowane, upewnij się, że używasz najnowszej wersji przy użyciu następującego polecenia:
az extension update --name k8s-extension
Tworzenie wystąpienia rozszerzenia
Utwórz nowe wystąpienie rozszerzenia z elementem k8s-extension create
, przekazując wartości dla parametrów obowiązkowych. To przykładowe polecenie tworzy wystąpienie rozszerzenia usługi Azure Machine Learning w klastrze usługi AKS:
az k8s-extension create --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters --configuration-settings enableInference=True allowInsecureConnections=True inferenceRouterServiceType=LoadBalancer
To przykładowe polecenie tworzy przykładową aplikację Kubernetes (opublikowaną w witrynie Marketplace) w klastrze usługi AKS:
az k8s-extension create --name voteapp --extension-type Contoso.AzureVoteKubernetesAppTest --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters --plan-name testPlanID --plan-product testOfferID --plan-publisher testPublisherID --configuration-settings title=VoteAnimal value1=Cats value2=Dogs
Uwaga
Usługa Rozszerzenia klastra nie może przechowywać poufnych informacji przez ponad 48 godzin. Jeśli agenci rozszerzenia klastra nie mają łączności sieciowej przez ponad 48 godzin i nie mogą określić, czy utworzyć rozszerzenie w klastrze, rozszerzenie przechodzi do Failed
stanu. Po wystąpieniu Failed
stanu należy uruchomić k8s-extension create
ponownie, aby utworzyć nowe wystąpienie rozszerzenia.
Parametry wymagane
Nazwa parametru | opis |
---|---|
--name |
Nazwa wystąpienia rozszerzenia |
--extension-type |
Typ rozszerzenia, które chcesz zainstalować w klastrze. Na przykład: Microsoft.AzureML.Kubernetes . |
--cluster-name |
Nazwa klastra usługi AKS, na którym ma zostać utworzone wystąpienie rozszerzenia |
--resource-group |
Grupa zasobów zawierająca klaster usługi AKS |
--cluster-type |
Typ klastra, na którym ma zostać utworzone wystąpienie rozszerzenia. Określ managedClusters jako mapowania do klastrów usługi AKS |
Parametry opcjonalne
Nazwa parametru | opis |
---|---|
--auto-upgrade-minor-version |
Właściwość logiczna określająca, czy wersja pomocnicza rozszerzenia zostanie uaktualniona automatycznie, czy nie. Wartość domyślna: true . Jeśli ten parametr ma wartość true, nie można ustawić version parametru, ponieważ wersja zostanie dynamicznie zaktualizowana. Jeśli ustawiono false wartość , rozszerzenie nie zostanie automatycznie uaktualnione nawet w przypadku wersji poprawek. |
--version |
Wersja rozszerzenia, które ma zostać zainstalowane (określona wersja, aby przypiąć wystąpienie rozszerzenia do). Nie można podać, jeśli dla opcji auto-upgrade-minor-version ustawiono wartość true . |
--configuration-settings |
Ustawienia, które można przekazać do rozszerzenia, aby kontrolować jego funkcjonalność. Przekaż wartości jako pary rozdzielone key=value spacjami po nazwie parametru. Jeśli ten parametr jest używany w poleceniu, --configuration-settings-file nie można go użyć w tym samym poleceniu. |
--configuration-settings-file |
Ścieżka do pliku JSON zawierającego pary wartości klucza, które mają być używane do przekazywania ustawień konfiguracji do rozszerzenia. Jeśli ten parametr jest używany w poleceniu, --configuration-settings nie można go użyć w tym samym poleceniu. |
--configuration-protected-settings |
Te ustawienia nie są możliwe do pobierania przy użyciu GET wywołań interfejsu API lub az k8s-extension show poleceń i dlatego są używane do przekazywania poufnych ustawień. Przekaż wartości jako pary rozdzielone key=value spacjami po nazwie parametru. Jeśli ten parametr jest używany w poleceniu, --configuration-protected-settings-file nie można go użyć w tym samym poleceniu. |
--configuration-protected-settings-file |
Ścieżka do pliku JSON zawierającego pary wartości klucza, które mają być używane do przekazywania poufnych ustawień do rozszerzenia. Jeśli ten parametr jest używany w poleceniu, --configuration-protected-settings nie można go użyć w tym samym poleceniu. |
--scope |
Zakres instalacji rozszerzenia — cluster lub namespace |
--release-namespace |
Ten parametr wskazuje przestrzeń nazw, w której ma zostać utworzona wersja. Ten parametr jest istotny tylko wtedy, gdy scope parametr jest ustawiony na cluster wartość . |
--release-train |
Autorzy rozszerzeń mogą publikować wersje w różnych pociągach wydaniach, takich jak Stable , Preview itp. Jeśli ten parametr nie zostanie jawnie ustawiony, Stable zostanie użyty jako domyślny. Nie można użyć tego parametru, gdy --auto-upgrade-minor-version parametr jest ustawiony na false wartość . |
--target-namespace |
Ten parametr wskazuje przestrzeń nazw, w której zostanie utworzona wersja. Uprawnienie do konta systemowego utworzonego dla tego wystąpienia rozszerzenia będzie ograniczone do tej przestrzeni nazw. Ten parametr jest istotny tylko wtedy, gdy scope parametr jest ustawiony na namespace wartość . |
--plan-name |
Identyfikator planu rozszerzenia znajdujący się na stronie Marketplace w witrynie Azure Portal w obszarze Informacje o użyciu i obsługa techniczna. |
--plan-product |
Identyfikator produktu rozszerzenia znajdujący się na stronie Marketplace w witrynie Azure Portal w obszarze Informacje o użyciu i obsługa techniczna. Przykładem jest nazwa używanej oferty niezależnego dostawcy oprogramowania. |
--plan-publisher |
Identyfikator wydawcy rozszerzenia znajdujący się na stronie Marketplace w witrynie Azure Portal w obszarze Informacje o użyciu i obsługa techniczna. |
Pokaż szczegóły wystąpienia rozszerzenia
Aby wyświetlić szczegóły aktualnie zainstalowanego wystąpienia rozszerzenia, użyj polecenia k8s-extension show
, przekazując wartości obowiązkowych parametrów.
az k8s-extension show --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Wyświetlanie listy wszystkich rozszerzeń zainstalowanych w klastrze
Aby wyświetlić listę wszystkich rozszerzeń zainstalowanych w klastrze, użyj polecenia k8s-extension list
, przekazując wartości obowiązkowych parametrów.
az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Aktualizowanie wystąpienia rozszerzenia
Uwaga
Zapoznaj się z dokumentacją określonego typu rozszerzenia, aby zrozumieć określone ustawienia w --configuration-settings
systemie i --configuration-protected-settings
które można zaktualizować. W przypadku --configuration-protected-settings
opcji należy podać wszystkie ustawienia, nawet jeśli jest aktualizowane tylko jedno ustawienie. Jeśli którekolwiek z tych ustawień zostanie pominięte, te ustawienia zostaną uznane za przestarzałe i usunięte.
Aby zaktualizować istniejące wystąpienie rozszerzenia, użyj polecenia k8s-extension update
, przekazując wartości dla parametrów obowiązkowych. Następujące polecenie aktualizuje ustawienie automatycznego uaktualniania dla wystąpienia rozszerzenia usługi Azure Machine Learning:
az k8s-extension update --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Wymagane parametry aktualizacji
Nazwa parametru | opis |
---|---|
--name |
Nazwa wystąpienia rozszerzenia |
--extension-type |
Typ rozszerzenia, które chcesz zainstalować w klastrze. Na przykład: Microsoft.AzureML.Kubernetes |
--cluster-name |
Nazwa klastra usługi AKS, na którym ma zostać utworzone wystąpienie rozszerzenia |
--resource-group |
Grupa zasobów zawierająca klaster usługi AKS |
--cluster-type |
Typ klastra, na którym ma zostać utworzone wystąpienie rozszerzenia. Określ managedClusters jako mapowania do klastrów usługi AKS |
W przypadku aktualizowania aplikacji Kubernetes pozyskanej za pośrednictwem witryny Marketplace wymagane są również następujące parametry:
Nazwa parametru | opis |
---|---|
--plan-name |
Identyfikator planu rozszerzenia znajdujący się na stronie Marketplace w witrynie Azure Portal w obszarze Informacje o użyciu i obsługa techniczna. |
--plan-product |
Identyfikator produktu rozszerzenia znajdujący się na stronie Marketplace w witrynie Azure Portal w obszarze Informacje o użyciu i obsługa techniczna. Przykładem jest nazwa używanej oferty niezależnego dostawcy oprogramowania. |
--plan-publisher |
Identyfikator wydawcy rozszerzenia znajdujący się na stronie Marketplace w witrynie Azure Portal w obszarze Informacje o użyciu i obsługa techniczna. |
Opcjonalne parametry aktualizacji
Nazwa parametru | opis |
---|---|
--auto-upgrade-minor-version |
Właściwość logiczna określająca, czy wersja pomocnicza rozszerzenia zostanie uaktualniona automatycznie, czy nie. Wartość domyślna: true . Jeśli ten parametr ma wartość true, nie można ustawić version parametru, ponieważ wersja zostanie dynamicznie zaktualizowana. Jeśli ustawiono false wartość , rozszerzenie nie zostanie automatycznie uaktualnione nawet w przypadku wersji poprawek. |
--version |
Wersja rozszerzenia, które ma zostać zainstalowane (określona wersja, aby przypiąć wystąpienie rozszerzenia do). Nie można podać, jeśli dla opcji auto-upgrade-minor-version ustawiono wartość true . |
--configuration-settings |
Ustawienia, które można przekazać do rozszerzenia, aby kontrolować jego funkcjonalność. Należy podać tylko ustawienia wymagające aktualizacji. Podane ustawienia zostaną zastąpione podanymi wartościami. Przekaż wartości jako pary rozdzielone key=value spacjami po nazwie parametru. Jeśli ten parametr jest używany w poleceniu, --configuration-settings-file nie można go użyć w tym samym poleceniu. |
--configuration-settings-file |
Ścieżka do pliku JSON zawierającego pary wartości klucza, które mają być używane do przekazywania ustawień konfiguracji do rozszerzenia. Jeśli ten parametr jest używany w poleceniu, --configuration-settings nie można go użyć w tym samym poleceniu. |
--configuration-protected-settings |
Te ustawienia nie są możliwe do pobierania przy użyciu GET wywołań interfejsu API lub az k8s-extension show poleceń i dlatego są używane do przekazywania poufnych ustawień. Po zaktualizowaniu ustawienia należy określić wszystkie ustawienia. Jeśli niektóre ustawienia zostaną pominięte, te ustawienia zostaną uznane za przestarzałe i usunięte. Przekaż wartości jako pary rozdzielone key=value spacjami po nazwie parametru. Jeśli ten parametr jest używany w poleceniu, --configuration-protected-settings-file nie można go użyć w tym samym poleceniu. |
--configuration-protected-settings-file |
Ścieżka do pliku JSON zawierającego pary wartości klucza, które mają być używane do przekazywania poufnych ustawień do rozszerzenia. Jeśli ten parametr jest używany w poleceniu, --configuration-protected-settings nie można go użyć w tym samym poleceniu. |
--scope |
Zakres instalacji rozszerzenia — cluster lub namespace |
--release-train |
Autorzy rozszerzeń mogą publikować wersje w różnych pociągach wydaniach, takich jak Stable , Preview itp. Jeśli ten parametr nie zostanie jawnie ustawiony, Stable zostanie użyty jako domyślny. Nie można użyć tego parametru, gdy autoUpgradeMinorVersion parametr jest ustawiony na false wartość . |
Usuwanie wystąpienia rozszerzenia
Aby usunąć wystąpienie rozszerzenia w klastrze, użyj polecenia k8s-extension-delete
, przekazując wartości dla parametrów obowiązkowych.
az k8s-extension delete --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Uwaga
Zasób platformy Azure reprezentujący to rozszerzenie zostanie natychmiast usunięty. Wydanie programu Helm w klastrze skojarzonym z tym rozszerzeniem jest usuwane tylko wtedy, gdy agenci działający w klastrze Kubernetes mają łączność sieciową i mogą ponownie skontaktować się z usługami platformy Azure, aby pobrać żądany stan.
Następne kroki
- Wyświetl listę aktualnie dostępnych rozszerzeń klastra.
- Dowiedz się więcej o aplikacjach Kubernetes dostępnych za pośrednictwem witryny Marketplace.
Azure Kubernetes Service