Dela via


Strömma data från Azure Stream Analytics till confluent-molnet

Den här artikeln beskriver hur du ansluter ditt Azure Stream Analytics-jobb direkt till confluent cloud kafka som utdata.

Förutsättningar

  • Du har ett confluent cloud kafka-kluster.
  • Du har en API-nyckelfil för ditt kafka-kluster som innehåller DEN API-nyckel som ska användas som användarnamn, API Secret för att använda som lösenord och Bootstrap-serveradressen.
  • Du har ett Azure Stream Analytics-jobb. Du kan skapa ett Azure Stream Analytics-jobb genom att följa dokumentationen: Snabbstart: Skapa ett Stream Analytics-jobb med hjälp av Azure-portalen
  • Ditt confluent cloud kafka-kluster måste vara offentligt tillgängligt och inte bakom en brandvägg eller skyddas i ett virtuellt nätverk.
  • Du bör ha ett befintligt nyckelvalv. Du kan skapa en nyckelvalvsresurs genom att följa dokumentationen Snabbstart: Skapa ett nyckelvalv med Hjälp av Azure-portalen

Konfigurera Azure Stream Analytics för att använda hanterad identitet

Azure Stream Analytics kräver att du konfigurerar hanterad identitet för åtkomst till nyckelvalvet. Du kan konfigurera ditt ASA-jobb för att använda hanterad identitet genom att gå till fliken Hanterad identitet till vänster under Konfigurera.

Skärmbild som visar hur du konfigurerar hanterad identitet för ett ASA-jobb.

  1. Klicka på fliken hanterad identitet under Konfigurera.
  2. Välj växla identitet och välj den identitet som ska användas med jobbet: systemtilldelad identitet eller användartilldelad identitet.
  3. För användartilldelad identitet väljer du den prenumeration där din användartilldelade identitet finns och väljer namnet på din identitet.
  4. Granska och spara.

Ladda ned certifikat från LetsEncrypt

Stream Analytics kafka-utdata är en librdkafka-baserad klient. För att utdata ska kunna ansluta till confluent-molnet behöver du TLS-certifikat som confluent-molnet använder för serverautentisering. Confluent-molnet använder TLS-certifikat från Let's Encrypt, en öppen certifikatutfärdare (CA).

Ladda ned ISRG Root X1-certifikatet i PEM-format på platsen för LetsEncrypt.

Skärmbild som visar certifikatet som ska laddas ned från webbplatsen för lets encrypt.

Konfigurera Nyckelvalv med behörigheter

Azure Stream Analytics integreras sömlöst med Azure Key Vault för att få åtkomst till lagrade hemligheter som behövs för autentisering och kryptering när du använder mTLS eller SASL_SSL säkerhetsprotokoll. Ditt Azure Stream Analytics-jobb ansluter till ditt Azure Key Vault med hanterad identitet för att säkerställa en säker anslutning och undvika exfiltrering av hemligheter. Om du vill använda certifikatet som du laddade ned måste du ladda upp det till nyckelvalvet först.

Om du vill ladda upp certifikat måste du ha "Key Vault-administratör" åtkomst till ditt Nyckelvalv. Följ följande för att ge administratörsåtkomst:

Kommentar

Du måste ha behörigheten "Ägare" för att bevilja andra behörigheter för nyckelvalvet.

  1. I din nyckelvalv väljer du Åtkomstkontroll (IAM).

  2. Välj Lägg till>rolltilldelning för att öppna sidan Lägg till rolltilldelning.

  3. Tilldela rollen med hjälp av följande konfiguration:

Inställning Värde
Roll Key Vault-administratör
Tilldela åtkomst till Användaren, gruppen eller tjänstens huvudnamn
Medlemmar <Din kontoinformation eller e-post>

Ladda upp certifikat till Key Vault som en hemlighet via Azure CLI

Viktigt!

Du måste ha behörigheten "Key Vault-administratör" för att det här kommandot ska fungera korrekt. Du måste ladda upp certifikatet som en hemlighet. Du måste använda Azure CLI för att ladda upp certifikat som hemligheter till ditt nyckelvalv. Ditt Azure Stream Analytics-jobb misslyckas när certifikatet som används för autentisering upphör att gälla. För att lösa detta måste du uppdatera/ersätta certifikatet i nyckelvalvet och starta om Azure Stream Analytics-jobbet.

Kontrollera att Azure CLI har konfigurerats och installerats lokalt med PowerShell. Du kan besöka den här sidan för att få vägledning om hur du konfigurerar Azure CLI: Kom igång med Azure CLI

Logga in på Azure CLI:

az login

Anslut till din prenumeration som innehåller ditt nyckelvalv:

az account set --subscription <subscription name>

Till exempel:

az account set --subscription mymicrosoftsubscription

Följande kommando kan ladda upp certifikatet som en hemlighet till ditt nyckelvalv:

