Modifier

Azure Kubernetes dans le traitement de flux d’événements

Azure Kubernetes Service (AKS)
Azure IoT Hub
Hubs d'événements Azure
Azure Functions
Azure Cosmos DB

Idées de solution

Cet article présente une idée de solution. Si vous souhaitez que nous développions le contenu avec d’autres informations, telles que des cas d’usage potentiels, d’autres services, des considérations d’implémentation ou un guide des prix, adressez-nous vos commentaires GitHub.

Cet article décrit une variante d’une architecture serverless basée sur les événements qui s’exécute sur Azure Kubernetes Service (AKS) avec l’outil de mise à l’échelle KEDA. La solution ingère un flux de données, traite les données, puis écrit les résultats dans une base de données back-end.

Architecture

Diagramme d’architecture montrant le flux de données décrit dans cet article.

Téléchargez un fichier Visio de cette architecture.

Dataflow

  1. AKS est utilisé avec l’outil de mise à l’échelle KEDA pour automatiquement mettre à l’échelle les conteneurs Azure Functions selon le nombre d’événements à traiter.
  2. Les événements arrivent au Event Hub d’entrée.
  3. La fonction Azure de dégroupement et de filtrage est déclenchée pour gérer l’événement. Cette étape filtre les événements indésirables et dégroupe les événements reçus avant de les envoyer au hub d’événements de sortie.
  4. Si la fonction Azure de dégroupement et de filtrage ne parvient pas à stocker l’événement correctement, ce dernier est envoyé au Event Hub de lettres mortes 1.
  5. Les événements arrivant au Event Hub de sortie déclenchent la fonction Azure de transformation. Cette fonction Azure transforme l’événement en message pour l’instance Azure Cosmos DB.
  6. L’événement est stocké dans une base de données Azure Cosmos DB.

Composants

  • Azure Kubernetes Service (AKS) simplifie le déploiement d’un cluster Kubernetes managé dans Azure en déchargeant la surcharge opérationnelle sur Azure. En tant que service Kubernetes hébergé, Azure gère des tâches critiques telles que l’analyse de l’intégrité et la maintenance.
  • KEDA est un outil de mise à l’échelle automatique basé sur les événements, qui est utilisé pour mettre à l’échelle les conteneurs d’un cluster Kubernetes en fonction du nombre d’événements à traiter.
  • Event Hubs ingère le flux de données. Event Hubs est conçu pour les scénarios de diffusion de données à débit élevé.
  • Azure Functions est une solution de calcul serverless. Cette application utilise un modèle événementiel, dans lequel un morceau de code (une fonction) est invoqué par un déclencheur.
  • Azure Cosmos DB est un service de base de données multimodèle qui est disponible en mode serverless et basé sur la consommation. Pour ce scénario, la fonction de traitement d’événements stocke les enregistrements JSON à l’aide d’Azure Cosmos DB for NoSQL.

Notes

Pour les scénarios IoT (Internet des objets), nous recommandons Azure IoT Hub. IoT Hub a un point de terminaison intégré qui est compatible avec l’API Azure Event Hubs ; vous pouvez donc utiliser l’un ou l’autre service dans cette architecture sans aucune modification majeure dans le traitement back-end. Pour plus d’informations, consultez Connexion des appareils IoT à Azure : IoT Hub et Event Hubs.

Détails du scénario

Cet article décrit une architecture serverless basée sur les événements qui s’exécute sur AKS avec l’outil de mise à l’échelle KEDA. La solution ingère un flux de données, traite les données, puis écrit les résultats dans une base de données back-end.

Pour en savoir plus sur les concepts de base, les considérations et les approches du traitement des événements serverless, examinez l’architecture de référence pour le traitement des événements serverless.

Cas d’usage potentiels

Un cas d’usage courant pour implémenter un modèle de traitement de flux d’événements de bout en bout inclut le service d’ingestion de streaming Event Hubs pour recevoir et traiter des événements par seconde en utilisant une logique de dégroupement et de transformation implémentée avec des fonctions hautement évolutives déclenchées par un Event Hub.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Auteur principal :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes