Megosztás a következőn keresztül:


Adatok streamelése a Kafkából az Azure Stream Analyticsbe (előzetes verzió)

A Kafka egy elosztott streamelési platform, amellyel rekordstreameket tehet közzé és iratkozhat fel. A Kafka lehetővé teszi az alkalmazások számára a rekordok feldolgozását. Ez egy nyílt forráskódú rendszer, amelyet az Apache Software Foundation fejlesztett ki Java és Scala nyelven.

A főbb használati esetek a következők:

  • Üzenetkezelés
  • Webhelytevékenység-nyomon követés
  • Mérőszámok
  • Naplóösszesítés
  • Streamfeldolgozás

Az Azure Stream Analytics lehetővé teszi, hogy közvetlenül a Kafka-fürtökhöz csatlakozzon az adatok betöltéséhez. A megoldás alacsony kódszámú, és teljes egészében a Microsoft Azure Stream Analytics csapata felügyeli, lehetővé téve, hogy megfeleljen az üzleti megfelelőségi szabványoknak. Az ASA Kafka bemenete visszamenőlegesen kompatibilis, és a legújabb ügyfélkiadással rendelkező összes verziót támogatja a 0.10-es verziótól kezdve. A felhasználók a konfigurációktól függően csatlakozhatnak egy virtuális hálózaton belüli Kafka-fürtökhöz és egy nyilvános végponttal rendelkező Kafka-fürtökhöz. A konfiguráció a meglévő Kafka konfigurációs konvenciókra támaszkodik. A támogatott tömörítési típusok: None, Gzip, Snappy, LZ4 és Zstd.

Lépések

Ez a cikk bemutatja, hogyan állíthatja be a Kafkát bemeneti forrásként az Azure Stream Analyticshez. Hat lépésből áll:

  1. Azure Stream Analytics-feladat létrehozása.
  2. Konfigurálja az Azure Stream Analytics-feladatot felügyelt identitás használatára, ha mTLS-t vagy SASL_SSL biztonsági protokollokat használ.
  3. Ha mTLS-t vagy SASL_SSL biztonsági protokollokat használ, konfigurálja az Azure Key Vaultot.
  4. Tanúsítványok feltöltése titkos kulcsként az Azure Key Vaultba.
  5. Adjon engedélyeket az Azure Stream Analyticsnek a feltöltött tanúsítvány eléréséhez.
  6. Konfigurálja a Kafka-bemenetet az Azure Stream Analytics-feladatban.

Feljegyzés

A Kafka-fürt konfigurálásának módjától és a használt Kafka-fürt típusától függően előfordulhat, hogy a fenti lépések némelyike nem vonatkozik Önre. Ilyenek például a következők: ha egybefüggő felhőbeli Kafkát használ, nem kell feltöltenie egy tanúsítványt a Kafka-összekötő használatához. Ha a Kafka-fürt egy virtuális hálózaton (VNET) belül vagy tűzfal mögött található, előfordulhat, hogy az Azure Stream Analytics-feladatot úgy kell konfigurálnia, hogy privát hivatkozással vagy dedikált hálózati konfigurációval férhessen hozzá a Kafka-témakörhöz.

Konfiguráció

Az alábbi táblázat felsorolja a Kafka-bemenet létrehozásához használt tulajdonságneveket és azok leírását:

Fontos

A Kafka-fürt bemenetként való konfigurálásához a bemeneti témakör időbélyeg-típusának LogAppendTime-nak kell lennie. Az Azure Stream Analytics egyetlen időbélyegtípusa a LogAppendTime. Az Azure Stream Analytics csak numerikus decimális formátumot támogat.

Tulajdonság neve Leírás
Bemeneti/kimeneti alias A lekérdezésekben a bemenetre vagy kimenetre való hivatkozáshoz használt rövid név
Bootstrap-kiszolgáló címei A Kafka-fürthöz való kapcsolat létrehozásához használt gazdagép-/portpárok listája.
Kafka-témakör Elnevezett, rendezett és particionált adatfolyam, amely lehetővé teszi az üzenetek közzétételre való feliratkozását és eseményvezérelt feldolgozását.
Biztonsági protokoll Hogyan szeretne csatlakozni a Kafka-fürthöz. Az Azure Stream Analytics támogatja az mTLS, SASL_SSL, SASL_PLAINTEXT vagy None szolgáltatást.
Fogyasztói csoport azonosítója Annak a Kafka fogyasztói csoportnak a neve, amelyhez a bemenetnek hozzá kell tartoznia. Ha nincs megadva, a rendszer automatikusan hozzárendeli.
Esemény szerializálási formátuma A bejövő adatfolyam szerializálási formátuma (JSON, CSV, Avro, Parquet, Protobuf).

