Install or Upgrade—Deploy or Release—on Azure AKS
Note: Here is a basic setup for the Azure K8S cluster, use it as a guideline to create K8s cluster to have minimal K8s environment for Digital.ai Deploy or Release installation.
Prerequisites
- Read and understand the Plan Your Installation or Upgrade page XL CLI's xl kube command
- A computer that runs Windows, macOS, or Linux to install and run the kubectl and other CLIs
- An Azure account
- An Azure AKS cluster where you install Digital.ai Deploy or Release
- A domain name on which you want to run Digital.ai Deploy or Release
- kubectl
- XL CLI 23.3.0 or later
- Azure CLI
- yq 4.18.2 or later
Important: If you want to enable the TLS protocol in your cluster, you must have the TLS secret created in the namespace before you start the installation or upgrade. This means that you must create the namespace first, create the TLS secret in that namespace, and use the same namespace and TLS secret during the installation or upgrade of Digital.ai Deploy or Release.
The xl kube install
and xl kube upgrade
options reference let you go with the default (latest) docker image tags available when you install or upgrade Digital.ai Deploy or Release. However, here are the Docker Hub links to verify all the available image tags.
- Digital.ai Deploy Operator Image
- Digital.al Release Operator Image
- Digital.ai Deploy Image
- Digital.ai Release Image
- Digital.ai Deploy Task Engine Image
- Digital.ai Deploy Central Configuration Image
Step 1—Prepare for Installation
You must set up your system for installation, which include installing the kubectl, the required CLIs, and so on.
Install and Configure the kubectl, XL CLI, Azure CLI, and yq
See:
- Install kubectl
- Install and Configure XL CLI 23.3.0 or later
- Install the Azure CLI
- Install the yq 4.18.2 or later
Step 2—Set up the Azure AKS Cluster
This step involves tasks such as setting up the resource group, creating a TLS private key, creating the AKS cluster and connecting to it, creating Azure File and Azure Disk storage classes, and setting up the domain name.
Note: The instructions to set up the cluster are indicative of the process. You may have to keep abreast of the latest developments in regards to the cloud platform you work with and set up the cluster to suit your requirements.
Create the Resource Group
Run the az group create
command to create a resource group. Here's an example.
❯ az group create --name xld-operator-group --location germanywestcentral
{
"id": "/subscriptions/.../resourceGroups/xld-operator-group",
"location": "germanywestcentral",
"managedBy": null,
"name": "xld-operator-group",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Create TLS Public and Private Keys
Run the ssh-keygen
command to generate the public and private keys. Here's an example.
ssh-keygen -f ssh-key-xld-operator-cluster -N "" -m pem
Use the use public file ssh-key-xld-operator-cluster.pub
public key when you create your Azure AKS cluster.
Create the Azure AKS cluster.
Run the az aks create
command to create the AKS cluster. Here's an example with the TLS key added to it.
❯ az aks create --resource-group xld-operator-group --name xld-operator-cluster --node-count 1 --enable-addons monitoring --ssh-key-value ssh-key-xld-operator-cluster.pub
Here's the example output for the above command:
AAD role propagation done[############################################] 100.0000%{
"aadProfile": null,
...
"sku": {
"name": "Basic",
"tier": "Free"
},
"tags": null,
"type": "Microsoft.ContainerService/ManagedClusters",
"windowsProfile": null
}
For more information, see Deploy an Azure Kubernetes Service cluster using the Azure CLI.
Connect to the Cluster
Run the az aks get-credentials
command to connect to the cluster.
Here's an example.
❯ az aks get-credentials --resource-group xld-operator-group --name xld-operator-cluster
Merged "xld-operator-cluster" as current context in /Users/johndoe/.kube/config
Verify the Cluster Nodes