Resolver problemas ao criar, excluir ou restaurar aplicativos de funções do Azure
Este artigo lista alguns problemas comuns que podem ocorrer quando você cria, exclui ou restaura aplicativos de funções do Azure e as etapas para resolver os problemas.
Criar aplicativos de funções
Os aplicativos de funções do Azure usam a infraestrutura do Serviço de Aplicativo do Azure. Você pode criar um aplicativo de funções do Azure usando:
Você também pode criar um aplicativo durante a implantação de um projeto de função do Visual Studio ou Visual Studio Code.
Considerações sobre uma conta de Armazenamento do Azure usada pelo Azure Functions
Quando você cria um aplicativo de funções, é possível criar ou vincular uma conta de Armazenamento do Microsoft Azure de uso geral que oferece suporte ao armazenamento de tabelas, blobs e filas. O Azure Functions usa o Armazenamento do Azure para operações como gerenciamento de gatilhos e registro em log de execuções de função. Para obter mais informações, confira Considerações de armazenamento do Azure Functions.
- Verifique se você tem permissões para criar uma conta de armazenamento e outros recursos. Não pode haver RBAC (controle de acesso baseado em função), política ou violações de escopo.
- Use a Identidade Gerenciada para a cadeia de conexão da conta do Armazenamento do Microsoft Azure, somente para
AzureWebJobsStorage
. Para obter mais informações, confira Conectar-se ao armazenamento de host com uma identidade (versão prévia).
Proteger a conta de Armazenamento do Azure usada pelo Azure Functions
Você pode criar um aplicativo de funções do Azure e uma nova conta de armazenamento protegida com pontos de extremidade privados. Hospede o aplicativo de funções em um plano que dá suporte à integração de rede virtual.
- Para obter informações sobre a criação do portal, consulte o tutorial de rede.
- Para modelos do Azure Resource Manager, consulte Azure/azure-quickstart-templates.
- Você também pode atualizar um aplicativo de funções existente para apontar para uma nova conta de armazenamento segura. Para obter mais informações, confira Restringir a conta de armazenamento a uma rede virtual.
Migrar um aplicativo de funções do Azure entre diferentes planos de hospedagem
No Windows, você pode usar comandos da CLI do Azure para migrar um aplicativo de funções entre um plano de Consumo e um plano Premium ou vice-versa. Para obter mais informações, confira Plano de migração.
- Não há suporte para a migração direta de/para um plano dedicado (Serviço de Aplicativo) de/para um plano de Consumo/Premium porque os recursos para dimensionamento controlado por eventos e uso de recursos sem servidor são diferentes entre planos de hospedagem.
Observação
O Linux não oferece suporte à migração de planos de hospedagem.
Examine as ofertas do plano de hospedagem (Consumo, Premium, Dedicado), como conectividade de rede virtual, tempo limite, cobrança e assim por diante. Para obter mais informações, confira Opções de hospedagem do Azure Functions.
Resolva o erro "Esta região tem cota de 0 instâncias para sua assinatura. Tente selecionar outra região ou outro SKU.”
Se você estiver enfrentando problemas de criação de recursos em uma região específica, tente criar o recurso em uma região emparelhada geograficamente, se sua empresa permitir. Por exemplo, Oeste dos EUA 2 e Centro-Oeste dos EUA 2 são regiões emparelhadas. O Leste Asiático (RAE de Hong Kong) e o Sudeste Asiático (Cingapura) também são regiões emparelhadas.
Para saber mais, veja:
Resolva o erro "O tipo de preço não é permitido neste grupo de recursos" ou "SkuNotAllowedForResourceGroup"
Recomendamos que você crie o plano em um novo grupo de recursos. Diferentes SKUs exigem máquinas exclusivas. Quando você cria um aplicativo em um grupo de recursos, ele é mapeado e atribuído a um pool de recursos. Se você criar outro plano nesse grupo de recursos e o pool mapeado não tiver os recursos necessários, o erro será exibido.
Para obter mais informações, consulte Criando aplicativos de funções em um grupo de recursos existente.
A criação de um compartilhamento de arquivo de conteúdo do aplicativo de funções falha com: "O servidor remoto retornou um erro: (403) Proibido"
Para aplicativos de funções no plano de consumo ou no plano Elastic Premium, um compartilhamento de arquivos é criado na conta de armazenamento e referenciado usando a configuração WEBSITE_CONTENT_SHARE
do aplicativo. Esse erro pode ocorrer porque a conta de armazenamento tem um firewall, pontos de extremidade privados ou outras restrições de segurança de rede virtual, como regras de NSG (grupo de segurança de rede).
Para resolver o erro, crie um compartilhamento de arquivo antes na conta de armazenamento segura e configure-o como WEBSITE_CONTENT_SHARE
. Para obter mais informações, confira Restringir a conta de armazenamento a uma rede virtual.
Ferramentas alternativas para criação
Você pode usar ferramentas alternativas como CLI do Azure, PowerShell e Az.Functions
. Certifique-se de usar as versões mais recentes das ferramentas. Se houver um problema ao usar uma das ferramentas, como o portal do Azure, tente usar outra, como a CLI do Azure.
Definir a versão do runtime de funções para Windows e Linux
Para aplicativos do Windows, defina a versão do runtime no portal do Azure (Configurações>Configuração>da função runtime Configurações>Versão do runtime) ou crie uma configuração FUNCTIONS_EXTENSION_VERSION
de aplicativo e defina-a como a versão principal do runtime, por exemplo, ~4
para direcionar V4. Para obter mais informações, confira Como direcionar as versões de runtime do Azure Functions. Fixe-o em uma versão secundária com base em versões de host definindo FUNCTIONS_EXTENSION_VERSION
como uma versão secundária. Consulte também Versões de host do Azure Functions.
Para aplicativos Linux, confira Atualizações de versão manuais no Linux.
Solucionar erros de HTTP 429
A limitação ocorre em dois níveis: Azure Resource Manager e provedor de recursos (Microsoft.Web). O nível depende do tipo de assinatura e do plano de hospedagem. Para obter mais informações, consulte:
- Limitação do Azure Resource Manager
- Assinatura do Azure e limite de serviços, cotas e restrições
- Limites dos Serviços de Aplicativos do Azure
Observação
Se o problema não for frequente, aguarde e tente novamente após algum tempo para ver se o problema é resolvido. Se o problema for frequente, você pode comprar uma assinatura diferente ou atualizar o plano de hospedagem para resolver o erro.
Excluir ou restaurar aplicativos de funções
Depois de publicar o código do Visual Studio e usar WEBSITE_RUN_FROM_PACKAGE
o , o portal do Azure define funções como somente leitura para impedir a edição de ativos pré-compilados no portal. Para excluir funções em um aplicativo de funções, remova as funções indesejadas do código, habilite a opção Remover arquivos adicionais no destino nas configurações de perfil e reimplante o código.
Não há suporte para a restauração de aplicativos de funções do Azure hospedados em um plano de Consumo ou no plano Elastic Premium. Se você tiver o conteúdo do aplicativo de funções ou puder acessar a conta de armazenamento, atualize as configurações do aplicativo ou crie um novo aplicativo de funções e use o conteúdo. Você pode restaurar aplicativos de funções do Azure em um plano de serviço de Aplicativo Dedicado se ele não estiver usando Arquivos do Azure para armazenamento de conteúdo.
Para obter mais informações, confira Restaurar (cancelar a exclusão) aplicativos Web excluídos.
Verifique se você tem permissões suficientes para excluir um aplicativo de funções do Azure. Não pode haver RBAC (controle de acesso baseado em função), política ou violações de escopo.
Coletar dados antes de entrar em contato com o suporte da Microsoft
Se a criação ou exclusão do aplicativo de funções falhar, colete e compartilhe os seguintes dados ao criar um tíquete de suporte:
Portal do Azure: reproduza o problema e capture um rastreamento do navegador.
CLI do Azure ou Azure PowerShell: compartilhe o comando que relatou o erro e o log detalhado.
Para falhas de implantação do Azure Resource Manager, localize a mensagem de erro no portal do Azure:
- Selecione Grupos de Recursos>Implantações.
- Compartilhe a ID de correlação de tarefa com falha.
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.