Solucionar problemas de implantação com falha de uma oferta de aplicativo do Kubernetes
Este artigo discute como solucionar problemas de uma implantação com falha de uma oferta de aplicativo do Kubernetes que foi aceita no Microsoft Azure Marketplace. Quando você inicia a compra de uma oferta do Kubernetes, o Azure implanta um modelo do ARM (modelo do Azure Resource Manager) que tenta instalar os recursos necessários para atender à oferta. No entanto, a implantação do modelo do ARM pode falhar por vários motivos.
Lista de verificação de solução de problemas
Examinar os logs de operação de implantação
Para determinar a causa da falha de implantação, você precisa examinar os logs de operação de implantação. Se você ainda estiver exibindo a página Falha na implantação no portal do Azure, comece na etapa 5 do procedimento a seguir. Se, em vez disso, você saiu do portal do Azure ou navegou para outra página do portal, siga todas estas etapas:
No portal do Azure pesquise e selecione Grupos de recursos.
Na lista de grupos de recursos, selecione o nome do grupo de recursos no qual você tentou implantar o aplicativo Kubernetes.
Na página Visão geral do grupo de recursos, localize a seção Essentials e selecione o texto com hiperlink que aparece ao lado do campo Implantações . Este texto exibe a taxa de sucesso do histórico de implantação de recursos do grupo de recursos (por exemplo, 4 com falha, 30 com êxito).
Na lista de tentativas de implantação para o grupo de recursos, selecione o valor Nome da implantação da implantação que falhou, com base nos seguintes campos correspondentes:
- Última modificação (um carimbo de data/hora)
- Duration
- Status (mostra Falha em vez de Bem-sucedido)
Na lista Detalhes da implantação na página de implantação, localize o Recurso para o qual o campo Status tem um valor de Conflito. Selecione o link Detalhes da operação para esse recurso.
No painel Detalhes da operação, localize a propriedade Status (mostra um valor de Conflito) e examine a caixa de mensagem Status abaixo da propriedade.
O código JSON na mensagem de status mostra uma
status
propriedade deFailed
. Ele também mostra umaerror
propriedade que contém as propriedades filho de (um nome de código de erro, como "ExtensionOperationFailed") emessage
(uma descrição de mensagem de erro, como "A operação decode
extensão falhou com o seguinte erro: Falha ao resolver a versão de extensão dos valores fornecidos."). O código JSON é semelhante ao seguinte texto:{ "status": "Failed", "error": { "code": "ExtensionOperationFailed", "message": "The extension operation failed with the following error: Failed to resolve the extension version from the given values." } }
As seções a seguir discutem a causa e a solução para alguns cenários comuns de falha.
Causa 1: o aplicativo não foi instalado no cluster do AKS selecionado
Se o aplicativo Kubernetes não tiver sido instalado no cluster do AKS (Serviço de Kubernetes do Azure) selecionado, você receberá uma mensagem de erro semelhante ao seguinte texto:
Falha na solicitação para https://management.azure.com/subscriptions/<subscription-guid>/resourceGroups/resourceGroup/providers/Microsoft.ContainerService/managedclusters/aks-cluster/extensionaddons/default?api-version=2021-03-01. Código de erro: Proibido. Motivo: Proibido.
{ "error": { "code": "AuthorizationFailed", "message": "The client '<client-guid>' with object id '<client-guid>' does not have authorization to perform action 'Microsoft.ContainerService/managedclusters/extensionaddons/read' over scope '/subscriptions/<subscription-guid>/resourceGroups/resourceGroup/providers/Microsoft.ContainerService/managedclusters/aks-cluster/extensionaddons/default' or the scope is invalid. If access was recently granted, please refresh your credentials." } }
Solução 1a: Registrar o provedor de recursos Microsoft.KubernetesConfiguration
Registre o provedor de recursos Microsoft.KubernetesConfiguration. Nesse caso, a instalação falhou porque o provedor de recursos Microsoft.KubernetesConfiguration é necessário para que você implante o aplicativo Kubernetes. Para obter instruções de registro, consulte a seção "Registrar provedores de recursos" no artigo Implantar uma oferta de contêiner do Azure Marketplace.
Solução 1b: Manter a integridade do cluster do AKS
Em geral, você deve verificar a integridade do cluster do AKS para evitar que outros problemas ocorram durante o período de instalação. Para garantir que o cluster esteja íntegro, resolva os problemas identificados no cluster.
Solução 1c: examinar o log de atividades do Azure Monitor
E se o cluster estiver íntegro, mas a instalação ainda falhar? Nesse caso, examine o log de atividades do Azure Monitor no cluster do AKS para encontrar a causa da falha nesse estágio da instalação.
Causa 2: a assinatura tem restrições de recursos
Como sua assinatura do Azure tem restrições de recursos, você enfrenta uma falha que produz uma mensagem de erro semelhante ao seguinte texto:
Os instrumentos de pagamento "desconhecidos" não são suportados para oferta com OfferId: '<offer-name>', PlanId '<subscription-plan-name>'.
Solução 2: verifique se sua assinatura atende à configuração de cobrança necessária
Verifique a configuração de cobrança da assinatura para garantir que ela atenda aos requisitos de recursos do aplicativo Kubernetes. Para obter mais informações, consulte Verificações de validação de compra.
Causa 3: a oferta não estava disponível em sua região
Você recebe uma mensagem de erro informando que a oferta não pode ser vendida em uma determinada região geográfica. A mensagem de erro pode ser semelhante ao seguinte texto:
A Oferta: '<nome> da oferta' não pode ser comprada por assinatura: '<subscription-guid>', pois não deve ser vendida no mercado: '<código de região de duas letras'.
Solução 3: verifique novamente se e onde a oferta ainda está disponível
Verifique se a oferta ainda está disponível e verifique novamente as regiões às quais a oferta se aplica.
Causa 4: Ocorreu um erro interno do servidor
O aplicativo Kubernetes não foi instalado porque um recurso de extensão não foi instalado. Essa falha gera a seguinte mensagem de erro:
Falha na implantação da extensão com erro interno do servidor
Solução 4: Excluir e reinstalar a extensão
Primeiro, exclua o recurso de extensão que faz parte da compra da oferta. Em seguida, reinstale a extensão.
Causa 5: o gráfico do Helm não foi instalado
Erros no gráfico do Helm geram a seguinte mensagem de erro:
Falha ao instalar o gráfico do caminho [] para lançamento
Solução 5: verifique novamente as entradas feitas no modelo do ARM
Verifique se os valores e as seleções inseridos no portal do Azure para a implantação do modelo do ARM são aceitáveis no aplicativo Kubernetes.
Causa 6: Você não aceitou os termos legais da assinatura deste plano
Antes que a assinatura possa ser usada, você precisa aceitar os termos legais da imagem. Caso contrário, você receberá a seguinte mensagem de erro:
Você não aceitou os termos legais desta assinatura: '<subscription-guid>' para este plano. Antes que a assinatura possa ser usada, você precisa aceitar os termos legais da imagem.
Solução 6: Aceite os termos legais
Você pode implantar por meio do portal do Azure. O portal do Azure fornece uma experiência de interface do usuário para ler e aceitar os termos legais.
Próximas etapas
Solucionar problemas de erros ao implantar extensões de cluster do AKS
Aviso de isenção de responsabilidade para informações de terceiros
Os produtos de terceiros mencionados neste artigo são produzidos por empresas independentes da Microsoft. A Microsoft não oferece nenhuma garantia, implícita ou não, do desempenho ou da confiabilidade desses produtos.
Entre em contato conosco para obter ajuda
Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.