Creación de un clúster de AKS habilitado para Arc en una zona extendida

En este artículo, sabrá cómo crear un clúster de AKS habilitado para Arc en una zona extendida. Este clúster le ayuda a implementar servicios PaaS a través de Azure Arc. Para las cargas de trabajo de PaaS admitidas actualmente, consulte ofertas de Service para Azure Extended Zones.

Prerrequisitos

Cómo empezar

Si ya está familiarizado con el asunto, puede omitir este párrafo. Estos son los temas importantes que puede leer antes de continuar con la creación:

Configuración

Instale las siguientes extensiones de la CLI de Azure.

az extension add --name connectedk8s  --upgrade --yes
az extension add --name k8s-extension --upgrade --yes
az extension add --name customlocation --upgrade --yes

Registre los espacios de nombres necesarios.

az provider register --namespace Microsoft.ExtendedLocation --wait
az provider register --namespace Microsoft.KubernetesConfiguration --wait
az provider register --namespace Microsoft.App --wait
az provider register --namespace Microsoft.OperationalInsights --wait

Creación de un clúster de AKS habilitado para Arc en zonas extendidas

Antes de implementar cargas de trabajo de PaaS en Zonas extendidas, cree un clúster de AKS habilitado para Arc en la zona extendida de destino. El siguiente script le ayuda a crear el clúster y facilita la implementación de los servicios PaaS admitidos. Para obtener más información sobre estos servicios, consulte el contenido relacionado al final de este artículo.

Nota:

Asegúrese de mantener los parámetros coherentes y transferirlos correctamente de este script a los siguientes scripts.

# Create an Arc-enabled AKS cluster on an edge zone
function createArcEnabledAksOnEz {
    param(
        [string] $SubscriptionId,
        [string] $AKSClusterResourceGroupName,
        [string] $location = "westus",
        [string] $AKSName,
        [string] $edgeZone,
        [int] $nodeCount = 2,
        [string] $vmSize = "standard_nv12ads_a10_v5",
        [string] $ArcResourceGroupName,
        [switch] $Debug
    )
    # Set the subscription
    az account set --subscription $SubscriptionId
    
    # Login to Azure
    az provider register --namespace Microsoft.AzureArcData
    
    # Create new resource group
    az group create --name $AKSClusterResourceGroupName --location $location

    # Create new cluster and deploy in edge zone
    Write-Output "Creating AKS cluster in edge zone..." 
    az aks create -g $AKSClusterResourceGroupName -n $AKSName --location $location --edge-zone $edgeZone --node-count $nodeCount -s $vmSize --generate-ssh-keys 
    
    # Create new resource group for Arc
    az group create --name $ArcResourceGroupName --location eastus

    # Download cluster credentials and get AKS cluster context
    az aks get-credentials --resource-group $AKSClusterResourceGroupName --name $AKSName --overwrite-existing

    # Connect the AKS cluster to Arc
    $CLUSTER_NAME = "$ArcResourceGroupName-cluster" # Name of the connected cluster resource
    Write-Output "Connecting AKS cluster to Azure Arc..."
    az connectedk8s connect --resource-group $ArcResourceGroupName --name $CLUSTER_NAME

    # DEBUG: Test connection to Arc
    if ($Debug) {
        Write-Debug az connectedk8s show --resource-group $ArcResourceGroupName --name $CLUSTER_NAME
    }
}


createArcEnabledAksOnEz -SubscriptionId "ffc37441-49e9-4291-a520-0b2d4972bb99" `
                        -AKSClusterResourceGroupName "t1" `
                        -location "westus" `
                        -AKSName "my-aks-cluster" `
                        -edgeZone "losangeles" `
                        -nodeCount 2 `
                        -vmSize "standard_nv12ads_a10_v5" `
                        -ArcResourceGroupName "t2"

Limpieza de recursos

Cuando ya no necesite los recursos, elimine el grupo de recursos my-aks-cluster y todos los recursos que contiene mediante el comando az group delete .

az group delete --name my-aks-cluster