Blog Post

Apps on Azure Blog
3 MIN READ

Announcing preview of Distributed Application Runtime (Dapr) and Azure Machine Learning extension

kavithagowda's avatar
kavithagowda
Icon for Microsoft rankMicrosoft
Nov 02, 2021

We are excited to announce the public preview of two new capabilities being enabled on AKS – Dapr and Azure Machine Learning. These capabilities can be enabled on AKS clusters through a feature called cluster extensions.

Cluster extensions provide an at-scale mechanism to deploy, update and manage the lifecycle of services represented by extension instances running on your AKS clusters. With this capability, management of these services can be done through tools like the Azure CLI and the Azure SDKs. Let's use the rest of the blog to walk you through what each of these new capabilities enable. 

 

What are AKS cluster extensions? 

Cluster extensions provide an Azure Resource Manager (ARM) driven experience for installation and lifecycle management of Azure services and supported open-source projects on AKS clusters. Dapr and Azure ML are the first set of extension offerings to be deployed and managed through cluster extension on AKS. Cluster extensions provide users with a unified experience to install, update, and upgrade supported services. Users can install a specific version and upgrade supported service versions through manual upgrade or auto upgrade options.  

Cluster extensions expose a set of standard operations through the Azure CLI. Refer to the Azure CLI documentation and the AKS cluster extensions documentation for more details.  

 

# Install  
az k8s-extension create  

# Update  
az k8s-extension update  

# Delete
az k8s-extension delete  

Dapr cluster extension

Dapr is a portable, event-driven runtime that makes it easy for any developer to build resilient, stateless, and stateful applications. These apps can run on the cloud and edge embracing the diversity of languages and developer frameworks. Leveraging the benefits of a sidecar architecture, Dapr helps you tackle the challenges that come with building microservices and keeps your code platform agnostic. In particular, it helps with solving problems around services calling other services reliably and securely, building event-driven apps with pub-sub, and building applications that are portable across multiple cloud services and hosts (e.g., Kubernetes vs. a VM). 

By using the Dapr cluster extension for AKS to provision Dapr, you eliminate the overhead of having to download Dapr tooling and manually installing the runtime on your cluster. Additionally, the extension offers support for all native Dapr configuration capabilities through command-line parameters.  

 

The following command deploys the Dapr extension on an AKS cluster:

az k8s-extension create --extension-type Microsoft.Dapr \ 
--cluster-type managedClusters \ 
--cluster-name myAKSCluster \ 
--resource-group myResourceGroup \ 
--name myDaprExtension \ 
--version X.X.X.X 

 

You have the option of allowing Dapr to auto-update its minor version by specifying the--auto-upgrade-minor-versionparameter and setting the value totrue: 

--auto-upgrade-minor-version true 

 

For more detailed instructions, please refer to the Dapr cluster extension for AKS documentation. 

 

Azure Machine Learning cluster extension  

The Azure ML cluster extension for AKS is a machine learning operator that is deployed and managed on AKS using the cluster extension CLI. The Azure ML operator configures and attaches AKS clusters to Azure Machine Learning workspaces in order to train and manage machine learning models. Upon deploying the Azure ML cluster extension on AKS, the cluster can be attached as compute type to run training and inference models in your ML workspace.  

The design for the Azure ML extension helps IT operators leverage native Kubernetes concepts such as namespaces, node selectors, and resources requests/limits for ML compute utilization and optimization. By letting the IT operator manage the Azure ML compute setup, the Azure ML extension creates a seamless experience for data science professionals who do not need to learn or use Kubernetes directly.  

Azure Kubernetes Service clusters enables enterprises to run highly available ML and deep learning models with GPU compute. 

 

The following command deploys the Azure ML extension on an AKS cluster:

az k8s-extension create --extension-type Microsoft.AzureML.Kubernetes \ 
--cluster-type managedClusters \ 
--cluster-name myAKSCluster \ 
--resource-group myResourceGroup \ 
--name amlarc-compute \ 
--configuration-settings enableTraining=True \ 
--scope cluster 

For more detailed instruction, please refer to the Azure ML cluster extension for AKS documentation. 

Conclusion 

The extensions above allow users to use leading Azure service like machine learning and event driven open-source projects like Dapr on AKS through an easy deployment model.  

Learn more about Dapr and Azure Machine Learning. 

Learn more about the AKS roadmap   

Updated Oct 29, 2021
Version 1.0
No CommentsBe the first to comment