Résoudre les problèmes de diffusion en continu d’artefacts
Les étapes de dépannage décrites dans cet article peuvent vous aider à résoudre les problèmes courants que vous pouvez rencontrer lors de l’utilisation de la diffusion en continu d’artefacts dans Azure Container Registry (ACR). Ces étapes et recommandations peuvent aider à diagnostiquer et à résoudre les problèmes liés à la diffusion en continu d’artefacts, ainsi qu’à fournir des insights sur les processus et journaux sous-jacents à des fins de débogage.
Symptômes
- Échec de l’opération de conversion en raison d’une erreur inconnue.
- Résolution des problèmes d’échec de déploiements de pod AKS.
- Les conditions de pod indiquent « UpgradeIfStreamableDisabled ».
- Utilisation de la synthèse au lieu d’une étiquette pour la diffusion en continu d’artefacts.
Causes
- Problèmes liés à l’authentification, à la latence réseau, à la récupération d’images ou aux opérations de diffusion en continu, ou autres problèmes.
- Problèmes liés à l’extraction ou à la diffusion en continu d’images, aux configurations d’artefacts de diffusion en continu, aux sources d’image et aux contraintes de ressources.
- Problèmes liés aux configurations ou autorisations ACR.
Échec de l’opération de conversion
Code d’erreur | Message d’erreur | Informations sur le dépannage |
---|---|---|
UNKNOWN_ERROR | Échec de l’opération de conversion en raison d’une erreur inconnue. | Provoquée par une erreur interne. Une nouvelle tentative vous aide ici. Si la nouvelle tentative échoue, contactez le support. |
RESOURCE_NOT_FOUND | Échec de l’opération de conversion, car la ressource cible est introuvable. | Si l’image cible est introuvable dans le registre, vérifiez s’il y a des fautes de frappe dans la synthèse de l’image. Si l’image est supprimée ou manquante dans la région cible (la cohérence de réplication n’est pas immédiate, par exemple) |
UNSUPPORTED_PLATFORM | La conversion n’est actuellement pas prise en charge pour la plateforme d’images. | Seules les images linux/amd64 sont initialement prises en charge. |
NO_SUPPORTED_PLATFORM_FOUND | La conversion n’est actuellement pas prise en charge pour les plateformes d’images dans l’index. | Seules les images linux/amd64 sont initialement prises en charge. Aucune image avec cette plateforme n’a été trouvée dans l’index cible. |
UNSUPPORTED_MEDIATYPE | La conversion n’est pas prise en charge pour le type de média de l’image. | La conversion peut uniquement cibler des images avec un type de média : application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, application/vnd.docker.distribution.manifest.v2+json ou application/vnd.docker.distribution.manifest.list.v2+json |
UNSUPPORTED_ARTIFACT_TYPE | La conversion n’est pas prise en charge pour le type d’artefact de l’image. | Les artefacts de diffusion en continu (type d’artefact : application/vnd.azure.artifact.streaming.v1) ne peuvent pas être convertis à nouveau. |
IMAGE_NOT_RUNNABLE | La conversion n’est pas prise en charge pour les images non exécutables. | Seules les images exécutables linux/amd64 sont initialement prises en charge. |
Résolution des problèmes d’échec de déploiements de pod AKS
Si le déploiement de pod AKS échoue avec une erreur liée au tirage d’images, comme dans l’exemple suivant.
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
Pour résoudre ce problème, vous devez consulter les instructions suivantes :
- Vérifiez si AKS a les autorisations nécessaires pour accéder au registre de conteneurs
mystreamingtest.azurecr.io
. - Vérifiez que le registre de conteneurs
mystreamingtest.azurecr.io
est accessible et correctement attaché à AKS.
Vérification de la condition de pod « UpgradeIfStreamableDisabled » :
Si la condition de pod AKS affiche « UpgradeIfStreamableDisabled », vérifiez si l’image provient d’Azure Container Registry.
Utilisation de la synthèse au lieu d’une étiquette pour la diffusion en continu d’artefacts :
Si vous déployez l’artefact de diffusion en continu à l’aide de la synthèse au lieu d’une balise (par exemple, mystreamingtest.azurecr.io/jupyter/all-spark-notebook@sha256:4ef83ea6b0f7763c230e696709d8d8c398e21f65542db36e82961908bcf58d18), le message d’événement et de condition de pod AKS n’inclut pas d’informations liées à la diffusion en continu. Toutefois, vous observez le démarrage rapide du conteneur comme moteur de conteneur sous-jacent. Ce moteur diffuse en continu l’image sur AKS s’il détecte que le contenu réel de l’image peut être diffusé en continu.