Problembehandlung beim Artefaktstreaming
Mit den Schritten zur Problembehandlung in diesem Artikel können Sie häufige Probleme beheben, die beim Verwenden des Artefaktstreamings in einer Azure Container Registry (ACR) auftreten können. Diese Schritte und Empfehlungen können helfen, Probleme im Zusammenhang mit Artefaktstreaming zu diagnostizieren und zu beheben. Sie bieten außerdem Einblicke in die zugrunde liegenden Prozesse und Protokolle für Debuggingzwecke.
Problembeschreibung
- Der Konvertierungsvorgang ist aufgrund eines unbekannten Fehlers fehlgeschlagen.
- Problembehandlung bei fehlgeschlagenen AKS-Pod-Bereitstellungen.
- Pod-Bedingungen geben „UpgradeIfStreamableDisabled“ an.
- Verwenden Sie Digest anstelle von Tag für Streamingartefakte.
Ursachen
- Probleme mit Authentifizierung, Netzwerklatenz, Abrufen von Images, Streamingvorgängen oder andere Probleme.
- Probleme mit Abrufen oder Streaming von Images, Streamingartefaktekonfigurationen, Imagequellen und Ressourceneinschränkungen.
- Probleme mit ACR-Konfigurationen oder -Berechtigungen.
Konvertierungsvorgang fehlgeschlagen
Fehlercode | Fehlermeldung | Informationen zur Problembehandlung |
---|---|---|
UNKNOWN_ERROR | Der Konvertierungsvorgang ist aufgrund eines unbekannten Fehlers fehlgeschlagen. | Verursacht durch einen internen Fehler. Ein Wiederholungsversuch hilft hier. Wenn der Wiederholungsversuch nicht erfolgreich ist, wenden Sie sich an den Support. |
RESOURCE_NOT_FOUND | Der Konvertierungsvorgang ist fehlgeschlagen, da die Zielressource nicht gefunden wurde. | Wenn das Zielimage in der Registrierung nicht gefunden wird, überprüfen Sie Tippfehler im Imagedigest. Wenn das Bild gelöscht wird oder in der Zielregion fehlt (Replikationskonsistenz ist z. B. nicht sofort möglich) |
UNSUPPORTED_PLATFORM | Die Konvertierung wird derzeit für die Imageplattform nicht unterstützt. | Es werden zunächst nur Linux/amd64-Images unterstützt. |
NO_SUPPORTED_PLATFORM_FOUND | Die Konvertierung wird derzeit für keine der Imageplattformen im Index unterstützt. | Es werden zunächst nur Linux/amd64-Images unterstützt. Es wurde kein Image mit dieser Plattform im Zielindex gefunden. |
UNSUPPORTED_MEDIATYPE | Die Konvertierung wird für den Medientyp des Images nicht unterstützt. | Die Konvertierung kann nur Images mit folgenden Medientypen verwenden: application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, application/vnd.docker.distribution.manifest.v2+json oder application/vnd.docker.distribution.manifest.list.v2+json |
UNSUPPORTED_ARTIFACT_TYPE | Die Konvertierung wird für den Artefakttyp des Images nicht unterstützt. | Streamingartefakte (Artefakttyp: application/vnd.azure.artifact.streaming.v1) können nicht erneut konvertiert werden. |
IMAGE_NOT_RUNNABLE | Die Konvertierung wird für nicht ausführbare Images nicht unterstützt. | Anfänglich werden nur ausführbare Linux/amd64-Images unterstützt. |
Problembehandlung bei fehlgeschlagenen AKS-Pod-Bereitstellungen
Wenn die AKS-Pod-Bereitstellung mit einem Fehler im Zusammenhang mit dem Abrufen von Images fehlschlägt, wie im folgenden Beispiel
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
Um dieses Problem zu beheben, sollten Sie folgende Richtlinien überprüfen:
- Überprüfen Sie, ob der AKS über Berechtigungen für den Zugriff auf die Containerregistrierung „
mystreamingtest.azurecr.io
“ verfügt. - Stellen Sie sicher, dass auf die Containerregistrierung „
mystreamingtest.azurecr.io
“ zugegriffen werden kann und dass sie ordnungsgemäß an AKS angefügt ist.
Überprüfen Sie die Pod-Bedingung „UpgradeIfStreamableDisabled“:
Wenn die AKS-Pod-Bedingung „UpgradeIfStreamableDisabled“ anzeigt, überprüfen Sie, ob das Image aus einer Azure Container Registry stammt.
Verwenden von Digest anstelle von Tag für Streamingartefakte:
Wenn Sie das Streamingartefakt mit Digest anstelle von Tag bereitstellen (z. B. mystreamingtest.azurecr.io/jupyter/all-spark-notebook@sha256:4ef83ea6b0f7763c230e696709d8d8c398e21f65542db36e82961908bcf58d18), enthält die AKS-Pod-Ereignis- und Bedingungsmeldung keine streamingbezogenen Informationen. Allerdings wird der schnelle Containerstart als zugrunde liegendes Containermodul angezeigt. Diese Engine streamt das Image an AKS, wenn erkannt wird, dass der tatsächliche Image-Inhalt gestreamt werden kann.