Képernyőkép a kafka-bemenet streamelemzési feladatokhoz való konfigurálásáról.

Hitelesítés és titkosítás

A Kafka-fürtökhöz való csatlakozáshoz négyféle biztonsági protokollt használhat:

Tulajdonság neve Leírás
mTLS Titkosítás és hitelesítés. Támogatja az EGYSZERŰ, a SCRAM-SHA-256 és a SCRAM-SHA-512 biztonsági mechanizmusokat.
SASL_SSL Két különböző biztonsági mechanizmust kombinál – SASL (egyszerű hitelesítési és biztonsági réteg) és SSL (Secure Sockets Layer) – annak biztosítása érdekében, hogy a hitelesítés és a titkosítás is elérhető legyen az adatátvitelhez. A SASL_SSL protokoll támogatja a PLAIN, a SCRAM-SHA-256 és a SCRAM-SHA-512 biztonsági mechanizmusokat.
SASL_PLAINTEXT standard hitelesítés felhasználónévvel és jelszóval titkosítás nélkül
Egyik sem Nincs hitelesítés és titkosítás.

Fontos

A Confluent Cloud api-kulcsok, OAuth vagy SAML egyszeri bejelentkezés (SSO) használatával támogatja a hitelesítést. Az Azure Stream Analytics nem támogatja az egyszeri bejelentkezéses (SSO) OAuth- vagy SAML-hitelesítést. A confluent felhőhöz egy témakörszintű hozzáféréssel rendelkező API-kulccsal csatlakozhat a SASL_SSL biztonsági protokollon keresztül.

A confluent cloud kakfa-hoz való csatlakozással kapcsolatos részletes oktatóanyagért tekintse meg a dokumentációt:

Key Vault-integráció

Feljegyzés

Ha megbízható tároló tanúsítványokat használ mTLS-sel vagy SASL_SSL biztonsági protokollokkal, az Azure Stream Analytics-feladathoz konfigurált Azure Key Vaulttal és felügyelt identitással kell rendelkeznie. Ellenőrizze a kulcstartó hálózati beállításait, és győződjön meg arról, hogy az összes hálózat nyilvános hozzáférésének engedélyezése be van jelölve. Tegyük fel, hogy a Key Vault egy virtuális hálózaton található, vagy csak bizonyos hálózatokról engedélyezi a hozzáférést. Ebben az esetben az ASA-feladatot egy kulcstartót tartalmazó virtuális hálózatba kell injektálnia, vagy be kell fecskendeznie az ASA-feladatot egy VNET-be, majd a kulcstartót a feladatot tartalmazó virtuális hálózathoz kell csatlakoztatnia szolgáltatásvégpontok használatával.

Az Azure Stream Analytics zökkenőmentesen integrálható az Azure Key Vaulttal az mTLS vagy SASL_SSL biztonsági protokollok használatakor a hitelesítéshez és titkosításhoz szükséges tárolt titkos kódok eléréséhez. Az Azure Stream Analytics-feladat felügyelt identitással csatlakozik az Azure Key Vaulthoz a biztonságos kapcsolat biztosítása és a titkos kódok kiszivárgásának elkerülése érdekében. A tanúsítványok titkos kulcsként vannak tárolva a kulcstartóban, és PEM formátumban kell lenniük.

Key Vault konfigurálása engedélyekkel

Kulcstartó-erőforrást a dokumentációt követve hozhat létre rövid útmutatót: Kulcstartó létrehozása az Azure Portalon A tanúsítványok feltöltéséhez "Key Vault-rendszergazdai" hozzáféréssel kell rendelkeznie a Key Vaulthoz. A rendszergazdai hozzáférés biztosításához kövesse az alábbi lépéseket:

Feljegyzés

A kulcstartó egyéb engedélyeinek megadásához tulajdonosi engedélyekkel kell rendelkeznie.

  1. Válassza a Hozzáférés-vezérlés (IAM) lehetőséget.

  2. Válassza a Szerepkör-hozzárendelés hozzáadása>lehetőséget a Szerepkör-hozzárendelés hozzáadása lap megnyitásához.

  3. Rendelje hozzá a szerepkört a következő konfigurációval:

Beállítás Érték
Szerepkör Key Vault-rendszergazda
Hozzáférés hozzárendelése a következőhöz: Felhasználó, csoport vagy szolgáltatásnév
Tagok <Fiókadatai vagy e-mail-címe>

Tanúsítvány feltöltése a Key Vaultba az Azure CLI-vel

Fontos

