Partager via


Créer un cluster NAP (Node Auto-Provisioning) dans un réseau virtuel personnalisé dans Azure Kubernetes Service (AKS)

Cet article vous montre comment créer un réseau virtuel et un sous-réseau, créer une identité managée avec des autorisations pour accéder au réseau virtuel et créer un cluster Azure Kubernetes Service (AKS) dans votre réseau virtuel personnalisé avec l’approvisionnement automatique de nœuds activé.

Prerequisites

Limites

Créer un réseau virtuel et un sous-réseau

Important

Lorsque vous utilisez un réseau virtuel personnalisé avec NAP, gardez à l’esprit les informations suivantes :

  • Vous devez créer et déléguer un sous-réseau de serveur d’API à Microsoft.ContainerService/managedClusters, qui accorde les autorisations de service AKS pour injecter les pods du serveur d’API et l’équilibreur de charge interne dans ce sous-réseau. Vous ne pouvez pas utiliser le sous-réseau pour d’autres charges de travail, mais vous pouvez l’utiliser pour plusieurs clusters AKS situés dans le même réseau virtuel. La taille minimale du sous-réseau du serveur d’API prise en charge est /28.
  • Tout le trafic au sein du réseau virtuel est autorisé par défaut. Toutefois, si vous avez ajouté des règles de groupe de sécurité réseau (NSG) pour restreindre le trafic entre différents sous-réseaux, vous devez vous assurer de configurer les autorisations appropriées. Pour plus d’informations, consultez la documentation du groupe de sécurité réseau.
  1. Créez un réseau virtuel à l’aide de la az network vnet create commande.

    az network vnet create \
        --name $VNET_NAME \
        --resource-group $RG_NAME \
        --location $LOCATION \
        --address-prefixes 172.19.0.0/16
    
  2. Créez un sous-réseau à l’aide de la commande et délèguez-le az network vnet subnet create à Microsoft.ContainerService/managedClusters.

    az network vnet subnet create \
        --resource-group $RG_NAME \
        --vnet-name $VNET_NAME \
        --name $SUBNET_NAME \
        --delegations Microsoft.ContainerService/managedClusters \
        --address-prefixes 172.19.0.0/28
    

Créer une identité managée et lui accorder des autorisations d’accès au réseau virtuel

  1. Créez une identité managée à l’aide de la commande az identity create.

    az identity create \
        --resource-group $RG_NAME \
        --name $IDENTITY_NAME \
        --location $LOCATION
    
  2. Obtenez l’ID principal de l’identité managée et définissez-la sur une variable d’environnement à l’aide de la commande [az identity show][az-identity-show].

    IDENTITY_PRINCIPAL_ID=$(az identity show --resource-group $RG_NAME --name $IDENTITY_NAME --query principalId -o tsv)
    
  3. Attribuez le rôle Contributeur réseau à l’identité managée à l’aide de la az role assignment create commande.

    az role assignment create \
        --scope "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.Network/virtualNetworks/$VNET_NAME" \
        --role "Network Contributor" \
        --assignee $IDENTITY_PRINCIPAL_ID
    

Créer un cluster AKS avec l’approvisionnement automatique de nœud (NAP) dans un réseau virtuel personnalisé

  1. Créez un cluster AKS avec NAP activé dans votre réseau virtuel personnalisé à l’aide de la az aks create commande. Veillez à configurer l’indicateur --node-provisioning-mode à Auto pour activer NAP.

    La commande suivante définit également --network-plugin à azure, --network-plugin-mode à overlay, et --network-dataplane à cilium. Pour plus d’informations sur les configurations réseau prises en charge avec NAP, consultez Configurer la mise en réseau pour l’approvisionnement automatique de nœuds sur AKS.

    az aks create \
        --name $CLUSTER_NAME \
        --resource-group $RG_NAME \
        --location $LOCATION \
        --assign-identity "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$IDENTITY_NAME" \
        --network-dataplane cilium \
        --network-plugin azure \
        --network-plugin-mode overlay \
        --vnet-subnet-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.Network/virtualNetworks/$CUSTOM_VNET_NAME/subnets/$SUBNET_NAME" \
        --node-provisioning-mode Auto
    

    Au bout de quelques minutes, la commande se termine et retourne des informations au format JSON sur le cluster.

  2. Configurez kubectl afin de vous connecter à votre cluster Kubernetes avec la commande az aks get-credentials. Cette commande télécharge les informations d’identification et configure l’interface CLI Kubernetes pour les utiliser.

    az aks get-credentials \
        --resource-group $RG_NAME \
        --name $CLUSTER_NAME
    
  3. Pour vérifier la connexion à votre cluster, exécutez la commande kubectl get. Cette commande renvoie la liste des nœuds de cluster.

    kubectl get nodes
    

Étapes suivantes

Pour plus d’informations sur le provisionnement automatique de nœuds dans AKS, consultez les articles suivants :