Solução de problemas de transferência ACR

Falhas ou erros de implantação de modelo

Problemas de acesso ao Cofre da Chave

  • Se a implantação do pipelineRun falhar com um 403 Forbidden erro ao acessar o Cofre de Chaves do Azure, verifique se a identidade gerenciada pelo pipeline tem permissões adequadas.
  • Um pipelineRun usa a identidade gerenciada exportPipeline ou importPipeline para buscar o segredo do token SAS do seu Cofre de Chaves. ExportPipelines e importPipelines são provisionados com uma identidade gerenciada atribuída pelo sistema ou pelo usuário. Essa identidade gerenciada é necessária para ter secret get permissões no Cofre da Chave para ler o segredo do token SAS. Certifique-se de que uma política de acesso para a identidade gerenciada foi adicionada ao Cofre da Chave. Para obter mais informações, consulte Conceder acesso à política keyvault de identidade ExportPipeline e Conceder acesso à política keyvault de identidade ImportPipeline.

Problemas de acesso ao armazenamento

  • Se vir um 403 Forbidden erro do armazenamento, é provável que tenha um problema com o seu token SAS.
  • O token SAS pode não ser válido no momento. O token SAS pode ter expirado ou as chaves da conta de armazenamento podem ter sido alteradas desde que o token SAS foi criado. Verifique se o token SAS é válido tentando usar o token SAS para autenticar para acessar o contêiner da conta de armazenamento. Por exemplo, coloque um ponto de extremidade de blob existente seguido pelo token SAS na barra de endereço de uma nova janela do Microsoft Edge InPrivate ou carregue um blob no contêiner com o token SAS usando az storage blob upload.
  • O token SAS pode não ter Tipos de Recursos Permitidos suficientes. Verifique se o token SAS recebeu permissões para Serviço, Contêiner e Objeto em Tipos de Recursos Permitidos (srt=sco no token SAS).
  • O token SAS pode não ter permissões suficientes. Para pipelines de exportação, as permissões de token SAS necessárias são Leitura, Gravação, Lista e Adicionar. Para pipelines de importação, as permissões de token SAS necessárias são Ler, Excluir e Listar. (A permissão Excluir será necessária somente se o pipeline de importação tiver a DeleteSourceBlobOnSuccess opção habilitada.)
  • O token SAS pode não estar configurado para funcionar apenas com HTTPS. Verifique se o token SAS está configurado para funcionar apenas com HTTPS (spr=https no token SAS).

Problemas com a exportação ou importação de blobs de armazenamento

  • O token SAS pode ser inválido ou ter permissões insuficientes para a execução de exportação ou importação especificada. Consulte Problemas de acesso ao armazenamento.
  • O blob de armazenamento existente na conta de armazenamento de origem pode não ser substituído durante várias execuções de exportação. Confirme se a opção OverwriteBlob está definida na execução de exportação e se o token SAS tem permissões suficientes.
  • O blob de armazenamento na conta de armazenamento de destino pode não ser excluído após a execução bem-sucedida da importação. Confirme se a opção DeleteBlobOnSuccess está definida na execução de importação e se o token SAS tem permissões suficientes.
  • Blob de armazenamento não criado ou excluído. Confirme se o contêiner especificado na execução de exportação ou importação existe ou se o blob de armazenamento especificado existe para a execução de importação manual.

Problemas com importações de gatilho de origem

  • O token SAS deve ter a permissão List para que as importações do Source Trigger funcionem.
  • As importações do Gatilho de Origem só serão acionadas se o Blob de Armazenamento tiver um tempo da Última Modificação nos últimos 60 dias.
  • O Blob de Armazenamento deve ter uma propriedade ContentMD5 válida para ser importado pelo recurso Source Trigger.
  • O Blob de Armazenamento deve ter os metadados de blob "category":"acr-transfer-blob" para ser importado pelo recurso Source Trigger. Esses metadados são adicionados automaticamente durante uma execução de pipeline de exportação, mas podem ser removidos quando movidos da conta de armazenamento para a conta de armazenamento, dependendo do método de cópia.

Problemas com AzCopy

Problemas de transferência de artefatos

  • Nem todos os artefatos, ou nenhum, são transferidos. Confirme a ortografia dos artefatos na execução de exportação e o nome do blob nas execuções de exportação e importação. Confirme que está a transferir um máximo de 50 artefactos.
  • A execução do pipeline pode não ter sido concluída. Uma execução de exportação ou importação pode levar algum tempo.
  • Para outros problemas de pipeline, forneça a ID de correlação de implantação da execução de exportação ou importação para a equipe do Registro de Contêiner do Azure.
  • Para criar recursos de Transferência ACR, como exportPipelines, importPipelines, e pipelineRuns, o usuário deve ter pelo menos acesso de Colaborador na assinatura ACR. Caso contrário, eles verão a autorização para executar a transferência negada ou o escopo é inválido.

Problemas ao puxar a imagem em um ambiente fisicamente isolado

  • Se você vir erros em relação a camadas estrangeiras ou tentativas de resolver mcr.microsoft.com ao tentar extrair uma imagem em um ambiente fisicamente isolado, seu manifesto de imagem provavelmente tem camadas não distribuíveis. Devido à natureza de um ambiente fisicamente isolado, essas imagens muitas vezes não conseguem puxar. Você pode confirmar que esse é o caso verificando o manifesto da imagem para quaisquer referências a registros externos. Nesse caso, você precisará enviar as camadas não distribuíveis para o ACR da nuvem pública antes de implantar um pipeline de exportação executado para essa imagem. Para obter orientação sobre como fazer isso, consulte Como enviar camadas não distribuíveis para um registro?