Griglia di eventi in Kubernetes - Concetti

Questo articolo descrive i concetti principali in Griglia di eventi in Kubernetes con Azure Arc (anteprima).

Importante

Griglia di eventi in Kubernetes con Azure Arc è attualmente in anteprima pubblica. Questa versione di anteprima viene messa a disposizione senza contratto di servizio e non è consigliata per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere Condizioni supplementari per l'utilizzo delle anteprime di Microsoft Azure.

Eventi

Un evento è un record di dati che annuncia un fatto sull'operazione di un sistema software. In genere, un evento annuncia una modifica dello stato a causa di un segnale generato dal sistema o un segnale osservato dal sistema. Gli eventi contengono due tipi di informazioni:

  • Dati di evento che rappresentano l'occorrenza di una modifica dello stato.

  • Attributi di contesto che forniscono informazioni contestuali sull'occorrenza dell'evento.

    Sia i dati degli eventi che gli attributi di contesto possono essere usati per filtrare gli eventi.

Griglia di eventi in Kubernetes supporta la specifica dello schema CloudEvents . Ecco un esempio di evento che usa lo schema CloudEvents. Griglia di eventi supporta un evento di dimensioni fino a 1 MB.

[{
       "specVersion": "1.0",
       "type" : "orderCreated",
       "source": "myCompanyName/us/webCommerceChannel/myOnlineCommerceSiteBrandName",
       "id" : "eventId-n",
       "time" : "2020-12-25T20:54:07+00:00",
       "subject" : "account/acct-123224/order/o-123456",
       "dataSchema" : "1.0",
       "data" : {
          "orderId" : "123",
          "orderType" : "PO",
          "reference" : "https://www.myCompanyName.com/orders/123"
      }
}]

Source (Sorgente)

L'attributo di origine descrive il contesto in cui si è verificato l'evento. L'origine può essere l'origine degli eventi. Tuttavia, in alcuni casi, esistono produttori che creano e pubblicano eventi. E, questi produttori sono distinti dall'origine. Per semplicità, questo articolo presuppone che l'origine sia il produttore degli eventi.

Ogni origine evento produce eventi di uno o più tipi di evento. Come origine degli eventi, un'applicazione definisce un set di eventi correlati per annunciare le modifiche allo stato. Ogni evento ha informazioni comuni, ad esempio l'origine dell'evento, l'ora in cui si è verificato l'evento e un identificatore univoco. Ogni evento include anche informazioni specifiche rilevanti solo per il tipo specifico di evento. Il supporto per un evento di dimensioni fino a 1 MB è attualmente in anteprima.

Per le proprietà incluse in un evento, vedere Schema CloudEvents.

Autori

Gli editori di eventi sono applicazioni o sistemi che inviano eventi a Griglia di eventi da recapitare ai sottoscrittori di eventi.

Argomenti

Un argomento è una forma di canale di input che espone un endpoint a cui gli editori inviano eventi a Griglia di eventi.

È possibile usare un argomento per una raccolta di eventi correlati. È possibile creare un argomento per ogni categoria di eventi correlati. In alcuni casi, l'origine può essere usata per organizzare gli eventi in categorie perché le origini sono in genere associate a un set di tipi di eventi strettamente correlati ("MyApp.OrderCreated", "MyApp.OderDeleted", "MyApp.OrderRejected" e così via).

Prendere in considerazione un'applicazione che invia eventi correlati alla gestione degli account utente e all'elaborazione degli ordini. È improbabile che un sottoscrittore di eventi sia interessato a usare entrambe le categorie di eventi. Creare due argomenti personalizzati e consentire ai gestori eventi di sottoscrivere l'argomento di interesse. Per le soluzioni di dimensioni ridotte, è preferibile inviare tutti gli eventi a un singolo argomento.

Sottoscrittori di eventi

I sottoscrittori di eventi sono sistemi software come microservizi che espongono endpoint a cui Griglia di eventi offre eventi.

Sottoscrizioni di eventi

Una sottoscrizione di eventi indica a Griglia di eventi gli eventi in un argomento che si è interessati a ricevere (filtro eventi) e dove inviarli (routing eventi). Quando si crea una sottoscrizione di eventi, si specifica un endpoint per la gestione dell'evento. È possibile selezionare gli eventi che si desidera recapitare all'endpoint configurando le clausole di filtro nella sottoscrizione dell'evento.

Gestori eventi

Un gestore eventi è un sistema software che espone un endpoint a cui vengono inviati gli eventi. Il gestore riceve l'evento e esegue azioni per elaborare l'evento. Griglia di eventi supporta diversi tipi di gestori. Come gestore, è possibile usare un servizio di Azure supportato ospitato in Kubernetes o In Azure o in una soluzione personalizzata che espone un hook Web (endpoint) ovunque sia ospitato. A seconda del tipo di gestore, Griglia di eventi segue meccanismi diversi per garantire il recapito dell'evento. Se il gestore eventi di destinazione è un collegamento Web HTTP, l'evento viene riprovato fino a quando il gestore restituisce un codice di stato 200 - OK. Per altre informazioni, vedere Gestori eventi.

Autenticazione di firma di accesso condiviso

Griglia di eventi in Kubernetes fornisce l'autenticazione basata su chiave di firma di accesso condiviso per la pubblicazione di eventi in argomenti.

Recapito di eventi

Griglia di eventi in Kubernetes offre un meccanismo affidabile di recapito e ripetizione dei tentativi. Se Griglia di eventi non è in grado di confermare che un evento è stato ricevuto dall'endpoint del gestore eventi, restituisce l'evento. Per altre informazioni, vedere Recapito di messaggi di Griglia di eventi e nuovi tentativi.

Pubblicazione di eventi batch

Quando si usa un argomento, gli eventi devono essere sempre pubblicati in una matrice. Per scenari a velocità effettiva ridotta, la matrice avrà un solo evento. Per i casi d'uso di volumi elevati, è consigliabile eseguire il batch di diversi eventi insieme per ogni pubblicazione per ottenere un'efficienza maggiore. Le dimensioni dei batch possono arrivare fino a 1 MB. Ogni evento non deve comunque essere maggiore di 1 MB. Per altre informazioni, vedere Recapito eventi batch.

Griglia di eventi nei componenti di Kubernetes

  • L'operatore Griglia di eventi implementa il modello Operatore. Controlla le modifiche dello stato delle risorse griglia di eventi in seguito alle richieste del piano di controllo effettuate al server API di Kubernetes. Quando è presente una richiesta che influisce sullo stato di una qualsiasi risorsa griglia di eventi, l'operatore Griglia di eventi sincronizza lo stato con Il gestore griglia di eventi.

  • Il broker griglia di eventi funge sia da piano di controllo che da operazioni del piano dati.

    Come servizio del piano di controllo, è responsabile del trasferimento dello stato di Griglia di eventi allo stato desiderato comunicato dall'operatore griglia di eventi. Ad esempio, quando viene effettuata una richiesta per creare un nuovo argomento, soddisfa tale richiesta e i metadati del servizio vengono aggiornati.

    Come servizio del piano dati, gestisce tutte le richieste di pubblicazione degli eventi e recapita gli eventi alle proprie destinazioni configurate nelle sottoscrizioni degli eventi.

Passaggi successivi

Per iniziare, vedere Creare argomenti e sottoscrizioni.