Compartilhar via


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 ACR (Registro de Contêiner do Azure). Essas etapas e recomendações podem ajudar a diagnosticar e resolver problemas relacionados ao streaming de artefatos, bem como fornecer insights sobre os processos e logs subjacentes para fins de depuração.

Sintomas

  • Falha na operação de conversão devido a um erro desconhecido.
  • Solução de problemas de implantações de pod do AKS com falha.
  • As condições do pod indicam "UpgradeIfStreamableDisabled".
  • Use o código hash em vez de marca para o artefato de streaming.

Causas

  • Problemas com autenticação, latência de rede, recuperação de imagem, operações de streaming ou outros problemas.
  • Problemas com pull ou streaming de imagem, configurações de artefatos de streaming, fontes de imagem e restrições de recursos.
  • Problemas com as configurações ou permissões do ACR.

Falha na operação de conversão

Código de erro Mensagem de Erro Informações da solução de problemas
UNKNOWN_ERROR Falha na operação de conversão devido a um erro desconhecido. Causado por um erro interno. Uma repetição ajuda aqui. Se a nova tentativa não funcionar, entre em contato com o suporte.
RESOURCE_NOT_FOUND Falha na operação de conversão porque o recurso de destino não foi encontrado. Se a imagem desejada não for encontrada no Registro, confira se não há os erros de digitação no código hash da imagem. Se a imagem tiver sido excluída ou não estiver disponível na região desejada (considerando que a consistência da replicação pode não ser instantânea, por exemplo)
UNSUPPORTED_PLATFORM Atualmente, não há suporte para conversão na plataforma de imagem. Inicialmente, há suporte para apenas imagens linux/amd64.
NO_SUPPORTED_PLATFORM_FOUND Atualmente, não há suporte para conversão em nenhuma das plataformas de imagem no índice. Inicialmente, há suporte para apenas imagens linux/amd64. Nenhuma imagem com essa plataforma é encontrada no índice de destino.
UNSUPPORTED_MEDIATYPE Não há suporte para conversão da imagem MediaType. A conversão só pode direcionar imagens com os seguintes tipos 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 Não há suporte para conversão para a imagem ArtifactType. Artefatos de Streaming (Tipo de artefato: application/vnd.azure.artifact.streaming.v1) não podem ser convertidos novamente.
IMAGE_NOT_RUNNABLE Não há suporte para conversão para imagens não executáveis. Inicialmente, há suporte para apenas imagens executáveis linux/amd64.

Solução de problemas de implantações de pod do AKS com falha

Se a implantação do pod do AKS falhar com um erro relacionado ao pull 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, verifique as diretrizes a seguir:

  1. Verificar se o AKS tem permissões para acessar o registro de contêiner mystreamingtest.azurecr.io.
  2. Verifique se o registro de contêiner mystreamingtest.azurecr.io está acessível e anexado corretamente ao AKS.

Verificar a condição do pod UpgradeIfStreamableDisabled:

Se a condição do pod do AKS mostrar "UpgradeIfStreamableDisabled", verifique se a imagem é de um Registro de Contêiner do Azure.

Usar código hash em vez de marca para o artefato de streaming:

Se você implantar o artefato de streaming usando resumo em vez de marca (por exemplo, mystreamingtest.azurecr.io/jupyter/all-spark-notebook@sha256:4ef83ea6b0f7763c230e696709d8d8c398e21f65542db36e82961908bcf58d18), o evento de pod do AKS e a mensagem de condição não incluirão informações relacionadas ao streaming. No entanto, você vê a inicialização rápida do contêiner como o mecanismo de contêiner subjacente. Esse mecanismo transmitirá a imagem para o AKS se ele detectar que o conteúdo real da imagem pode ser transmitido.