Boróka-logó

Juniper NETWORKS Streaming API szoftverJuniper-NETWORKS-Streaming-API-Szoftver-termék

Termékinformáció

Műszaki adatok

  • Termék neve: Paragon Active Assurance
  • Verzió: 4.1
  • Közzététel dátuma: 2023-03-15

Bevezetés:
Ez az útmutató útmutatást ad arról, hogyan nyerhet ki adatokat a Paragon Active Assurance szolgáltatásból a termék streaming API-jával. A streaming kliens és az API benne van a Paragon Active Assurance telepítésében, de az API használata előtt bizonyos konfigurációra van szükség. A konfigurációs folyamatot a „Streaming API konfigurálása” című szakasz ismerteti.

A Streaming API konfigurálása:
A következő lépések felvázolják a streaming API konfigurálásának folyamatát:

Felettview
A Kafka egy esemény-streaming platform, amelyet különféle forrásokból származó adatok valós idejű rögzítésére és tárolására terveztek. Lehetővé teszi az eseményfolyamok elosztott, méretezhető, hibatűrő és biztonságos kezelését. Ez az útmutató a Kafka konfigurálására összpontosít a Paragon Active Assurance Control Center Streaming API funkciójának használatára.

Terminológia
A Streaming API lehetővé teszi a külső kliensek számára, hogy lekérjék a mérőszámadatokat a Kafkától. A tesztügynökök által egy teszt vagy megfigyelési feladat során összegyűjtött mérőszámok elküldésre kerülnek a Stream szolgáltatásnak. A feldolgozás után a Stream szolgáltatás közzéteszi ezeket a mutatókat a Kafkán a további metaadatokkal együtt.

Kafka témák
A Streaming API Kafka témaköröket használ a mutatók és metaadatok rendszerezésére és tárolására. A Kafka témák egyedi igények szerint hozhatók létre és kezelhetők.

A Streaming API engedélyezése
A Streaming API engedélyezéséhez kövesse az alábbi lépéseket:

  1. Futtassa a következő parancsokat a Vezérlőközpont kiszolgálón a sudo használatával:
KAFKA_METRICS_ENABLED = A valódi sudo ncc szolgáltatások lehetővé teszik a timescaledb metrikákat sudo ncc szolgáltatások elindítása timescaledb metrikák sudo ncc szolgáltatások újraindítása

A Streaming API működésének ellenőrzése a Vezérlőközpontban:
Annak ellenőrzéséhez, hogy a megfelelő Kafka-témákra vonatkozó mutatókat kap-e:

  1. Telepítse a kafkacat segédprogramot a következő parancsokkal:
    sudo apt-get frissítés
    sudo apt-get install kafkacat
  1. Cserélje ki a „myaccount” szót a fiók rövid nevével a
    Vezérlőközpont URL:
    export METRICS_TOPIC=paa.public.accounts.myaccount.metrics
    exportálja a METADATA_TOPIC=paa.public.accounts.myaccount.metadata fájlt
  1. Futtassa a következő parancsot view mérőszámok:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
    Jegyzet: A fenti parancs megjeleníti a mutatókat.
  2. To view metaadatokat, futtassa a következő parancsot:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e

Jegyzet: A fenti parancs megjeleníti a metaadatokat, de nem frissül olyan gyakran.

Ügyfél plamples
Ügyfélnek plampTovábbi információkat a felhasználói kézikönyv 14. oldalán talál.

GYIK (Gyakran Ismételt Kérdések)

  • K: Mi az a Paragon Active Assurance?
    V: A Paragon Active Assurance egy olyan termék, amely figyelési és tesztelési lehetőségeket biztosít.
  • K: Mi az a Streaming API?
    V: A Streaming API a Paragon Active Assurance olyan funkciója, amely lehetővé teszi a külső ügyfelek számára, hogy lekérjék a mérőszámadatokat a Kafkától.
  • K: Hogyan engedélyezhetem a Streaming API-t?
    V: A Streaming API engedélyezéséhez kövesse a felhasználói kézikönyv „A Streaming API engedélyezése” szakaszában leírt lépéseket.
  • K: Hogyan ellenőrizhetem, hogy a Streaming API működik?
    V: A Streaming API működésének ellenőrzésére vonatkozó utasításokért tekintse meg a „A Streaming API működésének ellenőrzése a Vezérlőközpontban” című részt.

Bevezetés

Ez az útmutató leírja, hogyan nyerhet ki adatokat a Paragon Active Assurance szolgáltatásból a termék streaming API-ján keresztül.
Az API-t és a streaming klienst a Paragon Active Assurance telepítése tartalmazza. Az API használatához azonban egy kis konfigurációra van szükség. Erről a „Streaming API konfigurálása” oldalszám: 1 fejezet szól.

Felettview
Ez a fejezet leírja, hogyan konfigurálhatja a Streaming API-t, hogy lehetővé tegye a metrikaüzenetekre való feliratkozást a Kafkán keresztül.
pr
Az alábbiakban végignézzük:

  • A Streaming API engedélyezése
  • Hogyan állítsuk be a Kafkát a külső ügyfelek meghallgatására
  • A Kafka konfigurálása az ACL használatára és az SSL titkosítás beállítása az említett ügyfelek számára

Mi az a Kafka?
A Kafka egy esemény-streaming platform, amely lehetővé teszi a különböző eseményforrásokból (érzékelők, adatbázisok, mobil eszközök) küldött adatok valós idejű rögzítését eseményfolyamok formájában, valamint ezen eseményfolyamok tartós tárolását későbbi visszakeresés és manipuláció céljából.
A Kafka lehetővé teszi az események végpontok közötti streamelését elosztott, nagymértékben méretezhető, rugalmas, hibatűrő és biztonságos módon.

JEGYZET: A Kafka sokféleképpen konfigurálható, és méretezhetőségre és redundáns rendszerekre tervezték. Ez a dokumentum csak arra összpontosít, hogyan konfigurálható a Paragon Active Assurance Control Centerben található Streaming API szolgáltatás használatához. A fejlettebb beállításokat a hivatalos Kafka dokumentációban találja: kafka.apache.org/26/documentation.html.

Terminológia

  • Kafka: Esemény-streaming platform.
  • Kafka téma: Rendezvénygyűjtemény.
  • Kafka-előfizető/fogyasztó: A Kafka-témában tárolt események visszakereséséért felelős komponens.
  • Kafka-bróker: Egy Kafka-fürt tárolóréteg-kiszolgálója.
  • SSL/TLS: Az SSL egy biztonságos protokoll, amelyet az információk interneten keresztüli biztonságos küldésére fejlesztettek ki. A TLS az 1999-ben bevezetett SSL utódja.
  • SASL: Keretrendszer, amely mechanizmusokat biztosít a felhasználói hitelesítéshez, az adatok integritásának ellenőrzéséhez és a titkosításhoz.
  • Streaming API előfizető: A Paragon Active Assurance-ban meghatározott témákban tárolt események lekéréséért felelős összetevő, amely külső hozzáférésre szolgál.
  • Tanúsítványszolgáltató: Megbízható entitás, amely nyilvános kulcsú tanúsítványokat bocsát ki és von vissza.
  • Hitelesítés-szolgáltató gyökértanúsítvány: Nyilvános kulcsú tanúsítvány, amely azonosítja a tanúsító hatóságot.

Hogyan működik a Streaming API
Amint korábban említettük, a Streaming API lehetővé teszi a külső ügyfelek számára, hogy információkat szerezzenek le a Kafkától származó mérőszámokról.

A tesztügynökök által egy teszt vagy megfigyelési feladat során összegyűjtött összes mérőszám elküldésre kerül a Stream szolgáltatásnak. A feldolgozási fázis után a Stream szolgáltatás ezeket a mérőszámokat további metaadatokkal együtt közzéteszi a Kafkán.

Juniper-NETWORKS-Streaming-API-Software- (1)

Kafka témák
Kafka rendelkezik azokkal a témákkal, amelyekhez minden adatot közzétesznek. A Paragon Active Assurance-ban sok ilyen Kafka téma áll rendelkezésre; ezeknek azonban csak egy részhalmazát szánják külső hozzáférésre.
A Vezérlőközpontban minden Paragon Active Assurance-fiókhoz két külön témakör tartozik. Alul a ACCOUNT a fiók rövid neve:

  • paa.public.accounts.{ACCOUNT}.metrics
    • Az adott fiókhoz tartozó összes metrikaüzenet megjelenik ebben a témában
    • Nagy mennyiségű adat
    • Magas frissítési gyakoriság
  • paa.public.accounts.{ACCOUNT}.metadata
    • A metrikaadatokhoz kapcsolódó metaadatokat tartalmaz, plample a mérőszámokhoz társított tesztet, monitort vagy tesztügynököt
    • Kis mennyiségű adat
    • Alacsony frissítési gyakoriság

A Streaming API engedélyezése

JEGYZET: Ezeket az utasításokat a Vezérlőközpont kiszolgálón kell futtatni a sudo használatával.

Mivel a Streaming API némi többletterhelést jelent a Vezérlőközpont számára, alapértelmezés szerint nincs engedélyezve. Az API engedélyezéséhez először engedélyeznünk kell a mérőszámok közzétételét a Kafka számára a fő konfigurációban file:

KAFKA_METRICS_ENABLED = Igaz