A parancs megfelelő működéséhez "Key Vault-rendszergazdai" engedélyekkel kell rendelkeznie a Key Vaulthoz, hogy megfelelően működjön. A tanúsítványt titkos kódként kell feltöltenie. A tanúsítványok titkos kulcsként való feltöltéséhez az Azure CLI-t kell használnia a kulcstartóba. Az Azure Stream Analytics-feladat sikertelen lesz, ha a hitelesítéshez használt tanúsítvány lejár. A probléma megoldásához frissítenie/cserélnie kell a tanúsítványt a kulcstartóban, és újra kell indítania az Azure Stream Analytics-feladatot.

Győződjön meg arról, hogy az Azure CLI helyileg van konfigurálva a PowerShell-lel. Ezen a lapon útmutatást kaphat az Azure CLI beállításához: Az Azure CLI használatának első lépései

Bejelentkezés az Azure CLI-be:

az login

Csatlakozzon a kulcstartót tartalmazó előfizetéshez:

az account set --subscription <subscription name>

A következő parancs titkos kódként töltheti fel a tanúsítványt a kulcstartóba:

Ez <your key vault> annak a kulcstartónak a neve, amelybe fel szeretné tölteni a tanúsítványt. <name of the secret> az a név, amelyet meg szeretne adni a titkos kulcsnak, és hogy hogyan jelenik meg a kulcstartóban. <file path to certificate> a tanúsítvány helyére mutató elérési út. Kattintson a jobb gombbal, és másolja a tanúsítvány elérési útját.

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

Példa:

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

Felügyelt identitás konfigurálása

Az Azure Stream Analytics megköveteli a felügyelt identitás konfigurálását a key vault eléréséhez. Az ASA-feladat úgy konfigurálható, hogy felügyelt identitást használjon, ha a Bal oldalon a Konfigurálás csoportban található Felügyelt identitás lapra navigál.

Képernyőkép az ASA-feladatok felügyelt identitásának konfigurálásáról.

  1. Kattintson a konfigurálás alatt található felügyelt identitás fülre.
  2. Válassza az Identitás váltása lehetőséget, és válassza ki a feladathoz használni kívánt identitást: rendszer által hozzárendelt identitás vagy felhasználó által hozzárendelt identitás.
  3. Felhasználó által hozzárendelt identitás esetén válassza ki azt az előfizetést, amelyben a felhasználó által hozzárendelt identitás található, és válassza ki az identitás nevét.
  4. Tekintse át és mentse.

A Stream Analytics-feladat engedélyeinek megadása a tanúsítvány eléréséhez a kulcstartóban

Ahhoz, hogy az Azure Stream Analytics-feladat beolvassa a titkos kulcsot a kulcstartóban, a feladatnak engedéllyel kell rendelkeznie a kulcstartó eléréséhez. Az alábbi lépésekkel különleges engedélyeket adhat a streamelemzési feladathoz:

  1. Válassza a Hozzáférés-vezérlés (IAM) lehetőséget.

  2. Válassza a Szerepkör-hozzárendelés hozzáadása>lehetőséget a Szerepkör-hozzárendelés hozzáadása lap megnyitásához.

  3. Rendelje hozzá a szerepkört a következő konfigurációval:

Beállítás Érték
Szerepkör Key Vault titkos kulcsok felhasználója
Felügyelt identitás Stream Analytics-feladat rendszer által hozzárendelt felügyelt identitáshoz vagy felhasználó által hozzárendelt felügyelt identitáshoz
Tagok <A Stream Analytics-feladat> neve vagy <a felhasználó által hozzárendelt identitás neve>

VNET-integráció

Ha a Kafka-fürt egy virtuális hálózaton (VNET) belül vagy tűzfal mögött található, előfordulhat, hogy az Azure Stream Analytics-feladatot úgy kell konfigurálnia, hogy privát hivatkozással vagy dedikált hálózati konfigurációval férhessen hozzá a Kafka-témakörhöz. További információért tekintse meg az Azure Stream Analytics-feladat futtatását az Azure Virtual Network dokumentációjában .

Korlátozások

  • Ha az Azure Stream Analytics-feladatokat a VNET/SWIFT használatára konfigurálja, a feladatnak legalább hat (6) streamegységtel vagy egy (1) V2 streamegységtel kell konfigurálnia.
  • Ha mTLS-t vagy SASL_SSL használ az Azure Key Vaulttal, a Java Key Store-t PEM formátumba kell konvertálnia.
  • A Kafka minimális verziója, amelyhez az Azure Stream Analyticset konfigurálhatja, a 0.10-es verzió.
  • Az Azure Stream Analytics nem támogatja az OAuth vagy SAML egyszeri bejelentkezés (SSO) használatával történő felhőbevezetés hitelesítését. Az API-kulcsot a SASL_SSL protokollon keresztül kell használnia

Feljegyzés

Az Azure Stream Analytics Kafka bemenetének használatával kapcsolatos közvetlen segítségért forduljon a következőhöz askasa@microsoft.com: .

Következő lépések