<your key vault> är namnet på nyckelvalvet som du vill ladda upp certifikatet till. <name of the secret> är ett namn som du vill ge din hemlighet och hur den visas i nyckelvalvet. <file path to certificate> är sökvägen till platsen för det nedladdade certifikatet. Du kan högerklicka på certifikatet och kopiera sökvägen till certifikatet.

az keyvault secret set --vault-name <your key vault> --name <name of the secret> --file <file path to certificate>

Till exempel:

az keyvault secret set --vault-name mykeyvault --name confluentsecret --file C:\Users\Downloads\isrgrootx1.pem

Ge Stream Analytics-jobbet behörighet att komma åt certifikatet i nyckelvalvet

För att ditt Azure Stream Analytics-jobb ska kunna läsa hemligheten i nyckelvalvet måste jobbet ha behörighet att komma åt nyckelvalvet. Använd följande steg för att bevilja särskilda behörigheter till ditt stream analytics-jobb:

  1. Välj Åtkomstkontroll (IAM) i nyckelvalvet.

  2. Välj Lägg till>rolltilldelning för att öppna sidan Lägg till rolltilldelning.

  3. Tilldela rollen med hjälp av följande konfiguration:

Inställning Värde
Roll Nyckelvalvshemlighetsanvändare
Hanterad identitet Stream Analytics-jobb för systemtilldelad hanterad identitet eller användartilldelad hanterad identitet
Medlemmar <Namnet på ditt Stream Analytics-jobb> eller <namnet på den användartilldelade identiteten>

Konfigurera kafka-utdata i ditt stream analytics-jobb

  1. I stream analytics-jobbet väljer du Utdata under Jobbtopologi

  2. Välj Lägg till utdata>Kafka för att öppna bladet Kafka Ny utdatakonfiguration.

  3. Använd följande konfiguration:

Kommentar

För SASL_SSL och SASL_PLAINTEXT stöder Azure Stream Analytics endast PLAIN SASL-mekanism.

Egenskapsnamn beskrivning
Utdataalias Ett eget namn som används i frågor för att referera till dina indata
Bootstrap-serveradresser En lista över värd-/portpar för att upprätta anslutningen till ditt confluent cloud kafka-kluster. Exempel: pkc-56d1g.eastus.azure.confluent.cloud:9092
Kafka-ämne Namnet på ditt kafka-ämne i ditt confluent cloud kafka-kluster.
Säkerhetsprotokoll Välj SASL_SSL. Den mekanism som stöds är PLAIN.
Format för händelseserierering Serialiseringsformatet (JSON, CSV, Avro, Parquet, Protobuf) för inkommande dataström.
Partitionsnyckel Azure Stream Analytics tilldelar partitioner med rund partitionering. Håll dig tom om en nyckel inte partitionera dina indata
Kafka-händelsekomprimeringstyp Komprimeringstypen som används för utgående dataströmmar, till exempel Gzip, Snappy, Lz4, Zstd eller None.

Viktigt!

Confluent Cloud stöder autentisering med api-nycklar, OAuth eller enkel inloggning med SAML (SSO). Azure Stream Analytics stöder inte autentisering med enkel inloggning med OAuth eller SAML (SSO). Du kan ansluta till confluent-molnet med hjälp av en API-nyckel som har åtkomst på ämnesnivå via SASL_SSL säkerhetsprotokoll. Om du vill autentisera till confluent-molnet måste du använda SASL_SSL och konfigurera ditt jobb för att autentisera till confluent-molnet med hjälp av din API-nyckel .

Använd följande konfiguration:

Inställning Värde
Username API-nyckel för confluent-moln
Lösenord confluent-moln-API-hemlighet
Namn på nyckelvalv Namnet på Azure Key Vault med uppladdat certifikat
Truststore-certifikat namnet på nyckelvalvshemligheten som innehåller ISRG Root X1-certifikatet

Skärmbild som visar hur du konfigurerar kafka-utdata för ett stream analytics-jobb.

Spara konfiguration och testanslutning

Spara konfigurationen. Ditt Azure Stream Analytics-jobb verifierar med hjälp av den angivna konfigurationen. En lyckad testanslutning visas i portalen om ditt stream analytics-jobb kan ansluta till kafka-klustret.

Skärmbild som visar lyckad testanslutning till confluent kafka-utdata.

Begränsningar

  • Certifikatet som du laddar upp till key vault måste vara i PEM-format.
  • Den lägsta versionen av kafka måste vara kafka version 0.10.
  • Azure Stream Analytics stöder inte autentisering till confluent-molnet med hjälp av enkel inloggning med OAuth eller SAML (SSO). Du måste använda API-nyckeln via SASL_SSL-protokollet.
  • Du måste använda Azure CLI för att ladda upp certifikat som en hemlighet till nyckelvalvet. Du kan inte ladda upp certifikat med flera hemligheter till nyckelvalvet med hjälp av Azure-portalen.

Kommentar

Om du vill ha direkt hjälp med att använda Azure Stream Analytics Kafka-utdata kan du kontakta askasa@microsoft.com.

Nästa steg