Événement
Créer des applications et des agents IA
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantCe navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Le runtime Azure Functions fournit une flexibilité d’hébergement où et comme vous le souhaitez. KEDA (Kubernetes-based Event Driven Autoscaling, ou mise à l’échelle automatique pilotée par événement basée sur Kubernetes) fonctionne parfaitement avec le runtime et les outils Azure Functions pour fournir une échelle pilotée par événement dans Kubernetes.
Important
L’exécution de vos applications de fonctions conteneurisées sur Kubernetes, que ce soit en utilisant KEDA ou par déploiement direct, est un effort open-source que vous pouvez utiliser gratuitement. Le support est assuré par les contributeurs et la communauté en utilisant les questions GitHub dans le référentiel Azure Functions. Veuillez utiliser ces questions pour signaler des bogues et demander des fonctionnalités.
Pour des déploiements Kubernetes entièrement pris en charge, envisagez plutôt l’hébergement Azure Container Apps d’Azure Functions.
Le service Azure Functions se compose de deux composants clés : un runtime et un contrôleur d’échelle. Le runtime Functions s’exécute et exécute votre code. Le runtime inclut une logique sur le déclenchement, la consignation et la gestion des exécutions de fonction. Le runtime Azure Functions peut s’exécuter n’importe où. L’autre composant est un contrôleur d’échelle. Le contrôleur d’échelle supervise le taux d’événements qui ciblent votre fonction et met proactivement à l’échelle le nombre d’instances exécutant votre application. Pour en savoir plus, voir Mise à l’échelle et hébergement d’Azure Functions.
Functions basé sur Kubernetes fournit le runtime Functions dans un conteneur Docker avec mise à l’échelle piloté par événement via KEDA. KEDA peut évoluer jusqu'à zéro instance (lorsqu'aucun événement ne se produit) et jusqu'à n instances. Pour cela, il expose des métriques personnalisées de l’autoscaler Kubernetes (autoscaler de pods élastique). L’utilisation de conteneurs Functions avec KEDA permet de répliquer des fonctionnalités de fonction serverless dans n’importe quel cluster Kubernetes. Ces fonctions peuvent également être déployées à l’aide de la fonctionnalité de nœuds virtuels Azure Kubernetes Service (AKS) pour l’infrastructure serverless.
Pour exécuter Functions sur votre cluster Kubernetes, vous devez installer le composant KEDA. Vous pouvez installer ce composant de l’une des façons suivantes :
Azure Functions Core Tools : en utilisant la commande func kubernetes install
.
Helm : il existe plusieurs façons d’installer KEDA dans un cluster Kubernetes, y compris Helm. Les options de déploiement sont documentées sur le site KEDA.
Vous pouvez déployer n’importe quelle application de fonction sur un cluster Kubernetes en exécutant KEDA. Dans la mesure où vos fonctions s’exécutent dans un conteneur Docker, votre projet nécessite un fichier Dockerfile. Vous pouvez créer un Dockerfile en utilisant l’option --docker
lors de l’appel de func init
pour créer le projet. Si vous avez oublié de créer votre Dockerfile, vous pouvez toujours l'appeler func init
à nouveau depuis la racine de votre projet de code.
(Facultatif) Si vous devez créer votre Dockerfile, utilisez la commande func init
avec l'option --docker-only
:
func init --docker-only
Pour en savoir plus sur la génération du fichier Dockerfile, consultez la référence func init
.
Utilisez la commande func kubernetes deploy
pour créer votre image et déployer votre application de fonction conteneurisée sur Kubernetes :
func kubernetes deploy --name <name-of-function-deployment> --registry <container-registry-username>
Dans cet exemple, remplacez <name-of-function-deployment>
par le nom de votre application de fonction. La commande de déploiement exécute ces tâches :
Deployment
, une ressource ScaledObject
et Secrets
, englobant les variables d’environnement importées du fichier local.settings.json
.Les étapes de déploiement précédentes fonctionnent également pour les registres privés. Si vous extrayez votre image de conteneur à partir d'un registre privé, incluez l'indicateur --pull-secret
qui fait référence au secret Kubernetes contenant les informations d'identification du registre privé lors de l'exécution func kubernetes deploy
.
Après le déploiement, vous pouvez supprimer une fonction en supprimant le Deployment
associé, ScaledObject
, un Secrets
créé.
kubectl delete deploy <name-of-function-deployment>
kubectl delete ScaledObject <name-of-function-deployment>
kubectl delete secret <name-of-function-deployment>
Vous pouvez supprimer des KEDA de votre cluster de l’une des manières suivantes :
Azure Functions Core Tools : en utilisant la commande func kubernetes remove
.
Helm : reportez-vous aux étapes de désinstallation sur le site KEDA.
KEDA prend en charge les déclencheurs Azure Function suivants :
Vous pouvez utiliser Azure Functions qui exposent les déclencheurs HTTP, mais KEDA ne les gère pas directement. Vous pouvez utiliser le déclencheur KEDA prometheus pour faire évoluer les Azure Functions HTTP d’une à plusieurs instances n
.
Pour plus d’informations, consultez les ressources suivantes :
Événement
Créer des applications et des agents IA
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantFormation
Module
Exécuter une fonction Azure avec des déclencheurs - Training
Ce module vous présente certains des types de déclencheurs les plus courants pour exécuter les fonctions Azure et la manière de les configurer pour exécuter votre logique.
Certification
Microsoft Certified: Azure Developer Associate - Certifications
Générez des solutions de bout en bout dans Microsoft Azure pour créer des fonctions Azure Functions, implémenter et gérer des applications web, développer des solutions qui utilisent le Stockage Azure, et bien plus encore.