Résoudre les problèmes lors de la création, de la suppression ou de la restauration d’applications de fonction Azure
Cet article répertorie certains problèmes courants qui peuvent se produire lorsque vous créez, supprimez ou restaurez des applications de fonction Azure et des étapes pour résoudre les problèmes.
Créer des applications de fonction
Les applications de fonction Azure utilisent l’infrastructure Azure App Service. Vous pouvez créer une application de fonction Azure à l’aide de :
Vous pouvez également créer une application lors du déploiement d’un projet de fonction à partir de Visual Studio ou de Visual Studio Code.
Considérations relatives à un compte Stockage Azure utilisé par Azure Functions
Quand vous créez une application de fonction, vous pouvez créer un compte de stockage Azure universel qui prend en charge le stockage Blob, File d’attente et Table, ou établir un lien vers un compte de ce type. Azure Functions s’appuie sur le Stockage Azure pour les opérations telles que la gestion des déclencheurs et la journalisation des exécutions de fonctions. Pour plus d’informations, consultez la section Points importants relatifs au stockage pour Azure Functions.
- Vérifiez que vous disposez d’autorisations pour créer un compte de stockage et d’autres ressources. Il ne peut y avoir aucune violation de contrôle d’accès en fonction du rôle (RBAC), de stratégie ou d’étendue.
- Utilisez Identité managée pour la chaîne de connexion de compte de stockage Azure, uniquement pour
AzureWebJobsStorage
. Pour plus d’informations, consultez Connexion à un stockage hôte avec une identité (préversion).
Sécuriser le compte Stockage Azure utilisé par Azure Functions
Vous pouvez créer une application de fonction Azure et un nouveau compte de stockage sécurisé avec des points de terminaison privés. Héberger l’application de fonction sur un plan prenant en charge l’intégration de réseau virtuel.
- Pour plus d’informations sur la création à partir du portail, consultez le didacticiel de mise en réseau.
- Pour les modèles Azure Resource Manager, accédez à Azure/azure-quickstart-templates.
- Vous pouvez également mettre à jour une application Functions existante pour pointer vers un nouveau compte de stockage sécurisé. Pour plus d’informations, consultez Restreindre votre compte de stockage à un réseau virtuel.
Migrer une application de fonction Azure entre différents plans d’hébergement
Dans Windows, vous pouvez utiliser des commandes Azure CLI pour migrer une application de fonction entre une consommation et un plan Premium, ou inversement. Pour plus d’informations, consultez Planifier la migration.
- La migration directe depuis/vers un plan dédié (App Service) vers/à partir d’un plan Consommation/Premium n’est pas prise en charge, car les fonctionnalités de mise à l’échelle pilotée par les événements et l’utilisation de fonctionnalités serverless diffèrent entre les plans d’hébergement.
Note
Linux ne prend pas en charge la migration des plans d’hébergement.
Passez en revue les offres de plan d’hébergement (Consommation, Premium, Dédié) telles que la connectivité de réseau virtuel, le délai d’expiration, la facturation, etc. Pour plus d’informations, consultez Options d’hébergement Azure Functions.
Résolvez l’erreur « Cette région a un quota de 0 instances pour votre abonnement. Essayez de sélectionner une autre région ou référence SKU »
Si vous rencontrez constamment des problèmes de création de ressources dans une région particulière, essayez de créer la ressource dans une région jumelée géographiquement si votre entreprise l’autorise. Par exemple, USA Ouest 2 et USA Centre-Ouest sont des régions associées. L’Asie est (Hong Kong SAR) et l’Asie Sud-Est (Singapour) sont également associées à des régions.
Pour plus d’informations, consultez l’article suivant :
- Guide de décision concernant les régions Azure - Cloud Adoption Framework
- Réplication interrégionale dans Azure
Résolvez l’erreur « Le niveau tarifaire n’est pas autorisé dans ce groupe de ressources » ou « SkuNotAllowedForResourceGroup »
Nous vous recommandons de créer le plan dans un nouveau groupe de ressources. Différentes références SKU nécessitent des machines uniques. Lorsque vous créez une application dans un groupe de ressources, elle est mappée et affectée à un pool de ressources. Si vous créez un autre plan dans ce groupe de ressources et que le pool mappé n’a pas les ressources requises, l’erreur s’affiche.
Pour plus d’informations, consultez Création d’applications de fonction dans un groupe de ressources existant.
La création d’un partage de fichiers de contenu d’application de fonction échoue avec : « Le serveur distant a renvoyé une erreur : (403) Interdit »
Pour les applications de fonction dans le plan Consommation ou le plan Elastic Premium, un partage de fichiers est créé sur le compte de stockage et référencé à l’aide du paramètre WEBSITE_CONTENT_SHARE
d’application. Cette erreur peut se produire, car le compte de stockage a un pare-feu, des points de terminaison privés ou d’autres restrictions de sécurité de réseau virtuel telles que des règles de groupe de sécurité réseau (NSG).
Pour résoudre l’erreur, créez un partage de fichiers à l’avance sur le compte de stockage sécurisé, puis configurez-le sur WEBSITE_CONTENT_SHARE
. Pour plus d’informations, consultez Restreindre votre compte de stockage à un réseau virtuel.
Autres outils de création
Vous pouvez utiliser d’autres outils comme Azure CLI, PowerShell et Az.Functions
. Veillez à utiliser les dernières versions des outils. S’il existe un problème lors de l’utilisation de l’un des outils, comme Portail Azure, essayez d’utiliser un autre, comme Azure CLI.
Définir la version de runtime de la fonction pour Windows et Linux
Pour les applications Windows, définissez la version du runtime dans l’Portail Azure (>version du runtime paramètres de configuration de la fonction de>configuration>), ou créez un paramètre FUNCTIONS_EXTENSION_VERSION
d’application et définissez-le sur la version principale du runtime, par exemple pour ~4
cibler V4. Pour plus d’informations, consultez Guide pratique pour cibler les versions du runtime Azure Functions. Épinglez-le à une version mineure basée sur les versions de l’hôte en définissant FUNCTIONS_EXTENSION_VERSION
sur une version mineure. Consultez également Versions de l’hôte Azure Functions.
Pour les applications Linux, consultez Mises à jour manuelles des versions sur Linux.
Résoudre les erreurs HTTP 429
La limitation se produit à deux niveaux : Azure Resource Manager et fournisseur de ressources (Microsoft.Web). Le niveau dépend du type d’abonnement et du plan d’hébergement. Pour plus d'informations, consultez les pages suivantes :
- Limitation d’Azure Resource Manager
- Abonnement Azure et limites, quotas et contraintes du service
- Limites d’Azure App Services
Note
Si le problème est peu fréquent, patientez et réessayez après un certain temps pour voir si le problème se résout. Si le problème est fréquent, vous pouvez acheter un autre abonnement ou mettre à jour le plan d’hébergement pour résoudre l’erreur.
Supprimer ou restaurer des applications de fonction
Après avoir publié du code à partir de Visual Studio et utiliséWEBSITE_RUN_FROM_PACKAGE
, le Portail Azure définit les fonctions en lecture seule pour empêcher la modification des ressources précompilées dans le portail. Pour supprimer des fonctions dans une application de fonction, supprimez les fonctions indésirables de votre code, activez l’option Supprimer des fichiers supplémentaires dans les paramètres de profil et redéployez votre code.
La restauration d’applications de fonction Azure hébergées sur un plan Consommation ou un plan Elastic Premium n’est pas prise en charge. Si vous disposez du contenu de l’application de fonction ou que vous pouvez accéder au compte de stockage, mettez à jour les paramètres de l’application ou créez une application de fonction et utilisez le contenu. Vous pouvez restaurer des applications de fonction Azure sur un plan App Service dédié s’il n’utilise pas Azure Files pour le stockage de contenu.
Pour plus d’informations, consultez Restore (undelete) deleted web apps (Restaurer (annuler la suppression) des applications web supprimées).
Vérifiez que vous disposez des autorisations suffisantes pour supprimer une application de fonction Azure. Il ne peut y avoir aucune violation de contrôle d’accès en fonction du rôle (RBAC), de stratégie ou d’étendue.
Collecter des données avant de contacter le support Microsoft
Si la création ou la suppression de l’application de fonction échoue, collectez et partagez les données suivantes lors de la création d’un ticket de support :
Portail Azure : reproduire le problème et capturer une trace de navigateur.
Azure CLI ou Azure PowerShell : partagez la commande qui a signalé l’erreur et la journalisation détaillée.
Pour les échecs de déploiement d’Azure Resource Manager, recherchez le message d’erreur dans la Portail Azure :
- Sélectionnez Déploiements>des groupes de ressources.
- Partagez l’ID de corrélation des tâches ayant échoué.
Contactez-nous pour obtenir de l’aide
Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.