Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här artikeln beskrivs hur du identifierar och löser felkoden "CustomPrivateDNSZoneMissingPermissionError" som inträffar när du försöker skapa eller uppdatera ett AkS-kluster (Microsoft Azure Kubernetes Service).
Förutsättningar
- 
              Azure CLI, version 2.53.0 eller senare. Kör 
az --versionför att hitta den installerade versionen. 
Symptome
Det går inte att skapa eller uppdatera ett AKS-kluster och returnerar följande felmeddelande:
Kod: CustomPrivateDNSZoneMissingPermissionError
Meddelande: Tjänstens huvudnamn eller användartilldelade identitet måste ha behörighet att läsa och skriva till anpassad privat dns-zon <custom-private-dns-zone-resource-id>. Kontrollera att tillgången inte är tillåten för åtgärden Microsoft.Network/privateDnsZones/read.
Orsak
Innan AKS kör en klusterskapnings- eller uppdateringsåtgärd för ett privat kluster som använder en anpassad privat DNS-zon kontrollerar det om klustrets hanterade identitet eller tjänstens huvudnamn har de behörigheter som krävs för att styra den privata DNS-zonen. Om AKS inte hittar de behörigheter som krävs blockerar den åtgärden så att klustret inte hamnar i ett misslyckat tillstånd.
Lösning
Följ dessa steg för att skapa rolltilldelningen som saknas:
Hämta resurs-ID:t för klustrets privata DNS-zon genom att köra kommandot az aks show och lagra det som variabeln
CUSTOM_PRIVATE_DNS_ZONE_ID:CUSTOM_PRIVATE_DNS_ZONE_ID=$(az aks show \ --resource-group <aks-resource-group> \ --name <aks-cluster-name> \ --query apiServerAccessProfile.privateDnsZone \ --output tsv)Anmärkning
Eftersom resurs-ID:t för den anpassade privata DNS-zonen också visades i det ursprungliga felmeddelandet kan du också tilldela resurs-ID:t till variabeln i stället för att köra
az aks showkommandot.Tilldela rollen Privat DNS-zondeltagare till klustrets hanterade identitet eller tjänstens huvudnamn genom att köra kommandot az role assignment create :
az role assignment create --role "Private DNS Zone Contributor" \ --scope $CUSTOM_PRIVATE_DNS_ZONE_ID \ --assignee <control-plane-principal-id>
Anmärkning
Det kan ta upp till 60 minuter att slutföra beviljandet av behörigheter till klustrets hanterade identitet eller tjänstens huvud.
Kontakta oss för att få hjälp
Om du har frågor eller behöver hjälp, skapa en supportförfrågan, eller fråga Azures community-support. Du kan också lämna produktfeedback till Azure feedback-community.