Install MLRun CE on Azure#

These instructions explain how to install MLRun CE on your Azure Kubernetes Service (AKS) cluster.

Note

These instructions install the community edition v0.12, which currently includes the features in MLRun v1.12.0.

In this section

Prerequisites#

Note

The MLRun CE resources are configured initially with the default cluster/namespace resource limits. You can modify the resources from outside if needed. See Advanced chart configuration.

Prepare values files#

Create azure-values.yaml with your container registry and storage settings.

  1. Download the azure values file template.

  2. Copy and edit azure-values.yaml — fill in your registry URL, secret name, and storage settings:

storage:
  mode: "azure-blob"
  azure:
    containerName: "data"
    accountName: "<name of the storage account>"
    connectionString: "DefaultEndpointsProtocol=https;AccountName=<name of the storage>;AccountKey=<account key>;EndpointSuffix=core.windows.net"

global:
  registry:
    url: "<url of the registry>"
    secretName: "acr-registry-credentials"

Storage options#

MLRun CE can store MLRun artifact data in Azure Blob Storage instead of the default S3-compatible (SeaweedFS) setup used for MLRun CE. See Using Azure Blob Storage for MLRun artifacts.

Create the container registry secret#

Using Azure Container Registry (ACR):

export ACR_NAME="<acr-name>"
export ACR_TOKEN=$(az acr login --name "${ACR_NAME}" --expose-token --output tsv --query accessToken)

kubectl --namespace mlrun create secret docker-registry acr-registry-credentials \
    --docker-server="<url of the registry>" \
    --docker-username="00000000-0000-0000-0000-000000000000" \
    --docker-password="${ACR_TOKEN}" \
    --docker-email="not-used@example.com"

The secret name must match global.registry.secretName in azure-values.yaml (default: acr-registry-credentials).

Installation#

  1. Add the MLRun CE Helm repo:

helm repo add mlrun-ce https://mlrun.github.io/ce
helm repo update
  1. Install MLRun CE using azure-values.yaml:

helm install mlrun-ce mlrun-ce/mlrun-ce \
  --namespace mlrun \
  --wait \
  --timeout 2000s \
  -f azure-values.yaml

Optional: Ingress configuration#

If you prefer ingress-based access instead of NodePort, optionally add values-ingress-override.yaml to the install command. See Ingress Configuration.

Uninstalling the chart#

helm --namespace mlrun uninstall mlrun-ce

See the Kubernetes uninstall notes for guidance on cleaning up persistent volumes and other dangling resources.