Řešení potíží se sítí s registrem
Tento článek vám pomůže vyřešit problémy, se kterými se můžete setkat při přístupu k registru kontejneru Azure ve virtuální síti nebo za bránou firewall nebo proxy serverem.
Příznaky
Může obsahovat jednu nebo více z následujících možností:
- Nejde nasdílit nebo vyžádat image a zobrazí se chyba
dial tcp: lookup myregistry.azurecr.io
- Nejde nasdílit nebo vyžádat image a zobrazí se chyba
Client.Timeout exceeded while awaiting headers
- Nejde nasdílit nebo vyžádat image a zobrazí se chyba Azure CLI
Could not connect to the registry login server
- Nejde načíst image z registru do služby Azure Kubernetes Service nebo jiné služby Azure
- Nejde získat přístup k registru za proxy serverem HTTPS a zobrazí se chyba
Error response from daemon: login attempt failed with status: 403 Forbidden
neboError response from daemon: Get <registry>: proxyconnect tcp: EOF Login failed
- Nejde nakonfigurovat nastavení virtuální sítě a zobrazí se chyba
Failed to save firewall and virtual network settings for container registry
- Nejde získat přístup k nastavením registru nebo zobrazit na webu Azure Portal nebo spravovat registr pomocí Azure CLI
- Nejde přidat nebo upravit nastavení virtuální sítě nebo pravidla veřejného přístupu
- Úlohy ACR nemůžou nasdílit nebo vyžádat image
- Microsoft Defender for Cloud nemůže prohledávat obrázky v registru nebo výsledky kontroly se nezobrazují v programu Microsoft Defender for Cloud.
- Při pokusu o přístup k registru nakonfigurovaného pomocí privátního koncového bodu se zobrazí chyba
host is not reachable
.
Příčiny
- Klientská brána firewall nebo proxy server brání přístupu – řešení
- Pravidla přístupu k veřejné síti v registru brání přístupu – řešení
- Konfigurace virtuální sítě nebo privátního koncového bodu brání přístupu – řešení
- Pokusíte se integrovat Microsoft Defender for Cloud nebo některé jiné služby Azure s registrem, který má privátní koncový bod, koncový bod služby nebo pravidla přístupu k veřejným IP adresům – řešení.
Další diagnostika
Spuštěním příkazu az acr check-health získejte další informace o stavu prostředí registru a volitelně přístup k cílovému registru. Můžete například diagnostikovat určité problémy s připojením k síti nebo konfigurací.
Příklady příkazů najdete v tématu Kontrola stavu registru kontejnerů Azure. Pokud jsou nahlášeny chyby, projděte si referenční informace o chybách a v následujících částech se podívejte na doporučená řešení.
Pokud máte problémy s používáním služby Azure Kubernetes Service s integrovaným registrem, spuštěním příkazu az aks check-acr ověřte, že se cluster AKS může spojit s registrem.
Poznámka:
K některým příznakům připojení k síti může dojít také v případě, že dochází k problémům s ověřováním nebo autorizací registru. Viz Řešení potíží s přihlášením k registru.
Potenciální řešení
Konfigurace přístupu k bráně firewall klienta
Pokud chcete získat přístup k registru za klientskou bránou firewall nebo proxy serverem, nakonfigurujte pravidla brány firewall pro přístup k veřejným koncovým bodům REST a dat registru. Pokud jsou povolené vyhrazené datové koncové body , potřebujete pravidla pro přístup:
- Koncový bod REST:
<registryname>.azurecr.io
- Koncové body dat:
<registry-name>.<region>.data.azurecr.io
Pro geograficky replikovaný registr nakonfigurujte přístup ke koncovému bodu dat pro každou regionální repliku.
Za proxy serverem HTTPS se ujistěte, že váš klient Dockeru i démon Dockeru jsou nakonfigurované pro chování proxy serveru. Pokud změníte nastavení proxy serveru pro démona Dockeru, nezapomeňte démona restartovat.
Protokoly prostředků registru v tabulce ContainerRegistryLoginEvents můžou pomoct diagnostikovat pokus o zablokované připojení.
Související odkazy:
- Konfigurace pravidel pro přístup k registru kontejnerů Azure za bránou firewall
- Konfigurace proxy serveru HTTP/HTTPS
- Geografická replikace ve službě Azure Container Registry
- Monitorování služby Azure Container Registry
Konfigurace veřejného přístupu k registru
Pokud přistupujete k registru přes internet, ověřte, že registr umožňuje přístup k veřejné síti z vašeho klienta. Registr kontejnerů Azure ve výchozím nastavení umožňuje přístup ke koncovým bodům veřejného registru ze všech sítí. Registr může omezit přístup k vybraným sítím nebo vybraným IP adresům.
Pokud je registr nakonfigurovaný pro virtuální síť s koncovým bodem služby, zakázání přístupu k veřejné síti také zakáže přístup přes koncový bod služby. Pokud je váš registr nakonfigurovaný pro virtuální síť se službou Private Link, pravidla sítě IP se nevztahují na privátní koncové body registru.
Související odkazy:
- Konfigurace pravidel veřejné sítě IP
- Privátní připojení k registru kontejnerů Azure pomocí služby Azure Private Link
- Omezení přístupu k registru kontejneru pomocí koncového bodu služby ve virtuální síti Azure
Konfigurace přístupu k virtuální síti
Ověřte, že je virtuální síť nakonfigurovaná buď s privátním koncovým bodem pro Private Link, nebo koncovým bodem služby (Preview). V současné době se koncový bod služby Azure Bastion nepodporuje.
Pokud je nakonfigurovaný privátní koncový bod, ověřte, že DNS přeloží veřejný plně kvalifikovaný název domény registru, například myregistry.azurecr.io na privátní IP adresu registru.
- Spuštěním příkazu az acr check-health s parametrem
--vnet
potvrďte směrování DNS do privátního koncového bodu ve virtuální síti. - Použijte síťový nástroj, například
dig
nslookup
vyhledávání DNS. - Ujistěte se, že jsou záznamy DNS nakonfigurované pro plně kvalifikovaný název domény registru a pro každý plně kvalifikovaný název domény koncového bodu dat.
Zkontrolujte pravidla skupiny zabezpečení sítě a značky služeb používané k omezení provozu z jiných prostředků v síti do registru.
Pokud je koncový bod služby do registru nakonfigurovaný, ověřte, že je do registru přidáno pravidlo sítě, které umožňuje přístup z této síťové podsítě. Koncový bod služby podporuje přístup pouze z virtuálních počítačů a clusterů AKS v síti.
Pokud chcete omezit přístup k registru pomocí virtuální sítě v jiném předplatném Azure, ujistěte se, že v daném předplatném Microsoft.ContainerRegistry
zaregistrujete poskytovatele prostředků. Zaregistrujte poskytovatele prostředků pro Azure Container Registry pomocí webu Azure Portal, Azure CLI nebo jiných nástrojů Azure.
Pokud je v síti nakonfigurované Azure Firewall nebo podobné řešení, zkontrolujte, jestli je povolený výchozí přenos dat z jiných prostředků, jako je cluster AKS, aby se dostal ke koncovým bodům registru.
Související odkazy:
- Privátní připojení k registru kontejnerů Azure pomocí služby Azure Private Link
- Řešení potíží s připojením k privátním koncovým bodům Azure
- Omezení přístupu k registru kontejneru pomocí koncového bodu služby ve virtuální síti Azure
- Požadovaná pravidla odchozí sítě a plně kvalifikované názvy domén pro clustery AKS
- Kubernetes: Ladění překladu DNS
- Značky služeb virtuální sítě
Konfigurace přístupu ke službě
Přístup k registru kontejneru s omezeními sítě v současné době není povolený z několika služeb Azure:
- Microsoft Defender for Cloud nemůže v registru provádět kontrolu ohrožení zabezpečení image, která omezuje přístup k privátním koncovým bodům, vybraným podsítím nebo IP adresám.
- Prostředky některých služeb Azure nemají přístup k registru kontejneru s omezeními sítě, včetně služby Aplikace Azure Service a služby Azure Container Instances.
Pokud se vyžaduje přístup nebo integrace těchto služeb Azure s registrem kontejneru, odeberte omezení sítě. Odeberte například privátní koncové body registru nebo odeberte nebo upravte pravidla veřejného přístupu registru.
Od ledna 2021 můžete nakonfigurovat registr s omezeným přístupem k síti tak, aby umožňoval přístup z vybraných důvěryhodných služeb.
Související odkazy:
- Kontrola imagí služby Azure Container Registry v programu Microsoft Defender pro registry kontejnerů
- Poskytnout zpětnou vazbu
- Povolit důvěryhodným službám zabezpečený přístup k registru kontejneru s omezeným přístupem k síti
Řešení potíží na pokročilé úrovni
Pokud je v registru povolená kolekce protokolů prostředků, zkontrolujte protokol ContainterRegistryLoginEvents. Tento protokol ukládá události a stav ověřování, včetně příchozí identity a IP adresy. Dotazování protokolu na selhání ověřování registru
Související odkazy:
- Protokoly pro diagnostické vyhodnocení a auditování
- Nejčastější dotazy ke službě Container Registry
- Standardní hodnoty zabezpečení Azure pro Azure Container Registry
- Osvědčené postupy pro Azure Container Registry
Další kroky
Pokud tady problém nevyřešíte, podívejte se na následující možnosti.
- Mezi další témata pro řešení potíží s registrem patří:
- Možnosti podpory komunity
- Microsoft – otázky&odpovědi
- Otevření lístku podpory