FIGYELMEZTETÉS: A funkció engedélyezése hatással lehet a Vezérlőközpont teljesítményére. Győződjön meg arról, hogy a példányát ennek megfelelően méretezte.

Ezután, hogy engedélyezze ezeknek a mutatóknak a továbbítását a megfelelő Kafka-témákhoz:

streaming-api: igaz

A Streaming API-szolgáltatások engedélyezéséhez és elindításához futtassa:

  • A sudo ncc szolgáltatások lehetővé teszik a timescaledb metrikákat
  • A sudo ncc szolgáltatások elindítják a timescaledb metrikákat

Végül indítsa újra a szolgáltatásokat:

  • A sudo ncc szolgáltatások újraindulnak

A Streaming API működésének ellenőrzése a Vezérlőközpontban

JEGYZET: Ezeket az utasításokat a Vezérlőközpont kiszolgálón kell futtatni.

Most már ellenőrizheti, hogy a megfelelő Kafka-témákról kap-e mutatókat. Ehhez telepítse a kafkacat segédprogramot:

  • sudo apt-get frissítés
  • sudo apt-get install kafkacat

Ha tesztje vagy monitorja fut a Vezérlőközpontban, akkor a kafkacat segítségével metrikákat és metaadatokat kaphat ezekről a témákról.
Cserélje le a myaccount-ot fiókja rövid nevére (ez látható a Vezérlőközpontban URL):

  • export METRICS_TOPIC=paa.public.accounts.myaccount.metrics
  • exportálja a METADATA_TOPIC=paa.public.accounts.myaccount.metadata fájlt

Most már látnia kell a mutatókat a következő parancs futtatásával:

  • kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e

To view metaadatokat, futtassa a következő parancsot (vegye figyelembe, hogy ez nem frissül olyan gyakran):

  • kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e

JEGYZET:
kafkacat”Client Examples ”a 14. oldalon

Ez igazolja, hogy a Vezérlőközpontból van-e működő Streaming API. Valószínűleg azonban inkább egy külső klienstől szeretne hozzáférni az adatokhoz. A következő rész leírja, hogyan nyitható meg a Kafka külső hozzáféréshez.

A Kafka megnyitása külső házigazdák számára

JEGYZET: Ezeket az utasításokat a Vezérlőközpont kiszolgálón kell futtatni.

Alapértelmezés szerint a Vezérlőközponton futó Kafka úgy van beállítva, hogy belső használatra csak a localhost figyeljen. Lehetőség van a Kafka megnyitására külső kliensek számára a Kafka beállításainak módosításával.

Csatlakozás Kafkához: Figyelmeztetések

VIGYÁZAT: Kérjük, figyelmesen olvassa el ezt, mert könnyen előfordulhat, hogy kapcsolati problémákba ütközik Kafkával, ha nem értette ezeket a fogalmakat.

Az ebben a dokumentumban leírt Vezérlőközpont-beállításban csak egyetlen Kafka-bróker található.
Azonban vegye figyelembe, hogy a Kafka-bróker egy Kafka-klaszter részeként működik, amely számos Kafka-brókerből állhat.
Amikor Kafka brókerhez csatlakozik, a kezdeti kapcsolatot a Kafka kliens állítja be. Ezzel összefüggésben a Kafka bróker visszaküldi a „hirdetett hallgatók” listáját, amely egy vagy több Kafka bróker listája.
Amikor megkapja ezt a listát, a Kafka-kliens megszakítja a kapcsolatot, majd újra csatlakozik a hirdetett figyelők egyikéhez. A hirdetett figyelőknek olyan gazdagépneveket vagy IP-címeket kell tartalmazniuk, amelyek elérhetők a Kafka-kliens számára, különben az ügyfél nem csatlakozik.
Ha SSL-titkosítást használnak, amely egy SSL-tanúsítványt tartalmaz, amely egy adott gazdagépnévhez van kötve, még fontosabb, hogy a Kafka-kliens a megfelelő címet kapja meg, amelyhez csatlakozhat, mert ellenkező esetben a kapcsolat elutasításra kerülhet.
A Kafka-hallgatókról itt olvashat bővebben: www.confluent.io/blog/kafka-listeners-explained

SSL/TLS titkosítás
Annak érdekében, hogy csak megbízható ügyfelek férhessenek hozzá a Kafkához és a Streaming API-hoz, a következőket kell konfigurálnunk:

  • Hitelesítés: Az ügyfeleknek felhasználói nevet és jelszót kell megadniuk az ügyfél és a Kafka közötti biztonságos SSL/TLS kapcsolaton keresztül.
  • Engedélyezés: A hitelesített ügyfelek ACL-ek által szabályozott feladatokat hajthatnak végre.

Itt egy végeview:

Juniper-NETWORKS-Streaming-API-Software- (2)

*) Felhasználónév/jelszó hitelesítés SSL-titkosított csatornán

