Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Apache Kafka è una piattaforma di streaming distribuito open-source che le app utilizzano per pubblicare e abbonarsi a flussi di record man mano che si verificano. È comunemente utilizzato per messaggistica, monitoraggio delle attività del sito web, metriche, aggregazione di log e elaborazione di stream.
Se i tuoi dati scorrono attraverso cluster Kafka, puoi collegare direttamente Analisi di flusso di Azure a quei cluster per assorbire e elaborare quei dati senza creare un consumatore personalizzato. L'input Kafka è low code, completamente gestito da Microsoft per rispettare gli standard di conformità aziendale, ed è retrocompatibile con le versioni client a partire dalla 0.10. Puoi connetterti a cluster Kafka all'interno di una rete virtuale o con un endpoint pubblico, utilizzando le convenzioni di configurazione Kafka esistenti. I tipi di compressione supportati sono Nessuno, Gzip, Snappy, LZ4 e Zstd.
Questo articolo ti mostra come configurare un cluster Kafka come fonte di input per un lavoro Analisi di flusso di Azure.
Imposta Kafka come sorgente di input
Questo articolo illustra come configurare Kafka come origine di input per Analisi di flusso di Azure. Vengono illustrati i passaggi seguenti:
- Creare un job di Stream Analytics di Azure.
- Configura il processo di Analisi di flusso di Azure per usare l'identità gestita se si utilizzano i protocolli di sicurezza mTLS o SASL_SSL.
- Configura Azure Key Vault se usi mTLS o protocolli di sicurezza SASL_SSL.
- Carica i certificati come segreti in Azure Key Vault.
- Concedere le autorizzazioni di Analisi di flusso di Azure per accedere al certificato caricato.
- Configurare l'input Kafka nel processo di Analisi di flusso di Azure.
Nota
A seconda di come è configurato il tuo cluster Kafka e del tipo di cluster Kafka che stai usando, alcuni di questi passaggi potrebbero non applicarsi a te. Ad esempio, se usi Confluent Cloud Kafka, non è necessario caricare un certificato per usare il connettore Kafka. Se il tuo cluster Kafka si trova all'interno di una rete virtuale (VNet) o dietro un firewall, potresti dover configurare il tuo lavoro Analisi di flusso di Azure per accedere al tuo argomento Kafka tramite un link privato o una configurazione di rete dedicata.
Configura l'input Kafka
Configura l'input Kafka in modo che il processo di Analisi di flusso di Azure possa connettersi al cluster Kafka e leggere da un topic.
Importante
Per configurare il cluster Kafka come input, il tipo di timestamp dell'argomento di input deve essere LogAppendTime. L'unico tipo di timestamp supportato da Analisi di flusso di Azure è LogAppendTime. Analisi di flusso di Azure supporta solo il formato decimale numerico.
Nel tuo lavoro Analisi di flusso di Azure, aggiungi un input Kafka.
Imposta ogni proprietà di input usando i valori descritti nella tabella seguente:
Nome proprietà Descrizione Alias di ingresso/uscita Un nome amichevole usato nelle query per fare riferimento al tuo input o output. Indirizzi del server Bootstrap Un elenco delle coppie host/porta da collegare al cluster Kafka. Argomento kafka Un flusso di dati denominato, ordinato e partizionato che supporta la pubblicazione-iscrizione e l'elaborazione guidata dagli eventi dei messaggi. Protocollo di sicurezza Come desideri connetterti al cluster Kafka. Analisi di flusso di Azure supporta mTLS, SASL_SSL, SASL_PLAINTEXT o Nessuno. ID gruppo consumatori Nome del gruppo di consumer Kafka di cui deve far parte l'input. Analisi di flusso di Azure lo assegna automaticamente se non ne fornisci uno. Formato di serializzazione eventi Il formato di serializzazione (JSON, CSV, Avro, Parquet e Protobuf) del flusso dati in ingresso. Salva la configurazione di ingresso.
Imposta autenticazione e crittografia
Imposta autenticazione e crittografia per proteggere la connessione tra il tuo lavoro Analisi di flusso di Azure e il tuo cluster Kafka. Per un tutorial dettagliato per connettersi a Confluent Cloud Kafka, consulta Stream data from Confluent Cloud Kafka with Analisi di flusso di Azure per l'input e Stream data from Analisi di flusso di Azure into Confluent Cloud per l'output.
Importante
Confluent Cloud supporta l'autenticazione utilizzando API Keys, OAuth o single sign-on (SSO) SAML. Analisi di flusso di Azure non supporta l'autenticazione di OAuth o SAML Single Sign-On (SSO). Puoi connetterti a Confluent Cloud usando una API Key con accesso a livello di argomento tramite il protocollo di sicurezza SASL_SSL.
Scegli uno dei quattro protocolli di sicurezza supportati che corrisponde al tuo cluster Kafka, come descritto nella seguente tabella:
Nome proprietà Descrizione mTLS Crittografia e autenticazione. Supporta meccanismi di sicurezza PLAIN, SCRAM-SHA-256 e SCRAM-SHA-512. SASL_SSL Combina due diversi meccanismi di sicurezza, SASL (Simple Authentication and Security Layer) e Secure Sockets Layer (SSL), per garantire che sia l'autenticazione che la crittografia siano in atto per la trasmissione dei dati. Il protocollo SASL_SSL supporta meccanismi di sicurezza PLAIN, SCRAM-SHA-256 e SCRAM-SHA-512. SASL_PLAINTEXT Autenticazione standard con un nome utente ma senza crittografia. nessuno Nessuna autenticazione e crittografia. Configura le credenziali per il protocollo selezionato nel tuo lavoro Analisi di flusso di Azure.
Eseguire l'integrazione con Azure Key Vault
Analisi di flusso di Azure si integra con Azure Key Vault per accedere ai segreti memorizzati necessari per l'autenticazione e la crittografia quando si usano mTLS o protocolli di sicurezza SASL_SSL. Il tuo lavoro Analisi di flusso di Azure si collega al tuo Azure Key Vault utilizzando l'identità gestita per garantire una connessione sicura ed evitare l'esfiltrazione di segreti. I certificati vengono archiviati come segreti nel servizio di gestione delle chiavi e devono essere in formato PEM. Per integrare il tuo lavoro Analisi di flusso di Azure con Azure Key Vault, completa i seguenti compiti, che le sezioni seguenti descrivono in dettaglio.
Nota
Quando usi certificati trust store con protocolli di sicurezza mTLS o SASL_SSL, devi avere configurato Azure Key Vault e un'identità gestita per il tuo lavoro Analisi di flusso di Azure. Controllare le impostazioni di rete dell'insieme di credenziali per assicurarsi che l'opzione Consenti accesso pubblico da tutte le reti sia selezionata. Se il tuo key vault è in un VNet o consente l'accesso solo da specifiche reti, devi iniettare il tuo job Analisi di flusso di Azure in un VNet che contiene il key vault, oppure iniettare il tuo job Analisi di flusso di Azure in un VNet e poi collegare il tuo key vault al job contenente VNet usando gli endpoint di servizio.
- Configura il Key Vault con i permessi richiesti.
- Carica il tuo certificato nella cassaforte delle chiavi come segreto.
- Configura l'identità gestita per il tuo lavoro Analisi di flusso di Azure.
- Concedi al tuo lavoro di Stream Analytics il permesso di accedere al certificato nel caveau delle chiavi.
Configura il caveau delle chiavi con i permessi
Per creare una risorsa di key vault, vedi Quickstart: Create a key vault usando il portale Azure. Hai bisogno dell'accesso di Key Vault Administrator al tuo key vault per caricare i certificati. Per concedere l'accesso agli amministratori, segui questi passaggi:
Nota
Per concedere altre autorizzazioni di Key Vault, sono necessarie le autorizzazioni di Proprietario.
Seleziona Controllo di accesso (IAM).
Selezionare Aggiungi>Aggiungi assegnazione di ruolo per aprire la pagina Aggiungi assegnazione di ruolo.
Assegna il ruolo utilizzando la seguente configurazione:
Impostazione Valore Ruolo Amministratore di "Key Vault" Assegna accesso a Utente, gruppo o entità servizio Membri <Informazioni o messaggi di posta elettronica dell'account>
Carica il certificato nel caveau delle chiavi
Assicurati di avere interfaccia della riga di comando di Azure configurata localmente con PowerShell. Per indicazioni su come configurare interfaccia della riga di comando di Azure, vedi Inizia con interfaccia della riga di comando di Azure.
I passaggi seguenti consentono di caricare il certificato nel key vault come segreto.
Importante
Devi avere i permessi di Key Vault Administrator sul tuo Key vault affinché questo comando funzioni correttamente. Devi caricare il certificato come segreto. È necessario usare interfaccia della riga di comando di Azure per caricare i certificati come segreti nel key vault. Il tuo lavoro Analisi di flusso di Azure fallisce quando il certificato usato per l'autenticazione scade. Per risolvere questo problema, aggiorna o sostituisci il certificato nel tuo caveau chiave e riavvia il lavoro di Analisi di flusso di Azure.
Accedi alla CLI di Azure.
az loginConnettiti all'abbonamento che contiene la tua cassaforte delle chiavi.
az account set --subscription <subscription name>Carica il certificato come segreto. Sostituisci
<your key vault>con il nome dell'insieme di credenziali delle chiavi,<name of the secret>con un nome a tua scelta da assegnare al segreto e<file path to certificate>con il percorso del file del certificato. È possibile fare clic con il pulsante destro del mouse e copiare il percorso del certificato.az keyvault secret set --vault-name <your key vault> --name <name of the secret> --file <file path to certificate>Ad esempio:
az keyvault secret set --vault-name mykeyvault --name kafkasecret --file C:\Users\Downloads\certificatefile.pem
Configurare identità gestita
Analisi di flusso di Azure richiede un'identità gestita per accedere al caveau delle chiavi. Configura il tuo lavoro Analisi di flusso di Azure per usare l'identità gestita andando nella scheda Identità gestita sotto Configura.
Per configurare l'identità gestita, segui questi passaggi:
Seleziona la scheda Identità Gestita sotto Configura.
Seleziona Switch Identity e seleziona l'identità da usare con il lavoro: identità assegnata al sistema o identità assegnata dall'utente.
Per l'identità assegnata all'utente, seleziona l'abbonamento in cui si trova la tua identità assegnata dall'utente e seleziona il nome della tua identità.
Rivedi e seleziona Salva.
Concedere ai permessi di lavoro di Stream Analytics per accedere al certificato
Perché il processo di Analisi di flusso di Azure possa leggere il segreto nell'insieme di credenziali delle chiavi, deve disporre dell'autorizzazione di accesso all'insieme di credenziali delle chiavi.
Per concedere i permessi al tuo lavoro di Stream Analytics, segui questi passaggi:
Seleziona Controllo di accesso (IAM).
Selezionare Aggiungi>Aggiungi assegnazione di ruolo per aprire la pagina Aggiungi assegnazione di ruolo.
Assegna il ruolo utilizzando la seguente configurazione:
Impostazione Valore Ruolo Utente dei segreti di Key Vault Identità gestita Processo di Analisi di flusso per l'identità gestita assegnata dal sistema o l'identità gestita assegnata dall'utente Membri <Nome del tuo processo di Analisi di flusso> o <nome dell'identità assegnata dall'utente>
Limitazioni e considerazioni sugli input di Kafka
Se il tuo cluster Kafka si trova all'interno di una rete virtuale o dietro un firewall, configura il tuo lavoro Analisi di flusso di Azure per accedere al tuo argomento Kafka usando un link privato o una configurazione di rete dedicata. Per maggiori informazioni, consulta Eseguire il processo di Analisi di flusso di Azure in una rete virtuale di Azure.
Considera le seguenti limitazioni quando usi Kafka come fonte di input:
- Quando configuri il tuo lavoro Analisi di flusso di Azure per usare Rete virtuale/SWIFT, imposta il lavoro con almeno sei unità di streaming o una unità di streaming V2.
- Quando usi mTLS o SASL_SSL con Azure Key Vault, devi convertire il tuo Java Key Store in formato PEM.
- La versione minima di Kafka a cui Analisi di flusso di Azure può connettersi è la versione 0.10.
- Analisi di flusso di Azure non supporta l'autenticazione su Confluent Cloud tramite OAuth o SAML single sign-on (SSO). Devi usare una chiave API tramite il protocollo SASL_SSL.
Per assistenza diretta con l'input Kafka di Analisi di flusso di Azure, contatta askasa@microsoft.com.