Clusterextensies implementeren en beheren met behulp van Azure CLI
U kunt extensie-exemplaren maken in een AKS-cluster door vereiste en optionele parameters in te stellen, waaronder opties met betrekking tot updates en configuraties. U kunt ook extensie-exemplaren weergeven, weergeven, bijwerken en verwijderen.
Lees voordat u begint over clusterextensies.
Notitie
De voorbeelden in dit artikel zijn niet volledig en zijn alleen bedoeld om de functionaliteit te laten zien. Zie de CLI-naslaginformatie az k8s-extension voor een uitgebreide lijst met opdrachten en de bijbehorende parameters.
Vereisten
Een Azure-abonnement. Als u geen Azure-abonnement hebt, kunt u een gratis account maken.
De
Microsoft.ContainerService
resourceproviders enMicrosoft.KubernetesConfiguration
moeten zijn geregistreerd in uw abonnement. Voer de volgende opdracht uit om deze providers te registreren:az provider register --namespace Microsoft.ContainerService --wait az provider register --namespace Microsoft.KubernetesConfiguration --wait
Een AKS-cluster. Dit cluster moet zijn gemaakt met een beheerde identiteit, omdat clusterextensies niet werken met clusters op basis van service-principals. Voor nieuwe clusters die zijn gemaakt met
az aks create
, wordt de beheerde identiteit standaard geconfigureerd. Voor bestaande op service-principal gebaseerde clusters schakelt u over naar het beheren van identiteit door uit te voerenaz aks update
met de--enable-managed-identity
vlag. Zie Beheerde identiteit gebruiken voor meer informatie.Azure CLI-versie>= 2.16.0 geïnstalleerd. U wordt aangeraden de nieuwste versie te gebruiken.
De nieuwste versie van de
k8s-extension
Azure CLI-extensies. Installeer de extensie door de volgende opdracht uit te voeren:az extension add --name k8s-extension
Als de extensie al is geïnstalleerd, controleert u of u de nieuwste versie uitvoert met behulp van de volgende opdracht:
az extension update --name k8s-extension
Extensie-exemplaar maken
Maak een nieuw extensie-exemplaar met k8s-extension create
, waarbij waarden worden doorgegeven voor de verplichte parameters. Met deze voorbeeldopdracht maakt u een exemplaar van de Azure Machine Learning-extensie in uw AKS-cluster:
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
Met deze voorbeeldopdracht maakt u een Kubernetes-voorbeeldtoepassing (gepubliceerd op Marketplace) op uw AKS-cluster:
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
Notitie
De service clusterextensies kan gevoelige informatie niet langer dan 48 uur bewaren. Als de clusteruitbreidingsagents langer dan 48 uur geen netwerkverbinding hebben en niet kunnen bepalen of er een extensie op het cluster moet worden gemaakt, wordt de extensie overgezet naar Failed
de status. Failed
Zodra de status is bereikt, moet u opnieuw uitvoeren k8s-extension create
om een nieuw extensie-exemplaar te maken.
Vereiste parameters
Parameternaam | Beschrijving |
---|---|
--name |
Naam van het extensie-exemplaar |
--extension-type |
Het type extensie dat u op het cluster wilt installeren. Bijvoorbeeld: Microsoft.AzureML.Kubernetes |
--cluster-name |
Naam van het AKS-cluster waarop het extensie-exemplaar moet worden gemaakt |
--resource-group |
De resourcegroep met het AKS-cluster |
--cluster-type |
Het clustertype waarop het extensie-exemplaar moet worden gemaakt. Opgeven managedClusters wanneer deze wordt toegewezen aan AKS-clusters |
Optionele parameters
Parameternaam | Beschrijving |
---|---|
--auto-upgrade-minor-version |
Booleaanse eigenschap die aangeeft of de secundaire extensieversie automatisch wordt bijgewerkt of niet. Standaard: true . Als deze parameter is ingesteld op true, kunt u de parameter niet instellen version , omdat de versie dynamisch wordt bijgewerkt. Als dit is ingesteld op false , wordt de extensie niet automatisch bijgewerkt, zelfs niet voor patchversies. |
--version |
Versie van de extensie die moet worden geïnstalleerd (specifieke versie waaraan het extensie-exemplaar moet worden vastgemaakt). Moet niet worden opgegeven als auto-upgrade-minor-version is ingesteld op true . |
--configuration-settings |
Instellingen die kunnen worden doorgegeven aan de extensie om de functionaliteit ervan te beheren. Geef waarden door als spatie gescheiden key=value paren na de parameternaam. Als deze parameter wordt gebruikt in de opdracht, --configuration-settings-file kan niet worden gebruikt in dezelfde opdracht. |
--configuration-settings-file |
Pad naar het JSON-bestand met sleutelwaardeparen die moeten worden gebruikt voor het doorgeven van configuratie-instellingen aan de extensie. Als deze parameter wordt gebruikt in de opdracht, --configuration-settings kan niet worden gebruikt in dezelfde opdracht. |
--configuration-protected-settings |
Deze instellingen kunnen niet worden opgehaald met API-aanroepen GET of az k8s-extension show -opdrachten en worden dus gebruikt om gevoelige instellingen door te geven. Geef waarden door als spatie gescheiden key=value paren na de parameternaam. Als deze parameter wordt gebruikt in de opdracht, --configuration-protected-settings-file kan niet worden gebruikt in dezelfde opdracht. |
--configuration-protected-settings-file |
Pad naar het JSON-bestand met sleutelwaardeparen die moeten worden gebruikt voor het doorgeven van gevoelige instellingen aan de extensie. Als deze parameter wordt gebruikt in de opdracht, --configuration-protected-settings kan niet worden gebruikt in dezelfde opdracht. |
--scope |
Bereik van de installatie voor de extensie - cluster of namespace |
--release-namespace |
Deze parameter geeft de naamruimte aan waarin de release moet worden gemaakt. Deze parameter is alleen relevant als scope parameter is ingesteld op cluster . |
--release-train |
Auteurs van extensies kunnen versies in verschillende release-treinen publiceren, zoals Stable , Preview , enzovoort. Als deze parameter niet expliciet is ingesteld, Stable wordt gebruikt als standaardwaarde. Deze parameter kan niet worden gebruikt wanneer --auto-upgrade-minor-version parameter is ingesteld op false . |
--target-namespace |
Deze parameter geeft de naamruimte aan waarin de release wordt gemaakt. De machtiging van het systeemaccount dat voor dit extensie-exemplaar is gemaakt, is beperkt tot deze naamruimte. Deze parameter is alleen relevant als de scope parameter is ingesteld op namespace . |
--plan-name |
Plan-id van de extensie, te vinden op de marketplace-pagina in de Azure Portal onder Gebruiksgegevens en ondersteuning. |
--plan-product |
Product-id van de extensie, te vinden op de marketplace-pagina in de Azure Portal onder Gebruiksgegevens en ondersteuning. Een voorbeeld hiervan is de naam van de GEBRUIKTE ISV-aanbieding. |
--plan-publisher |
Uitgever-id van de extensie, te vinden op de marketplace-pagina in de Azure Portal onder Gebruiksgegevens en ondersteuning. |
Details van een extensie-exemplaar weergeven
Als u details van een momenteel geïnstalleerde extensie-instantie wilt weergeven, gebruikt k8s-extension show
u , waarbij u waarden doorgeeft voor de verplichte parameters.
az k8s-extension show --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Alle extensies weergeven die op het cluster zijn geïnstalleerd
Als u alle extensies wilt weergeven die op een cluster zijn geïnstalleerd, gebruikt k8s-extension list
u , waarbij u waarden doorgeeft voor de verplichte parameters.
az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Extensie-exemplaar bijwerken
Notitie
Raadpleeg de documentatie voor het specifieke extensietype voor meer informatie over de specifieke instellingen in --configuration-settings
en --configuration-protected-settings
die kunnen worden bijgewerkt. Voor --configuration-protected-settings
wordt verwacht dat alle instellingen worden opgegeven, zelfs als er slechts één instelling wordt bijgewerkt. Als een van deze instellingen wordt weggelaten, worden deze instellingen beschouwd als verouderd en verwijderd.
Als u een bestaand extensie-exemplaar wilt bijwerken, gebruikt k8s-extension update
u , waarbij u waarden doorgeeft voor de verplichte parameters. Met de volgende opdracht wordt de instelling voor automatisch upgraden voor een Exemplaar van de Azure Machine Learning-extensie bijgewerkt:
az k8s-extension update --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Vereiste parameters voor update
Parameternaam | Beschrijving |
---|---|
--name |
Naam van het extensie-exemplaar |
--extension-type |
Het type extensie dat u op het cluster wilt installeren. Bijvoorbeeld: Microsoft.AzureML.Kubernetes |
--cluster-name |
Naam van het AKS-cluster waarop het extensie-exemplaar moet worden gemaakt |
--resource-group |
De resourcegroep met het AKS-cluster |
--cluster-type |
Het clustertype waarop het extensie-exemplaar moet worden gemaakt. Opgeven managedClusters wanneer deze wordt toegewezen aan AKS-clusters |
Als u een Kubernetes-toepassing bijwerkt die is aangeschaft via Marketplace, zijn ook de volgende parameters vereist:
Parameternaam | Beschrijving |
---|---|
--plan-name |
Plan-id van de extensie, te vinden op de marketplace-pagina in de Azure Portal onder Gebruiksgegevens en ondersteuning. |
--plan-product |
Product-id van de extensie, te vinden op de marketplace-pagina in de Azure Portal onder Gebruiksgegevens en ondersteuning. Een voorbeeld hiervan is de naam van de GEBRUIKTE ISV-aanbieding. |
--plan-publisher |
Uitgever-id van de extensie, te vinden op de marketplace-pagina in de Azure Portal onder Gebruiksgegevens en ondersteuning. |
Optionele parameters voor update
Parameternaam | Beschrijving |
---|---|
--auto-upgrade-minor-version |
Booleaanse eigenschap die aangeeft of de secundaire extensieversie automatisch wordt bijgewerkt of niet. Standaard: true . Als deze parameter is ingesteld op true, kunt u de parameter niet instellen version , omdat de versie dynamisch wordt bijgewerkt. Als dit is ingesteld op false , wordt de extensie niet automatisch bijgewerkt, zelfs niet voor patchversies. |
--version |
Versie van de extensie die moet worden geïnstalleerd (specifieke versie waaraan het extensie-exemplaar moet worden vastgemaakt). Moet niet worden opgegeven als auto-upgrade-minor-version is ingesteld op true . |
--configuration-settings |
Instellingen die kunnen worden doorgegeven aan de extensie om de functionaliteit ervan te beheren. Alleen de instellingen waarvoor een update is vereist, moeten worden opgegeven. De opgegeven instellingen worden vervangen door de opgegeven waarden. Geef waarden door als spatie gescheiden key=value paren na de parameternaam. Als deze parameter wordt gebruikt in de opdracht, --configuration-settings-file kan niet worden gebruikt in dezelfde opdracht. |
--configuration-settings-file |
Pad naar het JSON-bestand met sleutelwaardeparen die moeten worden gebruikt voor het doorgeven van configuratie-instellingen aan de extensie. Als deze parameter wordt gebruikt in de opdracht, --configuration-settings kan niet worden gebruikt in dezelfde opdracht. |
--configuration-protected-settings |
Deze instellingen kunnen niet worden opgehaald met API-aanroepen GET of az k8s-extension show -opdrachten en worden dus gebruikt om gevoelige instellingen door te geven. Wanneer u een instelling bijwerkt, worden alle instellingen naar verwachting opgegeven. Als sommige instellingen worden weggelaten, worden deze instellingen als verouderd en verwijderd beschouwd. Geef waarden door als spatie gescheiden key=value paren na de parameternaam. Als deze parameter wordt gebruikt in de opdracht, --configuration-protected-settings-file kan niet worden gebruikt in dezelfde opdracht. |
--configuration-protected-settings-file |
Pad naar het JSON-bestand met sleutelwaardeparen die moeten worden gebruikt voor het doorgeven van gevoelige instellingen aan de extensie. Als deze parameter wordt gebruikt in de opdracht, --configuration-protected-settings kan niet worden gebruikt in dezelfde opdracht. |
--scope |
Bereik van de installatie voor de extensie - cluster of namespace |
--release-train |
Auteurs van extensies kunnen versies in verschillende release-treinen publiceren, zoals Stable , Preview , enzovoort. Als deze parameter niet expliciet is ingesteld, Stable wordt gebruikt als standaardwaarde. Deze parameter kan niet worden gebruikt wanneer autoUpgradeMinorVersion parameter is ingesteld op false . |
Extensie-exemplaar verwijderen
Als u een extensie-exemplaar in een cluster wilt verwijderen, gebruikt k8s-extension-delete
u , waarbij u waarden doorgeeft voor de verplichte parameters.
az k8s-extension delete --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters
Notitie
De Azure-resource die deze extensie vertegenwoordigt, wordt onmiddellijk verwijderd. De Helm-release op het cluster dat aan deze extensie is gekoppeld, wordt alleen verwijderd wanneer de agents die worden uitgevoerd op het Kubernetes-cluster een netwerkverbinding hebben en opnieuw contact kunnen opnemen met Azure-services om de gewenste status op te halen.
Volgende stappen
- Bekijk de lijst met momenteel beschikbare clusterextensies.
- Meer informatie over Kubernetes-toepassingen die beschikbaar zijn via Marketplace.