AKS | Cluster Extension


In this article, I will share with you a new AKS feature: Cluster Extension.

Cluster extensions provides an Azure Resource Manager driven experience for installation and lifecycle management of services like Azure Machine Learning (ML) on an AKS cluster. This feature enables:

  • Azure Resource Manager-based deployment of extensions, including at-scale deployments across AKS clusters.
  • Lifecycle management of the extension (Update, Delete) from Azure Resource Manager.

Available extensions:

DaprDapr is a portable, event-driven runtime that makes it easy for any developer to build resilient, stateless and stateful applications that run on cloud and edge.
Azure MLUse Azure Kubernetes Service clusters to train, inference, and manage machine learning models in Azure Machine Learning.
Flux (GitOps)Use GitOps with Flux to manage cluster configuration and application deployment.

To enable the feature (still in public preview):

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

# - Update Azure CLI
az extension update --name k8s-extension
az extension add --name k8s-extension

# - List all extensions installed on the cluster
az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

# - Azure Machine Learning extension instance on your AKS cluster
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

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


Démarrez une conversation

Votre adresse e-mail ne sera pas publiée.