Azure Kubernetes nell'elaborazione del flusso di eventi

Servizio Azure Kubernetes
Hub IoT Azure
Hub eventi di Azure
Funzioni di Azure
Azure Cosmos DB

Idee per le soluzioni

Questo articolo è un'idea di soluzione. Per espandere il contenuto con altre informazioni, ad esempio casi d'uso potenziali, servizi alternativi, considerazioni sull'implementazione o indicazioni sui prezzi, inviare commenti e suggerimenti su GitHub.

Questo articolo descrive una variante di un'architettura basata su eventi serverless eseguita su servizio Azure Kubernetes (AKS) con il ridimensionatore KEDA. La soluzione inserisce un flusso di dati, elabora i dati e quindi scrive i risultati in un database back-end.

Architettura

Diagramma dell'architettura che illustra il flusso di dati descritto in questo articolo.

Scaricare un file di Visio di questa architettura.

Flusso di dati

  1. Il servizio Azure Kubernetes con il ridimensionatore KEDA viene usato per ridimensionare automaticamente i contenitori Funzioni di Azure in base al numero di eventi che devono essere elaborati.
  2. Gli eventi arrivano all'hub eventi di input.
  3. La funzione di de-batch e filtro di Azure viene attivata per gestire l'evento. Questo passaggio filtra gli eventi indesiderati e de-batch gli eventi ricevuti prima di inviarli all'hub eventi di output.
  4. Se la funzione di de-batch e filtro di Azure non riesce a archiviare l'evento correttamente, l'evento viene inviato all'hub eventi deadletter 1.
  5. Gli eventi in arrivo nell'hub eventi di output attivano la funzione di Trasformazione di Azure. Questa funzione di Azure trasforma l'evento in un messaggio per l'istanza di Azure Cosmos DB.
  6. L'evento viene archiviato in un database di Azure Cosmos DB.

Componenti

  • servizio Azure Kubernetes semplifica la distribuzione di un cluster Kubernetes gestito in Azure tramite l'offload del sovraccarico operativo in Azure. Come servizio Kubernetes ospitato, Azure gestisce attività critiche quali il monitoraggio dell'integrità e la manutenzione.
  • KEDA è un'utilità di scalabilità automatica guidata dagli eventi usata per ridimensionare i contenitori nel cluster Kubernetes in base al numero di eventi che devono essere elaborati.
  • Hub eventi inserisce il flusso di dati. Hub eventi è progettato per scenari di flusso di dati con velocità effettiva elevata.
  • Funzioni di Azure è un'opzione di calcolo senza server. Usa un modello basato su eventi, in cui un frammento di codice (una funzione) viene richiamato da un trigger.
  • Azure Cosmos DB è un servizio di database multimodelle disponibile in modalità serverless basata sul consumo. Per questo scenario, la funzione di elaborazione eventi archivia i record JSON usando Azure Cosmos DB per NoSQL.

Nota

Per gli scenari Internet of Thing (IoT), è consigliabile hub IoT di Azure. hub IoT dispone di un endpoint predefinito compatibile con l'API Hub eventi di Azure, quindi è possibile usare entrambi i servizi in questa architettura senza modifiche importanti nell'elaborazione back-end. Per informazioni, vedere Connessione di dispositivi IoT ad Azure: hub IoT e hub eventi.

Dettagli dello scenario

Questo articolo descrive un'architettura basata su eventi serverless eseguita nel servizio Azure Kubernetes con il scaler KEDA. La soluzione inserisce un flusso di dati, elabora i dati e quindi scrive i risultati in un database back-end.

Per altre informazioni sui concetti di base, considerazioni e approcci per l'elaborazione di eventi serverless, vedere Architettura di riferimento per l'elaborazione di eventi serverless .

Potenziale caso d'uso

Un caso d'uso comune per l'implementazione di un modello di elaborazione del flusso di eventi end-to-end include il servizio di inserimento di streaming di Hub eventi per ricevere ed elaborare eventi al secondo usando una logica di de-batch e trasformazione implementata con funzioni altamente scalabili e attivate dall'hub eventi.

Autori di contributi

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai collaboratori seguenti.

Autore principale:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passaggi successivi