Az SSL/TLS titkosítás Kafka esetében történő teljes megértéséhez tekintse meg a hivatalos dokumentációt: docs.confluent.io/platform/current/kafka/encryption.html

SSL/TLS tanúsítvány végeview

JEGYZET: Ebben az alfejezetben a következő terminológiát használjuk:

Bizonyítvány: Egy tanúsító hatóság (CA) által aláírt SSL-tanúsítvány. Minden Kafka brókernek van egy.
Kulcstár: A kulcstár file amely a tanúsítványt tárolja. A kulcstár file tartalmazza a tanúsítvány privát kulcsát; ezért biztonságosan kell tartani.
Truststore: A file amely a megbízható CA-tanúsítványokat tartalmazza.

A külső kliens és a Vezérlőközpontban futó Kafka közötti hitelesítés beállításához mindkét oldalon rendelkeznie kell egy kulcstárolóval, amelyhez kapcsolódó tanúsítványt írt alá a tanúsító hatóság (CA), valamint a hitelesítésszolgáltató gyökértanúsítványa.
Ezen kívül az ügyfélnek rendelkeznie kell egy hitelesítési tárolóval is a CA gyökértanúsítvánnyal.
A CA gyökértanúsítvány közös a Kafka brókernél és a Kafka-ügyfélnél.

A szükséges tanúsítványok létrehozása
Erről a „Függelék” a 17. oldalon található.

A Kafka Broker SSL/TLS konfigurációja a Vezérlőközpontban

JEGYZET: Ezeket az utasításokat a Vezérlőközpont kiszolgálón kell futtatni.

JEGYZET: A folytatás előtt létre kell hoznia az SSL-tanúsítványt tartalmazó kulcstárolót a „Függelék” oldalszám: 17 utasításait követve. Az alábbiakban említett elérési utak ezekből az utasításokból származnak.
Az SSL kulcstároló a file lemezen tárolva a file kiterjesztése .jks.

Miután elkészítette a szükséges tanúsítványokat mind a Kafka-bróker, mind a Kafka-ügyfél számára, folytathatja a Vezérlőközpontban futó Kafka-bróker konfigurálásával. A következőket kell tudnia:

  • : A Vezérlőközpont nyilvános gazdagépneve; ennek feloldhatónak és elérhetőnek kell lennie a Kafka ügyfelek számára.
  • : Az SSL-tanúsítvány létrehozásakor megadott kulcstároló jelszava.
  • és : Ezeket a jelszavakat szeretné beállítani az adminisztrátor és az ügyfél felhasználó számára. Vegye figyelembe, hogy további felhasználókat is felvehet, amint azt a plample.

Szerkessze vagy fűzze hozzá (sudo hozzáféréssel) az alábbi tulajdonságokat az /etc/kafka/server.properties fájlba, beillesztve a fenti változókat a képen látható módon:

FIGYELMEZTETÉS: Ne távolítsa el a PLAINTEXT://localhost:9092; ez megszakítja a Vezérlőközpont működését, mivel a belső szolgáltatások nem fognak tudni kommunikálni.

  • # Azok a címek, amelyeket a Kafka-bróker hallgat.
  • hallgatók=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
  • # Ezek azok a gazdagépek, amelyek minden csatlakozó kliensnek vissza vannak hirdetve.
  • hirdetett.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093 …
  • ####### EGYEDI KONFIG
  • # SSL KONFIGURÁCIÓ
  • ssl.endpoint.identification.algorithm=
    ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks
  • ssl.keystore.password=
  • ssl.key.password=
  • ssl.client.auth=none
  • ssl.protocol=TLSv1.2
  • # SASL konfiguráció
  • sasl.enabled.mechanisms=SIMA
  • felhasználónév=”admin” \
  • jelszó=” ”\
  • user_admin=” ”\
  • user_client=” ”;
  • # MEGJEGYZÉS több felhasználót is felvehet a user_ =
  • # Engedélyezés, kapcsolja be az ACL-eket
  • authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=Felhasználó:admin

Hozzáférés-vezérlési listák (ACL) beállítása

Az ACL-ek bekapcsolása a localhost-on

FIGYELMEZTETÉS: Először ACL-eket kell beállítanunk a localhost számára, hogy maga a Vezérlőközpont továbbra is hozzáférhessen a Kafkához. Ha ez nem történik meg, a dolgok összetörnek.

  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –cluster
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –topic '*'
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –group '*'

Ezután engedélyeznünk kell az ACL-eket a külső írásvédett hozzáféréshez, hogy a külső felhasználók elolvashassák a paa.public.* témaköröket.

### ACL-bejegyzések névtelen felhasználók számára /usr/lib/kafka/bin/kafka-acls.sh \

JEGYZET: További finomszemcsés ellenőrzést a hivatalos Kafka dokumentációban talál.

  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:* –művelet beolvasása –művelet leírása \ –csoport 'NCC'
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:* –művelet olvasása –művelet leírása \ –témakör paa.public. – erőforrás-minta típusú előtaggal

Miután ez megtörtént, újra kell indítania a szolgáltatásokat:

### ACL-bejegyzések külső felhasználók számára /usr/lib/kafka/bin/kafka-acls.sh \
  • A sudo ncc szolgáltatások újraindulnak

Annak ellenőrzéséhez, hogy az ügyfél tud-e biztonságos kapcsolatot létesíteni, futtassa a következő parancsot egy külső eszközön
ügyfélszámítógép (nem a Vezérlőközpont kiszolgálón). Az alábbiakban a PUBLIC_HOSTNAME a Vezérlőközpont gazdagépneve:

  • openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep „A biztonságos újratárgyalás támogatott”

A parancs kimenetében látnia kell a szervertanúsítványt, valamint a következőket:

  • A biztonságos újratárgyalás támogatott

Annak érdekében, hogy a belső szolgáltatások hozzáférést kapjanak a Kafka szerverhez, kérjük, ellenőrizze a következő naplótfiles:

  • /var/log/kafka/server.log
  • /var/log/kafka/kafka-authorizer.log

A külső ügyfélkapcsolat érvényesítése

kafkacat

JEGYZET: Ezeket az utasításokat ügyfélszámítógépen kell futtatni (nem a Vezérlőközpont kiszolgálón).
JEGYZET: A mérőszámadatok megjelenítéséhez győződjön meg arról, hogy legalább egy monitor fut a Vezérlőközpontban.

A kapcsolat külső kliensként történő ellenőrzéséhez és érvényesítéséhez használhatja a kafkacat segédprogramot, amelyet a 4. oldalon lévő „A Streaming API működésének ellenőrzése a Vezérlőközpontban” részben telepített.
Hajtsa végre a következő lépéseket:

JEGYZET: Az alábbiakban CLIENT_USER a korábban megadott felhasználó file /etc/kafka/server.properties a Vezérlőközpontban: nevezetesen a user_client és az ott beállított jelszó.
A kiszolgálóoldali SSL-tanúsítvány aláírásához használt CA gyökértanúsítványnak jelen kell lennie az ügyfélen.

Hozzon létre a file client.properties a következő tartalommal:

  • security.protocol=SASL_SSL
  • ssl.ca.location={PATH_TO_CA_CERT}
  • sasl.mechanisms=SIMA
  • sasl.username={CLIENT_FELHASZNÁLÓ}
  • sasl.password={CLIENT_PASSWORD}

ahol

  • A {PATH_TO_CA_CERT} a Kafka-bróker által használt CA gyökértanúsítvány helye
  • {CLIENT_USER} és {CLIENT_PASSWORD} az ügyfél felhasználói hitelesítő adatai.

Futtassa a következő parancsot a kafkacat által felhasznált üzenet megtekintéséhez:

  • export KAFKA_FQDN=
  • export METRICS_TOPIC=paa.public.accounts. .metrikák
  • kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

ahol a {METRICS_TOPIC} a Kafka-téma neve „paa.public.” előtaggal.

JEGYZET: A kafkacat régebbi verziói nem biztosítják a -F opciót az ügyfélbeállítások olvasásához a file. Ha ilyen verziót használ, ugyanazokat a beállításokat kell megadnia a parancssorból, mint az alábbiakban.

kafkacat -b ${KAFKA_FQDN}:9093 \

  • X security.protocol=SASL_SSL \
  • X ssl.ca.location={PATH_TO_CA_CERT} \
  • X sasl.mechanisms=SIM \
  • X sasl.username={CLIENT_USER} \
  • X sasl.password={CLIENT_PASSWORD} \
  • t ${METRICS_TOPIC} -C -e

A kapcsolat hibakereséséhez használhatja a -d kapcsolót:

A fogyasztói kommunikáció hibakeresése
kafkacat -d fogyasztó -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Debug broker kommunikáció
kafkacat -d broker -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

Feltétlenül olvassa el a használt Kafka ügyfélkönyvtár dokumentációját, mivel a tulajdonságok eltérhetnek a client.properties tulajdonságaitól.

Üzenetformátum
A metrikák és metaadat témákhoz használt üzenetek Protocol buffers (protobuf) formátumban vannak szerializálva (lásd: developers.google.com/protocol-buffers). Ezeknek az üzeneteknek a sémája a következő formátumot követi:

Metrics Protobuf Schema

  • szintaxis = "proto3";
  • importálja a „google/protobuf/timestamp.proto”;
  • csomag paa.streamingapi;
  • option go_package = ".;paa_streamingapi";
  • üzenet Metrics {
  • google.protobuf.Timestamp timestamp = 1;
  • térkép értékek = 2;
  • int32 stream_id = 3;
  • }
  • /**
  • * A metrika értéke egész vagy lebegőpontos lehet.
  • */
  • üzenet MetricValue {
  • oneof type {
  • int64 int_val = 1;
  • float float_val = 2;
  • }
  • }

Metaadat Protobuf séma

  • szintaxis = "proto3";
  • csomag paa.streamingapi;
  • option go_package = ".;paa_streamingapi";
  • üzenet Metaadatok {
  • int32 stream_id = 1;
  • string folyam_neve = 2;
  • térkép tags = 13;
  • }

Ügyfél plamples

JEGYZET: Ezek a parancsok külső klienseken futnak, plamplaptopon vagy hasonlóban, és ne a Vezérlőközpontban.
JEGYZET: A mérőszámadatok megjelenítéséhez győződjön meg arról, hogy legalább egy monitor fut a Vezérlőközpontban.

A Vezérlőközpont tarball tartalmazza a paa-streaming-api-client-ex archívumotamples.tar.gz (kliens plamples), amely egy example Python szkript, amely bemutatja a Streaming API használatát.

A Client Ex. telepítése és konfigurálásaamples
Ügyfelet találszamples a Paragon Active Assurance Control Center mappában:

  • exportálás CC_VERSION=4.1.0
  • cd ./paa-control-center_${CC_VERSION}
  • ls paa-streaming-api-client-examples*

A kliens-ex telepítéséhezampkülső kliens számítógépén, a következőképpen járjon el:

  • # Készítsen könyvtárat a kliens tartalmának kinyeréséhez, plamples tarball
  • mkdir paa-streaming-api-client-examples
  • # Bontsa ki az ügyfél tartalmát plamples tarball
  • tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
  • # Lépjen az újonnan létrehozott könyvtárba
  • cd paa-streaming-api-client-examples

ügyfél-examples futtatásához Docker szükséges. A Docker letöltései és telepítési útmutatói itt találhatók https://docs.docker.com/engine/install.

A Client Examples
Az ügyfél-exampA les eszközök alap vagy haladó módban is futhatnak az exampváltozatos bonyolultságúak. Mindkét esetben lehetőség van az ex futtatására isamples konfigurációval file további tulajdonságokat tartalmaz az ügyféloldal további testreszabásához.

Alap mód
Alap módban a mérőszámok és metaadataik külön-külön kerülnek streamelésre. Ebből a célból a kliens meghallgat minden külső hozzáférésre elérhető Kafka-témát, és a kapott üzeneteket egyszerűen kinyomtatja a konzolra.
Az alapvető ex. végrehajtásának elindításáhozamples, fuss:

  • build.sh run-basic –kafka-brokers localhost:9092 –fiók ACCOUNT_SHORTNAME

ahol az ACCOUNT_SHORTNAME annak a fióknak a rövid neve, amelyből a mutatókat le szeretné kérni.
Végrehajtásának megszüntetésére az example, nyomja meg a Ctrl + C billentyűket. (Előfordulhat, hogy a végrehajtás leáll egy kis késéssel, mert a kliens időtúllépési eseményre vár.)

Speciális mód

JEGYZET: A mérőszámok csak a Vezérlőközpontban futó HTTP-monitorok esetében jelennek meg.

A speciális módban történő végrehajtás megmutatja a metrikák és a metaadat-üzenetek közötti összefüggést. Ez
Ez lehetséges annak köszönhetően, hogy minden metrika üzenetben szerepel egy adatfolyamazonosító mező, amely a megfelelő metaadat-üzenetre hivatkozik.
A haladó examples, fuss:

  • build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME

ahol az ACCOUNT_SHORTNAME annak a fióknak a rövid neve, amelyből a mutatókat le szeretné kérni.
Végrehajtásának megszüntetésére az example, nyomja meg a Ctrl + C billentyűket. (Előfordulhat, hogy a végrehajtás leáll egy kis késéssel, mert a kliens időtúllépési eseményre vár.)

További beállítások
Lehetőség van az ex futtatásáraamples a kliens további konfigurációjával a –config-file opció, majd a file a kulcs=érték formátumú tulajdonságokat tartalmazó név.

  • build.sh run-advanced \
  • –kafka-brokers localhost:9092 \
  • –fiók ACCOUNT_SHORTNAME \
  • -konfig-file client_config.properties

JEGYZET: Mind fileA fenti parancsban hivatkozott s-oknak az aktuális könyvtárban kell elhelyezkedniük, és csak relatív elérési utakat kell használniuk. Ez vonatkozik mind a –config-file argumentumhoz és a konfiguráció összes bejegyzéséhez file amelyek leírják file helyszíneken.

Külső ügyfél-hitelesítés érvényesítése
Az ügyfélhitelesítés érvényesítése a Vezérlőközponton kívülről a client-ex használatávalamples, hajtsa végre a következő lépéseket:

A Paragon Active Assurance Control Center mappából váltson a paa-streaming-api-client-ex fájlra.amples mappa:

cd paa-streaming-api-client-examples

  • Másolja a CA gyökértanúsítványt a ca-cert az aktuális könyvtárba.
  • Hozzon létre egy client.properties-t file a következő tartalommal:

security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=PLAIN
sasl.username={CLIENT_FELHASZNÁLÓ}
sasl.password={CLIENT_PASSWORD}

ahol a {CLIENT_USER} és a {CLIENT_PASSWORD} az ügyfél felhasználói hitelesítő adatai.

Futtassa az alapvető plamples:

  • export KAFKA_FQDN=
  • build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
  • – ACCOUNT_SHORTNAME fiók
  • -konfig-file ügyfél.tulajdonságok

ahol az ACCOUNT_SHORTNAME annak a fióknak a rövid neve, amelyből a mutatókat le szeretné kérni.

Futtassa a haladó examples:

  • export KAFKA_FQDN=
  • build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
  • – ACCOUNT_SHORTNAME fiók
  • -konfig-file ügyfél.tulajdonságok

Függelék

Ebben a mellékletben leírjuk, hogyan kell létrehozni:

  • egy kulcstár file a Kafka broker SSL tanúsítvány tárolására
  • egy vagyonkezelő file a Kafka közvetítői tanúsítvány aláírásához használt hitelesítésszolgáltató (CA) gyökértanúsítvány tárolására.

Kafka bróker tanúsítvány létrehozása
Tanúsítvány létrehozása valódi tanúsító hatóság segítségével (ajánlott)
Javasoljuk, hogy valódi SSL-tanúsítványt szerezzen be egy megbízható CA-tól.
Miután döntött a CA mellett, másolja ki a CA gyökértanúsítványát file a saját utadhoz az alábbiak szerint:

  • export CA_PATH=~/my-ca
  • mkdir ${CA_PATH}
  • cp ca-cert ${CA_PATH}

Hozzon létre saját tanúsító hatóságot

JEGYZET: Normál esetben a tanúsítványt valódi hitelesítésszolgáltatóval kell aláírnia; lásd az előző alfejezetet. Ami ezután következik, az csak egy example.

Itt létrehozzuk a saját tanúsító hatóság (CA) gyökértanúsítványunkat file 999 napig érvényes (gyártásban nem ajánlott):

  • # Hozzon létre egy könyvtárat a CA tárolására
  • export CA_PATH=~/my-ca
  • mkdir ${CA_PATH}
  • # A CA-tanúsítvány létrehozása
  • openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999

A Client Truststore létrehozása
Most létrehozhat egy bizalmi tárolót file amely tartalmazza a fent generált ca-cert-et. Ez file a Streaming API-t elérő Kafka-kliensnek szüksége lesz rá:

  • keytool -keystore kafka.client.truststore.jks \
    • alias CARoot \
    • importárus -file ${CA_PATH}/ca-cert

Most, hogy a CA-tanúsítvány a megbízhatósági tárolóban van, az ügyfél minden vele aláírt tanúsítványban megbízik.
Le kéne másolni a file kafka.client.truststore.jks fájlt az ügyfélszámítógép egy ismert helyére, és mutasson rá a beállításokban.

Kulcstár létrehozása a Kafka Broker számára
A Kafka broker SSL-tanúsítvány, majd a kafka.server.keystore.jks kulcstároló létrehozásához kövesse az alábbi lépéseket:

Az SSL tanúsítvány generálása
Az alábbiakban 999 a kulcstároló érvényességi napjainak száma, az FQDN pedig az ügyfél teljes képzésű tartományneve (a csomópont nyilvános állomásneve).

JEGYZET: Fontos, hogy az FQDN pontosan megegyezzen azzal a gazdagépnévvel, amelyet a Kafka kliens a Vezérlőközponthoz való csatlakozáshoz használ.

  • sudo mkdir -p /var/ssl/private
  • sudo chown -R $USER: /var/ssl/private
  • cd /var/ssl/private
  • export FQDN= keytool -keystore kafka.server.keystore.jks \
  • – alias szerver \
  • – érvényesség 999 \
  • – genkey -keyalg RSA -ext SAN=dns:${FQDN}

Hozzon létre egy tanúsítvány-aláírási kérelmet, és tárolja azt a file nevű cert-server-request:

  • keytool -keystore kafka.server.keystore.jks \
    • – alias szerver \
    • – certreq \
    • – file cert-server-request

