Solucionar problemas de streaming de artefatos
As etapas de solução de problemas neste artigo podem ajudá-lo a resolver problemas comuns que você pode encontrar ao usar o streaming de artefatos no Registro de Contêiner do Azure (ACR). Essas etapas e recomendações podem ajudar a diagnosticar e resolver problemas relacionados ao streaming de artefatos, bem como fornecer informações sobre os processos e logs subjacentes para fins de depuração.
Sintomas
- A operação de conversão falhou devido a um erro desconhecido.
- Solução de problemas de implantações de pods AKS com falha.
- As condições do pod indicam "UpgradeIfStreamableDisabled".
- Digest use em vez de Tag for Streaming Artifact.
Causas
- Problemas com autenticação, latência de rede, recuperação de imagens, operações de streaming ou outros problemas.
- Problemas com pull ou streaming de imagens, configurações de artefatos de streaming, fontes de imagem e restrições de recursos.
- Problemas com configurações ou permissões do ACR.
Falha na operação de conversão
Código de Erro | Mensagem de Erro | Informação de Resolução de Problemas |
---|---|---|
UNKNOWN_ERROR | A operação de conversão falhou devido a um erro desconhecido. | Causado por um erro interno. Uma nova tentativa ajuda aqui. Se a nova tentativa não for bem-sucedida, entre em contato com o suporte. |
RESOURCE_NOT_FOUND | A operação de conversão falhou porque o recurso de destino não foi encontrado. | Se a imagem de destino não for encontrada no Registro, verifique erros de digitação no resumo da imagem. Se a imagem for excluída ou estiver ausente na região de destino (a consistência da replicação não é imediata, por exemplo) |
UNSUPPORTED_PLATFORM | Atualmente, a conversão não é suportada para a plataforma de imagens. | Apenas imagens linux/amd64 são inicialmente suportadas. |
NO_SUPPORTED_PLATFORM_FOUND | Atualmente, a conversão não é suportada para nenhuma das plataformas de imagem no índice. | Apenas imagens linux/amd64 são inicialmente suportadas. Nenhuma imagem com esta plataforma é encontrada no índice de destino. |
UNSUPPORTED_MEDIATYPE | A conversão não é suportada para a imagem MediaType. | A conversão só pode direcionar imagens com o tipo 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 | A conversão não é suportada para a imagem ArtifactType. | Os artefatos de streaming (tipo de artefato: application/vnd.azure.artifact.streaming.v1) não podem ser convertidos novamente. |
IMAGE_NOT_RUNNABLE | A conversão não é suportada para imagens não executáveis. | Apenas imagens executáveis linux/amd64 são inicialmente suportadas. |
Solução de problemas de implantações de pod AKS com falha
Se a implantação do pod AKS falhar com um erro relacionado à extração de imagem, como o exemplo a seguir.
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
Para solucionar esse problema, você deve verificar as seguintes diretrizes:
- Verifique se o AKS tem permissões para acessar o registro
mystreamingtest.azurecr.io
do contêiner. - Certifique-se de que o registro
mystreamingtest.azurecr.io
do contêiner esteja acessível e conectado corretamente ao AKS.
Verificando a condição do pod "UpgradeIfStreamableDisabled":
Se a condição do pod AKS mostrar "UpgradeIfStreamableDisabled", verifique se a imagem é de um Registro de Contêiner do Azure.
Usando resumo em vez de tag para artefato de streaming:
Se você implantar o artefato de streaming usando digest em vez de tag (por exemplo, mystreamingtest.azurecr.io/jupyter/all-spark-notebook@sha256:4ef83ea6b0f7763c230e696709d8d8c398e21f65542db36e82961908bcf58d18), a mensagem de evento e condição do pod AKS não incluirá informações relacionadas ao streaming. No entanto, você vê a inicialização rápida do contêiner como o mecanismo de contêiner subjacente. Este mecanismo transmite a imagem para o AKS se detetar que o conteúdo real da imagem é transmitido.