Ověření připojení k registru kontejneru
Tento článek je součástí série článků. Začněte přehledem.
K úspěšnému nasazení kontejnerizovaných aplikací v clusteru Azure Kubernetes Service (AKS) je nezbytné ověřit připojení mezi clusterem a registrem kontejneru. Tento krok zaručuje, že pracovní uzly mají potřebná oprávnění k vyžádání požadovaných imagí kontejneru z registru.
Identifikace příznaků
Když kubelet, který běží na uzlu agenta, vytvoří kontejnery pro pod, jeden nebo více kontejnerů může kvůli chybě skončit ve stavu ImagePullBackOff
čekání. ImagePullBackoff je běžná chybová zpráva v Kubernetes, která indikuje selhání načtení požadované image kontejneru z veřejného nebo privátního registru. Tato chyba může způsobit různé faktory, včetně problémů s připojením k síti, nesprávného názvu nebo značky image, nedostatečných oprávnění nebo chybějících přihlašovacích údajů.
Část BackOff
stavu označuje, že Se Kubernetes neustále pokouší načíst image se zvyšujícím zpožděním mezi každým dalším pokusem. Zpoždění se postupně zvyšuje, dokud nedosáhne předem určeného limitu, což je obvykle nastavené na 300 sekund (5 minut) v Kubernetes.
Je důležité pečlivě zkontrolovat přesnost názvu registru a image. Kromě toho se ujistěte, že váš cluster AKS má potřebná oprávnění k vyžádání imagí z příslušného registru kontejneru.
Přiřazení rolí
Když připojíte registr kontejneru k existujícímu clusteru AKS, role AcrPull se automaticky přiřadí registru ke spravované identitě Microsoft Entra, která je přidružená k fondům agentů ve vašem clusteru AKS. Další informace najdete v tématu Ověřování ve službě Container Registry z AKS.
Spuštěním následujícího příkazu načtěte spravovanou identitu kubeletu clusteru Kubernetes a jeho aktuální přiřazení rolí:
# 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
Spuštěním následujícího příkazu přiřaďte AcrPull
roli spravované identitě kubelet:
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
Řešení potíží se službou Container Registry
Následující části obsahují příručky, na které můžete odkazovat, pokud v registru kontejneru Azure narazíte na problémy se sítí, přihlášením nebo výkonem.
Řešení potíží se sítí
Pokud narazíte na problémy související s přístupem k registru kontejneru Azure ve virtuální síti nebo za bránou firewall nebo proxy serverem, zvažte následující řešení:
- Nakonfigurujte přístup k bráně firewall klienta.
- Nakonfigurujte veřejný přístup k registru.
- Nakonfigurujte přístup k virtuální síti.
- Nakonfigurujte přístup pro služby.
Řešení potíží s přihlášením
Pokud při přihlašování k registru kontejnerů Azure narazíte na problémy s ověřováním a autorizací, zvažte následující řešení:
- Zkontrolujte konfiguraci Dockeru ve vašem prostředí.
- Zadejte správný název registru.
- Ověřte přihlašovací údaje pro přístup k registru.
- Nakonfigurujte veřejný přístup k registru.
- Řešení potíží s přihlášením k registru
- Zkontrolujte, že nevypršela platnost přihlašovacích údajů.
Řešení potíží s výkonem
Pokud u registru kontejneru Azure narazíte na problémy s výkonem, zvažte následující řešení:
- Povolte mezipaměť artefaktů.
- Zkontrolujte rychlost síťového připojení.
- Zkontrolujte klientský hardware, který může mít vliv na kompresi vrstvy obrazu nebo rychlost extrakce.
- Zkontrolujte nakonfigurovaná omezení v úrovni služby registru nebo prostředí.
- Nakonfigurujte geograficky replikovaný registr pro optimální výkon s replikami v blízkých oblastech.
- Optimalizujte konfiguraci DNS pro načítání z geograficky vzdálené repliky registru.
Tyto příručky vám můžou pomoct zajistit bezproblémové načítání imagí pro cluster AKS a zajistit hladký provoz úloh.
Integrace registru kontejneru třetí strany
Pokud používáte registr kontejneru třetí strany, musíte vytvořit odpovídající ImagePullSecret
přihlašovací údaje pro registr, aby váš cluster AKS mohl bezpečně přistupovat k imagím kontejneru. Další informace najdete v tématu Vytvoření tajného kódu pro vyžádání image. Ujistěte se, že jste nastavili správná oprávnění a přihlašovací údaje, abyste mohli ověřit připojení k registru kontejneru a umožnit clusteru AKS úspěšně vyžádat požadované image kontejneru během nasazení. Tento osvědčený postup pomáhá zajistit hladké a spolehlivé spouštění kontejnerizovaných úloh v Kubernetes.
Přispěvatelé
Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.
Hlavní autoři:
- Paul Salvatori | Hlavní zákaznický inženýr
- Francis Simy Nazareth | Vedoucí technický specialista
Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.