Sdílet prostřednictvím


Streamování dat z Azure Stream Analytics do confluent cloudu

Tento článek popisuje, jak připojit úlohu Azure Stream Analytics přímo ke confluent cloudu Kafka jako výstup.

Požadavky

  • Máte cluster Kafka s confluentem.
  • Máte soubor klíče rozhraní API pro cluster Kafka, který obsahuje klíč rozhraní API, který se má použít jako uživatelské jméno, tajný klíč rozhraní API pro použití jako heslo a adresu serveru Bootstrap.
  • Máte úlohu Azure Stream Analytics. Úlohu Azure Stream Analytics můžete vytvořit pomocí dokumentace: Rychlý start: Vytvoření úlohy Stream Analytics pomocí webu Azure Portal
  • Cluster Kafka v cloudu confluent musí být veřejně přístupný, a ne za bránou firewall nebo zabezpečeným ve virtuální síti.
  • Měli byste mít existující trezor klíčů. Prostředek trezoru klíčů můžete vytvořit pomocí rychlého startu dokumentace : Vytvoření trezoru klíčů pomocí webu Azure Portal

Konfigurace Azure Stream Analytics pro použití spravované identity

Azure Stream Analytics vyžaduje, abyste nakonfigurovali spravovanou identitu pro přístup k trezoru klíčů. Úlohu ASA můžete nakonfigurovat tak, aby používala spravovanou identitu, a to tak, že přejdete na kartu Spravovaná identita na levé straně v části Konfigurovat.

Screenshot showing how to configure managed identity for an ASA job.

  1. V části Konfigurace klikněte na kartu spravované identity.
  2. Vyberte Možnost Přepnout identitu a vyberte identitu, která se má použít s úlohou: identita přiřazená systémem nebo identita přiřazená uživatelem.
  3. Pro identitu přiřazenou uživatelem vyberte předplatné, ve kterém se nachází identita přiřazená uživatelem, a vyberte název vaší identity.
  4. Zkontrolujte a uložte.

Stažení certifikátu z LetsEncryptu

Výstup kafka stream Analytics je klient založený na knihovně librdkafka. Aby se výstup připojil ke cloudu confluent, potřebujete certifikáty TLS, které cloud confluent používá k ověřování serveru. Cloud Confluent používá certifikáty TLS z let's Encrypt, otevřené certifikační autority (CA).

Stáhněte certifikát ISRG Root X1 ve formátu PEM na webu LetsEncrypt.

Screenshot showing the certificate to download from the website of lets encrypt.

Konfigurace trezoru klíčů s oprávněními

Azure Stream Analytics se bezproblémově integruje se službou Azure Key Vault pro přístup k uloženým tajným kódům potřebným k ověřování a šifrování při použití mTLS nebo SASL_SSL protokolů zabezpečení. Vaše úloha Azure Stream Analytics se připojí k trezoru klíčů Azure pomocí spravované identity, aby se zajistilo zabezpečené připojení a vyhnuli se exfiltraci tajných kódů. Pokud chcete certifikát, který jste stáhli, použít, musíte ho nejdřív nahrát do trezoru klíčů.

Pokud chcete nahrát certifikáty, musíte mít k trezoru klíčů přístup "Key Vault Správa istrator". Pokud chcete udělit přístup správce, postupujte následovně:

Poznámka:

Abyste mohli udělit další oprávnění trezoru klíčů, musíte mít oprávnění Vlastník.

  1. Ve službě keyvault vyberte Řízení přístupu (IAM).

  2. Výběrem možnosti Přidat>přiřazení role otevřete stránku Přidat přiřazení role.

  3. Přiřaďte roli pomocí následující konfigurace:

Nastavení Hodnota
Role Správa istrator služby Key Vault
Přiřadit přístup k Uživatel, skupina nebo instanční objekt
Členové <Informace o účtu nebo e-mail>

Nahrání certifikátu do trezoru klíčů jako tajného kódu prostřednictvím Azure CLI

Důležité

Abyste mohli tento příkaz správně fungovat, musíte mít oprávnění ke službě Key Vault Správa istrator, aby tento příkaz fungoval správně, musíte certifikát nahrát jako tajný klíč. K nahrání certifikátů jako tajných kódů do trezoru klíčů musíte použít Azure CLI. Vaše úloha Azure Stream Analytics selže, když vyprší platnost certifikátu použitého k ověření. Pokud chcete tento problém vyřešit, musíte aktualizovat nebo nahradit certifikát v trezoru klíčů a restartovat úlohu Azure Stream Analytics.

Ujistěte se, že máte azure CLI nakonfigurované a nainstalované místně pomocí PowerShellu. Na této stránce najdete pokyny k nastavení Azure CLI: Začínáme s Azure CLI

Přihlášení k Azure CLI:

az login

Připojení k předplatnému obsahujícímu váš trezor klíčů:

az account set --subscription <subscription name>

Příklad:

az account set --subscription mymicrosoftsubscription