Most el kell küldenie a file cert-server-request a Certificate Authority (CA) felé, ha valódit használ. Ezután visszaküldik az aláírt tanúsítványt. Ezt alább tanúsítványszerver-aláírtként fogjuk hivatkozni.

Az SSL-tanúsítvány aláírása saját készítésű CA-tanúsítvánnyal

JEGYZET: A saját CA használata ismét nem ajánlott éles rendszerben.

A tanúsítványt a CA segítségével írja alá file cert-server-request, amely az aláírt tanúsítványt állítja elő cert-server-signed. Lásd alább; A ca-password a CA-tanúsítvány létrehozásakor beállított jelszó.

  • cd /var/ssl/private openssl x509 -req \
    • – CA ${CA_PATH}/ca-cert \
    • – CA-kulcs ${CA_PATH}/ca-kulcs \
    • – a cert-server-request \
    • – ki a cert-szerver által aláírt \
    • – 999 nap – CAlétrehozás \
    • – passin pass:{ca-password}

Az aláírt tanúsítvány importálása a kulcstárolóba

Importálja a ca-cert gyökértanúsítványt a kulcstárolóba:

  • keytool -keystore kafka.server.keystore.jks \
    • – alias ca-cert \
    • – import \
    • – file ${CA_PATH}/ca-cert

Importálja az aláírt tanúsítványt, amelyre cert-server-signedként hivatkozunk:

  • keytool -keystore kafka.server.keystore.jks \
    • – alias szerver \
    • – import \
    • – file cert-server-aláírt

A file A kafka.server.keystore.jks fájlt a Vezérlőközpont kiszolgáló egy ismert helyére kell másolni, majd hivatkozni kell rá az /etc/kafka/server.properties fájlban.

A Streaming API használata

EBBEN A SZAKASZBAN

  • Általános | 20
  • Kafka Témanevek | 21
  • ExampA Streaming API használata | 21

Általános
A streaming API lekéri a teszt- és a monitoradatokat is. E kategóriák közül egyet sem lehet kiemelni.
A streaming API nem kér le adatokat a parancsfájl-alapú tesztekből (amelyeket a Vezérlőközpont grafikus felületén kirakós darab helyett téglalap ábrázol), például az Ethernet-szolgáltatás aktiválási tesztjeiből és az átlátszósági tesztekből.

Kafka témanevek
A streaming API Kafka témakörének nevei a következők, ahol a %s a Vezérlőközpont-fiók rövid neve (a fiók létrehozásakor jelezve):

  • const (
  • exportőrName = "kafka"
  • metadataTopicTpl = "paa.public.accounts.%s.metadata" metricsTopicTpl = "paa.public.accounts.%s.metrics" )

ExampA Streaming API használata
Az exampA következő lesek a paa-streaming-api-client-ex tarballban találhatókamples.tar.gz, amely a Vezérlőközpont tarballjában található.
Először is van egy alap example, amely bemutatja, hogy a metrikák és metaadataik hogyan kerülnek streamelésre külön-külön, és egyszerűen kinyomtatják a kapott üzeneteket a konzolra. A következőképpen futtathatja:

  • sudo ./build.sh run-basic –kafka-brokers localhost:9092 –fiók ACCOUNT_SHORTNAME

Van egy haladóbb ex isample ahol a metrikák és a metaadat üzenetek korrelálnak. Használja ezt a parancsot a futtatásához:

  • sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –fiók ACCOUNT_SHORTNAME

A fentiekhez hasonló Docker-parancsok futtatásához a sudo-t kell használnia. Opcionálisan követheti a Linux telepítés utáni lépéseit, hogy a Docker-parancsokat sudo nélkül tudja futtatni. A részletekért látogasson el ide docs.docker.com/engine/install/linux-postinstall.

A Juniper Networks, a Juniper Networks logó, a Juniper és a Junos a Juniper Networks, Inc. bejegyzett védjegyei az Egyesült Államokban és más országokban. Minden egyéb védjegy, szolgáltatási védjegy, bejegyzett védjegy vagy bejegyzett szolgáltatási védjegy a megfelelő tulajdonosok tulajdona. A Juniper Networks nem vállal felelősséget a jelen dokumentumban előforduló pontatlanságokért. A Juniper Networks fenntartja a jogot, hogy előzetes értesítés nélkül megváltoztassa, módosítsa, átadja vagy más módon felülvizsgálja ezt a kiadványt. Copyright © 2023 Juniper Networks, Inc. Minden jog fenntartva.

Dokumentumok / Források

Juniper NETWORKS Streaming API szoftver [pdf] Felhasználói útmutató
Streaming API szoftver, API szoftver, szoftver

Hivatkozások

Hagyj megjegyzést

E-mail címét nem tesszük közzé. A kötelező mezők meg vannak jelölve *