Problemen met streaming van artefacten oplossen
Met de stappen voor probleemoplossing in dit artikel kunt u veelvoorkomende problemen oplossen die kunnen optreden bij het gebruik van artefactstreaming in Azure Container Registry (ACR). Deze stappen en aanbevelingen kunnen helpen bij het vaststellen en oplossen van problemen met betrekking tot het streamen van artefacten en bieden inzicht in de onderliggende processen en logboeken voor foutopsporing.
Symptomen
- De conversiebewerking is mislukt vanwege een onbekende fout.
- Problemen met mislukte implementaties van AKS-pods oplossen.
- Podvoorwaarden geven 'UpgradeIfStreamableDisabled' aan.
- Gebruik van samenvatting in plaats van tag voor streamingartefact.
Oorzaken
- Problemen met verificatie, netwerklatentie, ophalen van installatiekopieën, streamingbewerkingen of andere problemen.
- Problemen met het ophalen of streamen van installatiekopieën, configuraties van streaming-artefacten, afbeeldingsbronnen en resourcebeperkingen.
- Problemen met ACR-configuraties of -machtigingen.
Conversiebewerking is mislukt
Foutcode | Foutbericht | Informatie over probleemoplossing |
---|---|---|
UNKNOWN_ERROR | De conversiebewerking is mislukt vanwege een onbekende fout. | Veroorzaakt door een interne fout. Een nieuwe poging helpt hier. Als het opnieuw proberen mislukt, neemt u contact op met de ondersteuning. |
RESOURCE_NOT_FOUND | De conversiebewerking is mislukt omdat de doelresource niet is gevonden. | Als de doelinstallatiekopieën niet in het register worden gevonden, controleert u typfouten in de samenvatting van de installatiekopieën. Als de installatiekopie wordt verwijderd of ontbreekt in de doelregio (replicatieconsistentie is bijvoorbeeld niet direct) |
UNSUPPORTED_PLATFORM | Conversie wordt momenteel niet ondersteund voor het installatiekopieënplatform. | Alleen linux-/amd64-installatiekopieën worden in eerste instantie ondersteund. |
NO_SUPPORTED_PLATFORM_FOUND | Conversie wordt momenteel niet ondersteund voor een van de afbeeldingsplatforms in de index. | Alleen linux-/amd64-installatiekopieën worden in eerste instantie ondersteund. Er is geen afbeelding met dit platform gevonden in de doelindex. |
UNSUPPORTED_MEDIATYPE | Conversie wordt niet ondersteund voor het image MediaType. | Conversie kan alleen gericht zijn op installatiekopieën met mediatype: application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, application/vnd.docker.distribution.manifest.v2+json of application/vnd.docker.distribution.manifest.list.v2+json |
UNSUPPORTED_ARTIFACT_TYPE | Conversie wordt niet ondersteund voor het image ArtifactType. | Streamingartefacten (artefacttype: application/vnd.azure.artifact.streaming.v1) kunnen niet opnieuw worden geconverteerd. |
IMAGE_NOT_RUNNABLE | Conversie wordt niet ondersteund voor niet-uitgevoerde installatiekopieën. | Alleen linux-/amd64-runnable installatiekopieën worden in eerste instantie ondersteund. |
Problemen met mislukte implementaties van AKS-pods oplossen
Als de implementatie van AKS-pods mislukt met een fout met betrekking tot het ophalen van installatiekopieën, zoals in het volgende voorbeeld.
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
Als u dit probleem wilt oplossen, moet u de volgende richtlijnen controleren:
- Controleer of de AKS machtigingen heeft voor toegang tot het containerregister
mystreamingtest.azurecr.io
. - Zorg ervoor dat het containerregister
mystreamingtest.azurecr.io
toegankelijk is en correct is gekoppeld aan AKS.
Controleren op 'UpgradeIfStreamableDisabled' Pod Condition:
Als in de AKS-podvoorwaarde 'UpgradeIfStreamableDisabled' wordt weergegeven, controleert u of de installatiekopieën afkomstig zijn van een Azure Container Registry.
Digest gebruiken in plaats van tag voor streamingartefact:
Als u het streaming-artefact implementeert met behulp van digest in plaats van tag (bijvoorbeeld mystreamingtest.azurecr.io/jupyter/all-spark-notebook@sha256:4ef83ea6b0f7763c230e696709d8d8c398e21f65542db36e82961908bcf58d18), bevat het bericht over de AKS-pod en voorwaarde geen streaminggerelateerde informatie. U ziet echter dat de container snel wordt opgestart als de onderliggende containerengine. Deze engine streamt de afbeelding naar AKS als de werkelijke inhoud van de afbeelding wordt gestreamd.