Dela via


Verifiera anslutningen till containerregistret

Den här artikeln ingår i en serie. Börja med översikten.

Om du vill distribuera containerbaserade program i ditt AKS-kluster (Azure Kubernetes Service) är det viktigt att du verifierar anslutningen mellan klustret och containerregistret. Det här steget garanterar att dina arbetsnoder har de behörigheter som krävs för att hämta de containeravbildningar som krävs från registret.

Identifiera symtom

När kubelet som körs på en agentnod skapar containrarna för en podd kan en eller flera container hamna i vänteläge på grund av ImagePullBackOff felet. ImagePullBackoff är ett vanligt felmeddelande i Kubernetes som anger att det inte gick att hämta den nödvändiga containeravbildningen från ett offentligt eller privat register. Olika faktorer kan orsaka det här felet, till exempel problem med nätverksanslutningen, ett felaktigt avbildningsnamn eller en felaktig tagg, otillräckliga behörigheter eller saknade autentiseringsuppgifter.

Den BackOff del av statusen som betyder att Kubernetes kontinuerligt försöker hämta avbildningen med en ökande fördröjning mellan varje efterföljande försök. Fördröjningen ökar gradvis tills den når en förutbestämd gräns, som vanligtvis är inställd på 300 sekunder (5 minuter) i Kubernetes.

Det är viktigt att dubbelkolla registret och avbildningsnamnet för noggrannhet. Se dessutom till att AKS-klustret har de behörigheter som krävs för att hämta avbildningar från rätt containerregister.

Rolltilldelningar

När du kopplar ett containerregister till ett befintligt AKS-kluster tilldelas AcrPull-rollen automatiskt över registret till den Microsoft Entra-hanterade identitet som är associerad med agentpoolerna i AKS-klustret. Mer information finns i Autentisera med Container Registry från AKS.

Kör följande kommando för att hämta den kubelet-hanterade identiteten för ett Kubernetes-kluster och dess aktuella rolltilldelningar:

# Get the kubelet managed identity.
ASSIGNEE=$(az aks show -g $RESOURCE_GROUP -n $NAME --query identityProfile.kubeletidentity.clientId -o tsv)
az role assignment list --assignee $ASSIGNEE --all -o table

Kör följande kommando för att tilldela AcrPull rollen till den kubelet-hanterade identiteten:

AZURE_CONTAINER_REGISTRY_ID=$(az acr show --name <container-registry-name> --query id --output tsv)
az role assignment create --assignee $ASSIGNEE --scope $AZURE_CONTAINER_REGISTRY_ID --role acrpull

Felsöka problem med Container Registry

Följande avsnitt innehåller guider som du kan referera till om du stöter på nätverks-, inloggnings- eller prestandaproblem med ett Azure-containerregister.

Felsöka nätverksproblem

Om du stöter på problem som rör åtkomst till ett Azure-containerregister i ett virtuellt nätverk eller bakom en brandvägg eller proxyserver bör du överväga följande lösningar:

Felsöka inloggningsproblem

Om du stöter på autentiserings- och auktoriseringsproblem när du loggar in i ett Azure-containerregister bör du överväga följande lösningar:

Felsöka prestandaproblem

Om du stöter på prestandaproblem med ett Azure-containerregister bör du överväga följande lösningar:

Dessa guider kan hjälpa dig att säkerställa sömlös bildhämtning för ditt AKS-kluster och säkerställa en smidig drift av dina arbetsbelastningar.

Integrera ett containerregister från tredje part

När du använder ett containerregister från tredje part måste du skapa lämpliga ImagePullSecret autentiseringsuppgifter för registret så att AKS-klustret kan komma åt containeravbildningarna på ett säkert sätt. Mer information finns i Skapa en avbildningshämtningshemlighet. Kontrollera att du har konfigurerat rätt behörigheter och autentiseringsuppgifter så att du kan verifiera anslutningen till containerregistret och aktivera AKS-klustret för att hämta de nödvändiga containeravbildningarna under distributionerna. Den här bästa metoden hjälper till att säkerställa en smidig och tillförlitlig körning av dina containerbaserade arbetsbelastningar i Kubernetes.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudsakliga författare:

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg