Prerequisites for AKS

The instructions in this section cover the prerequisites needed for using the Anjuna Kubernetes Toolset for AMD SEV when your Kubernetes cluster is a managed Azure Kubernetes Service (AKS).

This includes the prerequisites needed for installing the toolset and for deploying Pods:

Prerequisites for installing the Anjuna Kubernetes Toolset - AKS

Installing the Anjuna Kubernetes Toolset on an Azure Confidential VM requires a management host running Ubuntu Linux 22.04 with at least 4GB of available memory and 20GB of free disk space.

Tools

This guide assumes that your machine has the following tools installed:

  • az (2.51 or later)

  • docker (as a non-root user)

  • git

  • envsubst (available in Debian/Ubuntu via apt install gettext-base)

  • go (1.20 or later)

  • Helm (v3.11 or later)

  • jq (1.6 or later)

  • kubectl (1.34 or later)

  • terraform (1.0.0 or later)

This guide assumes an x86-based machine. Some of the commands in this guide are not compatible with ARM-based machines, such as Apple Silicon laptops.

Cloud services

This guide requires access to the following cloud service provider services:

  • Azure Kubernetes Services (AKS)

  • Azure Entra ID - formerly known as Azure Active Directory (AAD)

  • Azure Container Registry (ACR)

  • Azure Confidential VMs (CVMs)

  • Azure Storage Accounts

  • Azure Compute Gallery

You should have at least a Contributor role to create new resources.

Anjuna SEV Runtime

The Anjuna Seaglass Kubernetes Toolset for SEV requires the Anjuna Seaglass SEV Runtime to build the Anjuna Confidential Pod (Confidential Pod) images.

Refer to the Supported Anjuna Seaglass SEV Runtime versions for the Anjuna Seaglass Kubernetes Toolset for SEV versions matrix. The matrix shows the Anjuna Seaglass SEV Runtime version that can be used with v2.1 of the Anjuna Seaglass Kubernetes Toolset for SEV.

Supported versions of Kubernetes in AKS

Azure Kubernetes Service (AKS) supports Kubernetes versions as described on this AKS page. Anjuna aims to support new Kubernetes versions in AKS as close to their availability date as possible.

Refer to the Supported Kubernetes versions in AKS by the Anjuna Seaglass Kubernetes Toolset for SEV matrix. The matrix shows the Kubernetes versions in AKS that are supported by v2.1 of the Anjuna Seaglass Kubernetes Toolset for SEV.

Prerequisites for deploying Pods as Anjuna Confidential Pods - AKS

This guide assumes that your machine has the following tools installed:

Azure permissions

This guide requires that you have a Contributor role in Azure, and can access the following services:

  • Azure Kubernetes Services (AKS)

  • Azure Container Registry (ACR)

  • Azure Storage Accounts

  • Azure Compute Galleries (also known as Shared Image Galleries)

Configure the environment and cluster access

If the Anjuna Kubernetes Toolset is not installed to your cluster, follow the cluster setup instructions in the Installing the Anjuna Kubernetes Toolset to Azure Kubernetes Service (AKS) section. This is required to proceed.

Refer to Verify the installation to verify if the Anjuna Kubernetes Toolset is correctly installed to your cluster.

Once the Anjuna Kubernetes Toolset is installed, you can configure your environment using the scripts included in the installer bundle. The scripts will use the Terraform output to set environment variables that are needed by anjuna-k8s-cli.

Configure your environment by running the following commands:

$ cd "${WORKSPACE}"
$ source ${WORKSPACE}/iac/azure/shared/env.sh
$ source ${WORKSPACE}/iac/azure/cluster/env.sh

Then, configure kubectl to point to your cluster. For example, to use the cluster provisioned by Terraform, run:

$ az aks get-credentials \
  --resource-group "${AZURE_AKS_RG}" \
  --name "${AZURE_CLUSTER_NAME}"