Risolvere i problemi di streaming degli artefatti
I passaggi per la risoluzione dei problemi descritti in questo articolo consentono di risolvere i problemi comuni che possono verificarsi quando si usa lo streaming degli artefatti in Registro Azure Container (Registro Azure Container). Questi passaggi e consigli possono aiutare a diagnosticare e risolvere i problemi relativi allo streaming degli artefatti, nonché fornire informazioni dettagliate sui processi e i log sottostanti a scopo di debug.
Sintomi
- L'operazione di conversione non è riuscita a causa di un errore sconosciuto.
- Risoluzione dei problemi relativi alle distribuzioni di pod del servizio Azure Kubernetes non riuscite.
- Le condizioni del pod indicano "UpgradeIfStreamableDisabled".
- Uso del digest anziché del tag per l'artefatto di streaming
Cause
- Problemi relativi all'autenticazione, alla latenza di rete, al recupero di immagini, alle operazioni di streaming o ad altri problemi.
- Problemi relativi al pull o al flusso di immagini, alle configurazioni degli artefatti di streaming, alle origini di immagini e ai vincoli delle risorse.
- Problemi relativi alle configurazioni o alle autorizzazioni del Registro Azure Container.
Operazione di conversione non riuscita
Codice di errore | Messaggio di errore | Informazioni sulla risoluzione dei problemi |
---|---|---|
UNKNOWN_ERROR | L'operazione di conversione non è riuscita a causa di un errore sconosciuto. | Causata da un errore interno. Un nuovo tentativo è utile qui. Se il nuovo tentativo non riesce, contattare il supporto tecnico. |
RESOURCE_NOT_FOUND | Operazione di conversione non riuscita perché la risorsa di destinazione non viene trovata. | Se l'immagine di destinazione non viene trovata nel Registro di sistema. Verificare gli errori di digitazione nel digest dell'immagine, se l'immagine viene eliminata o mancante nell'area di destinazione (ad esempio la coerenza della replica non è immediata) |
UNSUPPORTED_PLATFORM | La conversione non è attualmente supportata per la piattaforma di immagini. | Inizialmente sono supportate solo le immagini linux/amd64. |
NO_SUPPORTED_PLATFORM_FOUND | La conversione non è attualmente supportata per nessuna delle piattaforme immagine nell'indice. | Inizialmente sono supportate solo le immagini linux/amd64. Nessuna immagine con questa piattaforma viene trovata nell'indice di destinazione. |
UNSUPPORTED_MEDIATYPE | La conversione non è supportata per l'immagine MediaType. | La conversione può essere eseguita solo per le immagini con tipo di supporto: application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, application/vnd.docker.distribution.manifest.v2+json o application/vnd.docker.distribution.manifest.list.v2+json |
UNSUPPORTED_ARTIFACT_TYPE | La conversione non è supportata per l'immagine ArtifactType. | Gli artefatti di streaming (tipo di artefatto: application/vnd.azure.artifact.streaming.v1) non possono essere convertiti di nuovo. |
IMAGE_NOT_RUNNABLE | La conversione non è supportata per le immagini non eseguibili. | Inizialmente sono supportate solo le immagini eseguibili linux/amd64. |
Risoluzione dei problemi relativi alle distribuzioni di pod del servizio Azure Kubernetes non riuscite
Se la distribuzione dei pod del servizio Azure Kubernetes non riesce e viene visualizzato un errore relativo al pull delle immagini, come nell'esempio seguente
Failed to pull image "mystreamingtest.azurecr.io/jupyter/all-spark-notebook:latest":
rpc error: code = Unknown desc = failed to pull and unpack image
"mystreamingtest.azurecr.io/latestobd/jupyter/all-spark-notebook:latest":
failed to resolve reference "mystreamingtest.azurecr.io/jupyter/all-spark-notebook:latest":
unexpected status from HEAD request to http://localhost:8578/v2/jupyter/all-spark-notebook/manifests/latest?ns=mystreamingtest.azurecr.io:503 Service Unavailable
Per risolvere questo problema, verificare quanto segue:
- Verificare se il servizio Azure Kubernetes dispone delle autorizzazioni per accedere al registro contenitori
mystreamingtest.azurecr.io
- Assicurarsi che il registro
mystreamingtest.azurecr.io
contenitori sia accessibile e collegato correttamente al servizio Azure Kubernetes.
Verifica della condizione pod "UpgradeIfStreamableDisabled":
Se la condizione del pod del servizio Azure Kubernetes mostra "UpgradeIfStreamableDisabled", verificare se l'immagine proviene da un Registro Azure Container.
Uso del digest anziché del tag per l'artefatto di streaming:
Se si distribuisce l'artefatto di streaming usando digest anziché tag (ad esempio, mystreamingtest.azurecr.io/jupyter/all-spark-notebook@sha256:4ef83ea6b0f7763c230e696709d8d8c398e21f65542db36e82961908bcf58d18), l'evento e il messaggio della condizione del pod del servizio Azure Kubernetes non includeranno informazioni correlate allo streaming. Tuttavia, l'avvio rapido del contenitore viene visualizzato come motore del contenitore sottostante. Questo motore trasmette l'immagine al servizio Azure Kubernetes se rileva che il contenuto effettivo dell'immagine viene trasmesso.