Následující příkaz může certifikát nahrát jako tajný kód do trezoru klíčů:

Jedná se <your key vault> o název trezoru klíčů, do kterého chcete certifikát nahrát. <name of the secret> je libovolný název, který chcete předat tajnému kódu a jak se zobrazí v trezoru klíčů. <file path to certificate> je cesta k umístění staženého certifikátu. Můžete kliknout pravým tlačítkem myši na certifikát a zkopírovat cestu k certifikátu.

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

Příklad:

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

Udělení oprávnění úlohy Stream Analytics pro přístup k certifikátu v trezoru klíčů

Aby vaše úloha Azure Stream Analytics četla tajný klíč v trezoru klíčů, musí mít úloha oprávnění pro přístup k trezoru klíčů. Pomocí následujících kroků udělte úlohu Stream Analytics speciální oprávnění:

  1. V trezoru klíčů vyberte Řízení přístupu (IAM).

  2. Výběrem možnosti Přidat>přiřazení role otevřete stránku Přidat přiřazení role.

  3. Přiřaďte roli pomocí následující konfigurace:

Nastavení Hodnota
Role Uživatel tajných kódů trezoru klíčů
Spravovaná identita Úloha Stream Analytics pro spravovanou identitu přiřazenou systémem nebo spravovanou identitu přiřazenou uživatelem
Členové <Název úlohy> Stream Analytics nebo <názvu identity přiřazené uživatelem>

Konfigurace výstupu Kafka v úloze Stream Analytics

  1. V úloze Stream Analytics vyberte Výstupy v části Topologie úlohy.

  2. Výběrem možnosti Přidat výstup>Kafka otevřete okno Konfigurace nového výstupu Kafka.

  3. Použijte následující konfiguraci:

Poznámka:

Pro SASL_SSL a SASL_PLAINTEXT podporuje Azure Stream Analytics pouze mechanismus PLAIN SASL.

Název vlastnosti Popis
Alias pro výstup Popisný název použitý v dotazech pro odkaz na vstup
Adresy serveru Bootstrap Seznam dvojic hostitelů a portů pro navázání připojení ke clusteru confluent cloud kafka. Příklad: pkc-56d1g.eastus.azure.confluent.cloud:9092
Téma Kafka Název tématu Kafka v clusteru confluent cloud kafka.
Protokol zabezpečení Vyberte SASL_SSL. Podporovaný mechanismus je PLAIN.
Formát serializace událostí Formát serializace (JSON, CSV, Avro, Parquet, Protobuf) příchozího datového proudu.
Klíč oddílu Azure Stream Analytics přiřazuje oddíly pomocí kruhového dělení. Pokud klíč neudělí váš vstup do oddílů, ponechejte prázdné.
Typ komprese událostí Kafka Typ komprese používaný pro odchozí datové proudy, například Gzip, Snappy, Lz4, Zstd nebo None.

Důležité

Confluent Cloud podporuje ověřování pomocí klíčů rozhraní API, OAuth nebo jednotného přihlašování SAML. Azure Stream Analytics nepodporuje ověřování pomocí OAuth nebo jednotného přihlašování SAML. Ke cloudu confluent se můžete připojit pomocí klíče rozhraní API, který má přístup na úrovni tématu prostřednictvím protokolu zabezpečení SASL_SSL. Pokud se chcete ověřit v cloudu confluent, budete muset použít SASL_SSL a nakonfigurovat úlohu tak, aby se ověřila v cloudu confluent pomocí klíče rozhraní API.

Použijte následující konfiguraci:

Nastavení Hodnota
Username confluent cloud API Key
Password confluent cloud API secret
Název trezoru klíčů Název služby Azure Key Vault s nahraným certifikátem
Certifikáty truststore název tajného klíče trezoru klíčů, který obsahuje certifikát ISRG Root X1

Screenshot showing how to configure kafka output for a stream analytics job.

Uložení konfigurace a testování připojení

Uložte konfiguraci. Vaše úloha Azure Stream Analytics ověří pomocí poskytnuté konfigurace. Úspěšné testovací připojení se zobrazí na portálu, pokud se vaše úloha Stream Analytics může připojit k vašemu clusteru Kafka.

Screenshot showing successful test connection to confluent kafka output.

Omezení

  • Certifikát, který nahrajete do trezoru klíčů, musí být ve formátu PEM.
  • Minimální verze kafka musí být kafka verze 0.10.
  • Azure Stream Analytics nepodporuje ověřování pro confluent cloud pomocí OAuth nebo jednotného přihlašování SAML. Klíč rozhraní API musíte použít prostřednictvím protokolu SASL_SSL.
  • K nahrání certifikátu jako tajného klíče do trezoru klíčů musíte použít Azure CLI. Certifikáty s víceřádkovými tajnými kódy nemůžete nahrát do trezoru klíčů pomocí webu Azure Portal.

Poznámka:

Pokud chcete získat přímou pomoc s používáním výstupu Kafka služby Azure Stream Analytics, obraťte se na askasa@microsoft.com.

Další kroky