Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article explique comment identifier et résoudre le code d’erreur « CustomPrivateDNSZoneMissingPermissionError » qui se produit lorsque vous essayez de créer ou de mettre à jour un cluster Microsoft Azure Kubernetes Service (AKS).
Conditions préalables
-
Azure CLI, version 2.53.0 ou ultérieure. Exécutez
az --version
pour rechercher la version installée.
Symptômes
Une opération de création ou de mise à jour d’un cluster AKS échoue et retourne le message d’erreur suivant :
Code : CustomPrivateDNSZoneMissingPermissionError
Message : Le principal du service ou l’identité affectée par l’utilisateur doit avoir l’autorisation de lire et d’écrire dans une zone DNS privée personnalisée <custom-private-dns-zone-resource-id>. Vérifiez le résultat d’accès non autorisé pour l’action Microsoft.Network/privateDnsZones/read.
La cause
Avant d’exécuter une opération de création ou de mise à jour de cluster pour un cluster privé qui utilise une zone DNS privée personnalisée, il vérifie si l’identité managée ou le principal de service du cluster dispose des autorisations nécessaires pour contrôler la zone DNS privée. Si AKS ne trouve pas les autorisations nécessaires, il bloque l’opération afin que le cluster n’entre pas dans un état d’échec.
Solution
Pour créer l’attribution de rôle manquante, procédez comme suit :
Obtenez l’ID de ressource de la zone DNS privée du cluster en exécutant la commande az aks show et stockez-la
CUSTOM_PRIVATE_DNS_ZONE_ID
en tant que variable :CUSTOM_PRIVATE_DNS_ZONE_ID=$(az aks show \ --resource-group <aks-resource-group> \ --name <aks-cluster-name> \ --query apiServerAccessProfile.privateDnsZone \ --output tsv)
Remarque
Étant donné que l’ID de ressource de la zone DNS privée personnalisée a également été affiché dans le message d’erreur d’origine, vous pouvez également affecter cet ID de ressource à la variable au lieu d’exécuter la
az aks show
commande.Attribuez le rôle Contributeur de zone DNS privée au principal de service ou d’identité managée du cluster en exécutant la commande az role assignment create :
az role assignment create --role "Private DNS Zone Contributor" \ --scope $CUSTOM_PRIVATE_DNS_ZONE_ID \ --assignee <control-plane-principal-id>
Remarque
La fin de l’octroi d’autorisations à l’identité managée ou au principal de service de votre cluster peut prendre jusqu’à 60 minutes.
Contactez-nous pour obtenir de l’aide
Si vous avez des questions ou avez besoin d’aide, créez une demande de support ou demandez le support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.