Juniper-logo

Programska oprema Juniper NETWORKS Streaming APIJuniper-NETWORKS-Streaming-API-programski izdelek

Informacije o izdelku

Specifikacije

  • Ime izdelka: Paragon Active Assurance
  • Različica: 4.1
  • Datum objave: 2023-03-15

Uvod:
V tem priročniku so navodila za pridobivanje podatkov iz Paragon Active Assurance z uporabo API-ja za pretakanje izdelka. Odjemalec za pretakanje in API sta vključena v namestitev Paragon Active Assurance, vendar je pred uporabo API-ja potrebna določena konfiguracija. Postopek konfiguracije je zajet v razdelku »Konfiguriranje API-ja za pretakanje«.

Konfiguriranje API-ja za pretakanje:
Naslednji koraki opisujejo postopek konfiguracije API-ja za pretakanje:

konecview
Kafka je platforma za pretakanje dogodkov, zasnovana za zajemanje in shranjevanje podatkov iz različnih virov v realnem času. Omogoča upravljanje tokov dogodkov na porazdeljen, razširljiv, odporen na napake in varen način. Ta priročnik se osredotoča na konfiguracijo Kafke za uporabo funkcije Streaming API v Paragon Active Assurance Control Center.

Terminologija
API za pretakanje omogoča zunanjim odjemalcem, da pridobijo informacije o meritvah iz Kafke. Meritve, ki jih zberejo testni agenti med testom ali nalogo spremljanja, se pošljejo v storitev Stream. Po obdelavi storitev Stream objavi te meritve na Kafki skupaj z dodatnimi metapodatki.

Teme Kafke
API za pretakanje uporablja teme Kafka za organiziranje in shranjevanje meritev in metapodatkov. Teme Kafka je mogoče ustvariti in upravljati v skladu s posebnimi zahtevami.

Omogočanje API-ja za pretakanje
Če želite omogočiti Streaming API, sledite tem korakom:

  1. Zaženite naslednje ukaze na strežniku Nadzornega centra z uporabo sudo:
KAFKA_METRICS_ENABLED = Resnične storitve sudo ncc omogočajo meritve timescaledb storitve sudo ncc zaženejo meritve timescaledb znova zaženejo storitve sudo ncc

Preverjanje, ali API za pretakanje deluje v Nadzornem centru:
Če želite preveriti, ali prejemate meritve o pravilnih temah Kafke:

  1. Namestite pripomoček kafkacat z naslednjimi ukazi:
    sudo apt-get posodobitev
    sudo apt-get namestite kafkacat
  1. Zamenjajte »myaccount« s kratkim imenom vašega računa v
    Nadzorni center URL:
    izvoz METRICS_TOPIC=paa.public.accounts.myaccount.metrics
    izvoz METADATA_TOPIC=paa.public.accounts.myaccount.metadata
  1. Zaženite naslednji ukaz za view meritve:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
    Opomba: zgornji ukaz bo prikazal meritve.
  2. Za view metapodatkov, zaženite naslednji ukaz:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e

Opomba: zgornji ukaz bo prikazal metapodatke, vendar se ne bo posodabljal tako pogosto.

Stranka Examples
Za stranko nprampin dodatne informacije najdete na strani 14 uporabniškega priročnika.

FAQ (pogosta vprašanja)

  • V: Kaj je Paragon Active Assurance?
    O: Paragon Active Assurance je izdelek, ki nudi zmožnosti spremljanja in testiranja.
  • V: Kaj je Streaming API?
    O: Streaming API je funkcija v Paragon Active Assurance, ki omogoča zunanjim odjemalcem, da pridobijo podatke o meritvah iz Kafke.
  • V: Kako omogočim API za pretakanje?
    O: Če želite omogočiti Streaming API, sledite korakom, opisanim v razdelku »Omogočanje Streaming API« uporabniškega priročnika.
  • V: Kako lahko preverim, ali API za pretakanje deluje?
    O: Glejte razdelek »Preverjanje delovanja API-ja za pretakanje v nadzornem središču« za navodila o tem, kako preveriti delovanje API-ja za pretakanje.

Uvod

Ta priročnik opisuje, kako pridobiti podatke iz Paragon Active Assurance prek API-ja za pretakanje izdelka.
API in odjemalec za pretakanje sta vključena v namestitev Paragon Active Assurance. Pred uporabo API-ja pa je potrebna nekaj konfiguracije. To je zajeto v poglavju »Konfiguriranje API-ja za pretakanje« na strani 1.

konecview
V tem poglavju je opisano, kako konfigurirati Streaming API, da omogoči naročanje na metrična sporočila prek Kafke.
pr
Spodaj bomo šli skozi:

  • Kako omogočiti Streaming API
  • Kako konfigurirati Kafko za poslušanje zunanjih odjemalcev
  • Kako konfigurirati Kafko za uporabo ACL-jev in nastaviti šifriranje SSL za omenjene odjemalce

Kaj je Kafka?
Kafka je platforma za pretakanje dogodkov, ki omogoča sprotni zajem podatkov, poslanih iz različnih virov dogodkov (senzorjev, baz podatkov, mobilnih naprav) v obliki tokov dogodkov, kot tudi trajno shranjevanje teh tokov dogodkov za kasnejše iskanje in manipulacijo.
S Kafko je mogoče upravljati pretakanje dogodkov od konca do konca na porazdeljen, visoko razširljiv, elastičen, odporen na napake in varen način.

OPOMBA: Kafka se lahko konfigurira na veliko različnih načinov in je bil zasnovan za razširljivost in redundantne sisteme. Ta dokument se osredotoča samo na to, kako ga konfigurirati za uporabo funkcije Streaming API, ki jo najdete v Paragon Active Assurance Control Center. Za naprednejše nastavitve se sklicujemo na uradno dokumentacijo Kafka: kafka.apache.org/26/documentation.html.

Terminologija

  • Kafka: Platforma za pretakanje dogodkov.
  • Kafka tema: Zbirka dogodkov.
  • Naročnik/potrošnik Kafke: komponenta, odgovorna za pridobivanje dogodkov, shranjenih v temi Kafka.
  • Posrednik Kafka: strežnik pomnilniške plasti gruče Kafka.
  • SSL/TLS: SSL je varen protokol, razvit za varno pošiljanje informacij prek interneta. TLS je naslednik SSL, uvedenega leta 1999.
  • SASL: Ogrodje, ki zagotavlja mehanizme za preverjanje pristnosti uporabnikov, preverjanje celovitosti podatkov in šifriranje.
  • Naročnik API-ja za pretakanje: komponenta, odgovorna za pridobivanje dogodkov, shranjenih v temah, definiranih v Paragon Active Assurance in namenjenih zunanjemu dostopu.
  • Overitelj potrdil: Zaupanja vreden subjekt, ki izda in prekliče potrdila javnih ključev.
  • Korensko potrdilo overitelja potrdil: Potrdilo javnega ključa, ki identificira overitelja potrdil.

Kako deluje API za pretakanje
Kot smo že omenili, Streaming API omogoča zunanjim odjemalcem, da pridobijo informacije o meritvah iz Kafke.

Vse metrike, ki jih zberejo testni agenti med testom ali nalogo spremljanja, se pošljejo v storitev Stream. Po fazi obdelave storitev Stream te meritve objavi na Kafki skupaj z dodatnimi metapodatki.

Juniper-NETWORKS-Streaming-API-Programska oprema- (1)

Teme Kafke
Kafka ima koncept tem, na katere so objavljeni vsi podatki. V Paragon Active Assurance je na voljo veliko takih Kafkinih tem; vendar je samo podmnožica teh namenjena zunanjemu dostopu.
Vsak račun Paragon Active Assurance v Nadzornem centru ima dve namenski temi. Spodaj je ACCOUNT kratko ime računa:

  • paa.javni.računi.{RAČUN}.metrike
    • Vsa sporočila o meritvah za dani račun so objavljena v tej temi
    • Velike količine podatkov
    • Visoka frekvenca posodabljanja
  • paa.public.accounts.{ACCOUNT}.metadata
    • Vsebuje metapodatke, povezane z metričnimi podatki, nprample test, monitor ali testni agent, povezan z metriko
    • Majhne količine podatkov
    • Nizka frekvenca posodabljanja

Omogočanje API-ja za pretakanje

OPOMBA: Ta navodila je treba izvajati na strežniku Nadzornega centra z uporabo sudo.

Ker API za pretakanje nadzornemu centru doda nekaj dodatnih stroškov, ni privzeto omogočen. Če želite omogočiti API, moramo najprej omogočiti objavo meritev v Kafki v glavni konfiguraciji file:

KAFKA_METRICS_ENABLED = Res

OPOZORILO: Omogočanje te funkcije lahko vpliva na delovanje nadzornega centra. Prepričajte se, da ste svoj primerek ustrezno dimenzionirali.

Nato omogočite posredovanje teh meritev v pravilne Kafkine teme:

streaming-api: res

Če želite omogočiti in zagnati storitve Streaming API, zaženite:

  • storitve sudo ncc omogočajo meritve timescaledb
  • storitve sudo ncc zaženejo meritve timescaledb

Na koncu znova zaženite storitve:

  • ponovni zagon storitev sudo ncc

Preverjanje, ali API za pretakanje deluje v Nadzornem centru

OPOMBA: Ta navodila je treba izvesti na strežniku Nadzornega centra.

Zdaj lahko preverite, ali prejemate metrike o pravilnih temah Kafke. Če želite to narediti, namestite pripomoček kafkacat:

  • sudo apt-get posodobitev
  • sudo apt-get namestite kafkacat

Če imate test ali monitor, ki teče v Nadzornem centru, bi morali imeti možnost, da uporabite kafkacat za prejemanje meritev in metapodatkov o teh temah.
Zamenjajte moj račun s kratkim imenom vašega računa (to vidite v svojem Nadzornem centru URL):

  • izvoz METRICS_TOPIC=paa.public.accounts.myaccount.metrics
  • izvoz METADATA_TOPIC=paa.public.accounts.myaccount.metadata

Zdaj bi morali videti meritve, če zaženete ta ukaz:

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

Za view metapodatkov, zaženite naslednji ukaz (upoštevajte, da se to ne bo posodabljalo tako pogosto):

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

OPOMBA:
kafkacat”Client Examples" na strani 14

To potrjuje, da imamo v Nadzornem centru delujoč API za pretakanje. Vendar vas najverjetneje namesto tega zanima dostop do podatkov iz zunanjega odjemalca. Naslednji razdelek opisuje, kako odpreti Kafko za zunanji dostop.

Odpiranje Kafke za zunanje gostitelje

OPOMBA: Ta navodila je treba izvesti na strežniku Nadzornega centra.

Privzeto je Kafka, ki se izvaja v Nadzornem centru, konfigurirana tako, da posluša le lokalnega gostitelja za interno uporabo. Kafko je možno odpreti za zunanje odjemalce s spreminjanjem nastavitev Kafke.

Povezovanje s Kafko: opozorila

POZOR: Prosimo, da to natančno preberete, saj lahko zlahka naletite na težave s povezavo s Kafko, če ne razumete teh konceptov.

V nastavitvi Nadzornega centra, opisani v tem dokumentu, obstaja samo en posrednik Kafka.
Vendar upoštevajte, da naj bi posrednik Kafka deloval kot del grozda Kafka, ki je lahko sestavljen iz številnih posrednikov Kafka.
Pri povezovanju s posrednikom Kafka začetno povezavo vzpostavi odjemalec Kafka. Prek te povezave posrednik Kafka vrne seznam »oglašenih poslušalcev«, ki je seznam enega ali več posrednikov Kafka.
Ko prejme ta seznam, bo odjemalec Kafka prekinil povezavo in se nato znova povezal z enim od teh oglaševanih poslušalcev. Oglašeni poslušalci morajo vsebovati imena gostiteljev ali naslove IP, ki so dostopni odjemalcu Kafka, sicer se odjemalec ne bo mogel povezati.
Če se uporablja šifriranje SSL, ki vključuje potrdilo SSL, ki je vezano na določeno ime gostitelja, je še toliko bolj pomembno, da odjemalec Kafka prejme pravilen naslov za povezavo, saj je sicer lahko povezava zavrnjena.
Več o poslušalcih Kafke preberite tukaj: www.confluent.io/blog/kafka-listeners-explained

Šifriranje SSL/TLS
Da zagotovimo, da imajo samo zaupanja vredni odjemalci dovoljen dostop do Kafke in API-ja za pretakanje, moramo konfigurirati naslednje:

  • Preverjanje pristnosti: Stranke morajo zagotoviti uporabniško ime in geslo prek varne povezave SSL/TLS med stranko in Kafko.
  • Pooblastilo: Preverjeni odjemalci lahko izvajajo naloge, ki jih urejajo ACL.

Tukaj je konecview:

Juniper-NETWORKS-Streaming-API-Programska oprema- (2)

*) Preverjanje pristnosti uporabniškega imena/gesla, izvedeno na kanalu, šifriranem s SSL

Če želite v celoti razumeti, kako deluje šifriranje SSL/TLS za Kafko, si oglejte uradno dokumentacijo: docs.confluent.io/platform/current/kafka/encryption.html

Potrdilo SSL/TLS je končanoview

OPOMBA: V tem pododdelku bomo uporabili naslednjo terminologijo:

Certifikat: potrdilo SSL, ki ga je podpisal overitelj potrdil (CA). Vsak posrednik Kafka ima enega.
Shramba ključev: shramba ključev file ki hrani potrdilo. Shramba ključev file vsebuje zasebni ključ potrdila; zato ga je treba varno hraniti.
Truststore: A file ki vsebuje zaupanja vredna potrdila CA.

Za nastavitev preverjanja pristnosti med zunanjim odjemalcem in Kafko, ki se izvaja v Nadzornem centru, morata imeti obe strani definirano shrambo ključev s povezanim potrdilom, ki ga podpiše overitelj potrdil (CA), skupaj s korenskim potrdilom CA.
Poleg tega mora imeti odjemalec tudi skrbniško shrambo s korenskim potrdilom CA.
Korensko potrdilo CA je skupno posredniku Kafka in odjemalcu Kafka.

Ustvarjanje zahtevanih potrdil
To je zajeto v “Dodatek” na strani 17.

Kafka Broker Konfiguracija SSL/TLS v Nadzornem centru

OPOMBA: Ta navodila je treba izvesti na strežniku Nadzornega centra.

OPOMBA: Preden nadaljujete, morate ustvariti shrambo ključev, ki vsebuje potrdilo SSL, tako da sledite navodilom v “Dodatku” na strani 17. Spodaj omenjene poti izhajajo iz teh navodil.
Shramba ključev SSL je a file shranjeno na disku z file razširitev .jks.

Ko imate na voljo zahtevana potrdila, ustvarjena za posrednika Kafka in odjemalca Kafka, lahko nadaljujete s konfiguracijo posrednika Kafka, ki se izvaja v Nadzornem centru. Vedeti morate naslednje:

  • : javno ime gostitelja nadzornega centra; to mora biti rešljivo in dostopno strankam Kafke.
  • : Geslo shrambe ključev, ki je bilo podano ob ustvarjanju potrdila SSL.
  • in : To sta gesli, ki ju želite nastaviti za skrbnika oziroma odjemalca. Upoštevajte, da lahko dodate več uporabnikov, kot je navedeno v prample.

Uredite ali dodajte (z dostopom sudo) spodnje lastnosti v /etc/kafka/server.properties in vstavite zgornje spremenljivke, kot je prikazano:

OPOZORILO: Ne odstranjujte PLAINTEXT://localhost:9092; to bo prekinilo funkcionalnost nadzornega centra, saj notranje storitve ne bodo mogle komunicirati.

  • # Naslovi, ki jih posrednik Kafka posluša.
  • poslušalci=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
  • # To so gostitelji, ki se oglašajo nazaj kateremu koli odjemalcu, ki se povezuje.
  • advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093 …
  • ####### KONFIG
  • # KONFIGURACIJA SSL
  • ssl.endpoint.identification.algorithm=
    ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks
  • ssl.keystore.password=
  • ssl.key.password=
  • ssl.client.auth=brez
  • ssl.protocol=TLSv1.2
  • # Konfiguracija SASL
  • sasl.enabled.mechanisms=PLAIN
  • uporabniško ime=”admin” \
  • geslo=” ” \
  • user_admin=” ” \
  • user_client=” ”;
  • # OPOMBA: z user_ lahko dodate več uporabnikov =
  • # Avtorizacija, vklop ACL-jev
  • authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=Uporabnik:admin

Nastavitev seznamov za nadzor dostopa (ACL)

Vklop ACL-jev na lokalnem gostitelju

OPOZORILO: Najprej moramo nastaviti ACL-je za lokalnega gostitelja, tako da lahko Control Center sam še vedno dostopa do Kafke. Če tega ne storite, se bodo stvari zlomile.

  • –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 Uporabnik:ANONYMOUS –allow-host 127.0.0.1 –tema '*'
  • /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 '*'

Nato moramo omogočiti ACL-je za zunanji dostop samo za branje, tako da lahko zunanji uporabniki berejo teme paa.public.*.

### Vnosi ACL za anonimne uporabnike /usr/lib/kafka/bin/kafka-acls.sh \

OPOMBA: Za bolj natančen nadzor si oglejte uradno dokumentacijo Kafka.

  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:* –operation read –operation describe \ –group 'NCC'
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:* –operation read –operation describe \ –topic paa.public. –resource-pattern-type predpono

Ko končate s tem, morate znova zagnati storitve:

### Vnosi ACL za zunanje uporabnike /usr/lib/kafka/bin/kafka-acls.sh \
  • ponovni zagon storitev sudo ncc

Če želite preveriti, ali lahko odjemalec vzpostavi varno povezavo, zaženite naslednji ukaz na zunanjem
odjemalski računalnik (ne na strežniku Nadzornega centra). Spodaj je PUBLIC_HOSTNAME ime gostitelja nadzornega centra:

  • openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep »Varno ponovno pogajanje JE podprto«

V izhodu ukaza bi morali videti potrdilo strežnika in naslednje:

  • Varno ponovno pogajanje JE podprto

Če želite zagotoviti, da je notranjim storitvam odobren dostop do strežnika Kafka, preverite naslednji dnevnikfiles:

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

Preverjanje povezljivosti zunanjega odjemalca

kafkacat

OPOMBA: Ta navodila je treba izvesti na odjemalskem računalniku (ne na strežniku Nadzornega centra).
OPOMBA: Za prikaz informacij o metrikah zagotovite, da se v Nadzornem centru izvaja vsaj en monitor.

Za preverjanje in preverjanje povezljivosti kot zunanjega odjemalca je mogoče uporabiti pripomoček kafkacat, ki je bil nameščen v razdelku »Preverjanje, ali API za pretakanje deluje v nadzornem središču« na strani 4.
Izvedite naslednje korake:

OPOMBA: Spodaj je CLIENT_USER uporabnik, ki je bil predhodno določen v file /etc/kafka/server.properties v Nadzornem centru: in sicer user_client in tam nastavljeno geslo.
Korensko potrdilo CA, ki se uporablja za podpisovanje potrdila SSL na strani strežnika, mora biti prisotno v odjemalcu.

Ustvari a file client.properties z naslednjo vsebino:

  • security.protocol=SASL_SSL
  • ssl.ca.location={PATH_TO_CA_CERT}
  • sasl.mechanisms=NAVADEN
  • sasl.username={CLIENT_USER}
  • sasl.password={CLIENT_PASSWORD}

kjer

  • {PATH_TO_CA_CERT} je lokacija korenskega potrdila CA, ki ga uporablja posrednik Kafka
  • {CLIENT_USER} in {CLIENT_PASSWORD} sta uporabniški poverilnici za odjemalca.

Zaženite naslednji ukaz, da vidite sporočilo, ki ga uporablja kafkacat:

  • izvoz KAFKA_FQDN=
  • izvoz METRICS_TOPIC=paa.public.accounts. .metrics
  • kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

kjer je {METRICS_TOPIC} ime teme Kafka s predpono “paa.public.”.

OPOMBA: Starejše različice kafkacat ne nudijo možnosti -F za branje nastavitev odjemalca iz a file. Če uporabljate takšno različico, morate v ukazni vrstici zagotoviti enake nastavitve, kot je prikazano spodaj.

kafkacat -b ${KAFKA_FQDN}:9093 \

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

Za odpravljanje napak v povezljivosti lahko uporabite možnost -d:

Odpravljanje napak v komunikaciji s potrošniki
kafkacat -d potrošnik -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Komunikacija posrednika za odpravljanje napak
kafkacat -d posrednik -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

Ne pozabite prebrati dokumentacije za knjižnico odjemalca Kafka, ki je v uporabi, saj se lastnosti lahko razlikujejo od tistih v client.properties.

Oblika sporočila
Sporočila, ki se uporabljajo za teme meritev in metapodatkov, so serializirana v obliki medpomnilnikov protokola (protobuf) (glejte developers.google.com/protocol-buffers). Sheme za ta sporočila so v naslednji obliki:

Metrična shema Protobuf

  • sintaksa = “proto3”;
  • uvozite »google/protobuf/timestamp.proto”;
  • paket paa.streamingapi;
  • možnost go_package = “.;paa_streamingapi”;
  • sporočilo Metrics {
  • google.protobuf.Timestamp časamp = 1;
  • zemljevid vrednosti = 2;
  • int32 stream_id = 3;
  • }
  • /**
  • * Metrična vrednost je lahko celo število ali lebdeča.
  • */
  • sporočilo MetricValue {
  • oneof type {
  • int64 int_val = 1;
  • float float_val = 2;
  • }
  • }

Shema metapodatkov Protobuf

  • sintaksa = “proto3”;
  • paket paa.streamingapi;
  • možnost go_package = “.;paa_streamingapi”;
  • metapodatki sporočila {
  • int32 stream_id = 1;
  • niz ime_toka = 2;
  • zemljevid tags = 13;
  • }

Stranka Examples

OPOMBA: Ti ukazi so namenjeni izvajanju na zunanjem odjemalcu, nprampprenosni računalnik ali podobno, in ne v Nadzornem centru.
OPOMBA: Če želite prikazati informacije o meritvah, zagotovite, da se v Nadzornem centru izvaja vsaj en monitor.

Tarball Control Center vključuje arhiv paa-streaming-api-client-examples.tar.gz (odjemalec-examples), ki vsebuje example skript Python, ki prikazuje, kako uporabljati API za pretakanje.

Namestitev in konfiguracija odjemalca Examples
Najdete bivšo strankoampdatoteke v mapi Paragon Active Assurance Control Center:

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

Za namestitev client-exampdatotek na vašem zunanjem odjemalskem računalniku, nadaljujte na naslednji način:

  • # Ustvari imenik za ekstrahiranje vsebine odjemalca npramples tarball
  • mkdir paa-streaming-api-client-examples
  • # Ekstrahirajte vsebino odjemalca npramples tarball
  • tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
  • # Pojdite v novo ustvarjeni imenik
  • cd paa-streaming-api-client-examples

stranka-examples za zagon potrebuje Docker. Prenose in navodila za namestitev za Docker lahko najdete na https://docs.docker.com/engine/install.

Uporaba Client Examples
Stranka-bivšaamples orodja se lahko izvajajo v osnovnem ali naprednem načinu za gradnjo exampgradiva različnih zahtevnosti. V obeh primerih je možno voditi tudi exampdatoteke s konfiguracijo file ki vsebuje dodatne lastnosti za nadaljnje prilagajanje odjemalske strani.

Osnovni način
V osnovnem načinu se metrike in njihovi metapodatki pretakajo ločeno. V ta namen odjemalec posluša vsako Kafkino temo, ki je na voljo za zunanji dostop, in prejeta sporočila preprosto natisne na konzolo.
Za začetek izvajanja osnovnega examples, zaženi:

  • build.sh run-basic –kafka-brokers localhost:9092 –račun ACCOUNT_SHORTNAME

kjer je ACCOUNT_SHORTNAME kratko ime računa, iz katerega želite pridobiti meritve.
Za prekinitev izvršbe prample, pritisnite Ctrl + C. (Morda pride do rahle zamude, preden se izvajanje ustavi, ker odjemalec čaka na dogodek časovne omejitve.)

Napredni način

OPOMBA: Meritve so prikazane samo za monitorje HTTP, ki se izvajajo v Nadzornem centru.

Izvajanje v naprednem načinu prikazuje korelacijo med metrikami in metapodatkovnimi sporočili. To je
mogoče zaradi prisotnosti v vsakem sporočilu metrike polja id toka, ki se nanaša na ustrezno metapodatkovno sporočilo.
Za izvedbo napredne eksamples, zaženi:

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

kjer je ACCOUNT_SHORTNAME kratko ime računa, iz katerega želite pridobiti meritve.
Za prekinitev izvršbe prample, pritisnite Ctrl + C. (Morda pride do rahle zamude, preden se izvajanje ustavi, ker odjemalec čaka na dogodek časovne omejitve.)

Dodatne nastavitve
Možno je voditi exampz dodatno konfiguracijo odjemalca z uporabo –config-file možnost, ki ji sledi a file ime, ki vsebuje lastnosti v obliki ključ=vrednost.

  • build.sh run-advanced \
  • –kafka-brokers lokalni gostitelj:9092 \
  • –račun ACCOUNT_SHORTNAME \
  • –config-file client_config.properties

OPOMBA: Vse files, na katere se sklicuje zgornji ukaz, se mora nahajati v trenutnem imeniku in se nanašati samo z uporabo relativnih poti. To velja tako za –config-file argument in na vse vnose v konfiguraciji file ki opisujejo file lokacije.

Preverjanje pristnosti zunanjega odjemalca
Za preverjanje pristnosti odjemalca izven nadzornega centra z uporabo client-examples, izvedite naslednje korake:

Iz mape Paragon Active Assurance Control Center preklopite na paa-streaming-api-client-exampmapa les:

cd paa-streaming-api-client-examples

  • Kopirajte korensko potrdilo CA ca-cert v trenutni imenik.
  • Ustvarite client.properties file z naslednjo vsebino:

security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=NAVADEN
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}

kjer sta {CLIENT_USER} in {CLIENT_PASSWORD} uporabniški poverilnici za odjemalca.

Zaženite osnovni examples:

  • izvoz KAFKA_FQDN=
  • build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
  • – račun ACCOUNT_SHORTNAME
  • –config-file client.properties

kjer je ACCOUNT_SHORTNAME kratko ime računa, iz katerega želite pridobiti meritve.

Zaženite napredni examples:

  • izvoz KAFKA_FQDN=
  • build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
  • – račun ACCOUNT_SHORTNAME
  • –config-file client.properties

Dodatek

V tem dodatku opisujemo, kako ustvariti:

  • shramba ključev file za shranjevanje SSL certifikata Kafka broker
  • skrbniška trgovina file za shranjevanje korenskega potrdila overitelja potrdil (CA), ki se uporablja za podpisovanje potrdila posrednika Kafka.

Ustvarjanje potrdila Kafka Broker
Ustvarjanje potrdila s pravim overiteljem potrdil (priporočeno)
Priporočljivo je, da pridobite pravi SSL certifikat od zaupanja vrednega CA.
Ko se odločite za CA, kopirajte njihov korenski certifikat CA-cert file na svojo pot, kot je prikazano spodaj:

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

Ustvarite lastnega overitelja potrdil

OPOMBA: Običajno mora vaše potrdilo podpisati pravi overitelj potrdil; glejte prejšnji pododdelek. Sledi samo bivšiample.

Tukaj ustvarimo lastno korensko potrdilo overitelja potrdil (CA). file velja 999 dni (ni priporočljivo v proizvodnji):

  • # Ustvarite imenik za shranjevanje CA
  • izvoz CA_PATH=~/my-ca
  • mkdir ${CA_PATH}
  • # Ustvari potrdilo CA
  • openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999

Ustvarjanje shrambe zaupanja strank
Zdaj lahko ustvarite shrambo zaupanja file ki vsebuje ca-cert, ustvarjen zgoraj. to file bo potreboval odjemalec Kafka, ki bo dostopal do API-ja za pretakanje:

  • keytool -keystore kafka.client.truststore.jks \
    • vzdevek CARoot \
    • importcert -file ${CA_PATH}/ca-cert

Zdaj, ko je potrdilo CA v shrambi zaupanja, bo odjemalec zaupal vsem potrdilom, podpisanim z njim.
Moral bi kopirati file kafka.client.truststore.jks na znano lokacijo v vašem odjemalskem računalniku in pokažite nanjo v nastavitvah.

Ustvarjanje shrambe ključev za posrednika Kafka
Če želite ustvariti potrdilo SSL posrednika Kafka in nato shrambo ključev kafka.server.keystore.jks, nadaljujte na naslednji način:

Ustvarjanje SSL potrdila
Spodaj je 999 število dni veljavnosti shrambe ključev, FQDN pa je popolnoma kvalificirano ime domene odjemalca (javno gostiteljsko ime vozlišča).

OPOMBA: Pomembno je, da se FQDN ujema z natančnim imenom gostitelja, ki ga bo odjemalec Kafka uporabil za povezavo z nadzornim centrom.

  • sudo mkdir -p /var/ssl/private
  • sudo chown -R $USER: /var/ssl/private
  • cd /var/ssl/private
  • izvoz FQDN= keytool -keystore kafka.server.keystore.jks \
  • – vzdevek strežnik \
  • – veljavnost 999 \
  • – genkey -keyalg RSA -ext SAN=dns:${FQDN}

Ustvarite zahtevo za podpisovanje potrdila in jo shranite v file imenovana cert-server-request:

  • keytool -keystore kafka.server.keystore.jks \
    • – vzdevek strežnik \
    • – certreq \
    • – file cert-server-request

Zdaj bi morali poslati file cert-server-request svojemu overitelju potrdil (CA), če uporabljate pravega. Nato bodo vrnili podpisano potrdilo. Spodaj bomo to imenovali cert-server-signed.

Podpisovanje potrdila SSL s potrdilom CA, ki ste ga ustvarili sami

OPOMBA: Še enkrat, uporaba lastnega CA ni priporočljiva v produkcijskem sistemu.

Podpišite potrdilo s CA s pomočjo file cert-server-request, ki ustvari podpisano potrdilo cert-server-signed. Glej spodaj; ca-geslo je geslo, nastavljeno pri ustvarjanju potrdila CA.

  • cd /var/ssl/private openssl x509 -req \
    • – CA ${CA_PATH}/ca-cert \
    • – CAkey ${CA_PATH}/ca-key \
    • – v cert-server-request \
    • – out cert-server-signed \
    • – dni 999 -CAcreateserial \
    • – passin pass:{ca-password}

Uvoz podpisanega potrdila v shrambo ključev

Uvozite korensko potrdilo ca-cert v shrambo ključev:

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

Uvozite podpisano potrdilo, imenovano cert-server-signed:

  • keytool -keystore kafka.server.keystore.jks \
    • – vzdevek strežnik \
    • – uvoz \
    • – file cert-server-podpisan

The file kafka.server.keystore.jks je treba kopirati na znano lokacijo na strežniku Nadzornega centra in nato navesti v /etc/kafka/server.properties.

Uporaba API-ja za pretakanje

V TEM ODDELKU

  • Splošno | 20
  • Imena tem Kafka | 21
  • Examples o uporabi API-ja za pretakanje | 21

Splošno
API za pretakanje pridobi testne in nadzorne podatke. Ene od teh kategorij ni mogoče izpostaviti.
API za pretakanje ne pridobiva podatkov iz testov, ki temeljijo na skriptih (tistih, ki so predstavljeni s pravokotnikom namesto kosom sestavljanke v GUI Control Center), kot so testi aktiviranja storitve Ethernet in testi preglednosti.

Imena tem Kafke
Imena tem Kafka za pretočni API so naslednja, kjer je %s kratko ime računa Nadzornega centra (navedeno pri ustvarjanju računa):

  • const (
  • ime izvoznika = “kafka”
  • metadataTopicTpl = “paa.public.accounts.%s.metadata” metricsTopicTpl = “paa.public.accounts.%s.metrics” )

Exampo uporabi API-ja za pretakanje
BivšiampDatoteke, ki sledijo, se nahajajo v datoteki tarball paa-streaming-api-client-examples.tar.gz v arhivu nadzornega centra.
Prvič, obstaja osnovni example prikazuje, kako se metrike in njihovi metapodatki pretakajo ločeno in preprosto natisnejo prejeta sporočila na konzolo. Zaženete ga lahko na naslednji način:

  • sudo ./build.sh run-basic –kafka-brokers localhost:9092 –račun ACCOUNT_SHORTNAME

Obstaja tudi naprednejši example, kjer so metrike in sporočila metapodatkov povezani. Za zagon uporabite ta ukaz:

  • sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account_ACCOUNT_SHORTNAME

Za izvajanje ukazov Docker, kot so zgornji, morate uporabiti sudo. Po želji lahko sledite korakom po namestitvi Linuxa, da boste lahko izvajali ukaze Docker brez sudo. Za podrobnosti pojdite na docs.docker.com/engine/install/linux-postinstall.

Juniper Networks, logotip Juniper Networks, Juniper in Junos so registrirane blagovne znamke družbe Juniper Networks, Inc. v Združenih državah in drugih državah. Vse druge blagovne znamke, storitvene znamke, registrirane znamke ali registrirane storitvene znamke so last njihovih lastnikov. Juniper Networks ne prevzema nobene odgovornosti za morebitne netočnosti v tem dokumentu. Juniper Networks si pridržuje pravico, da to publikacijo brez predhodnega obvestila spremeni, spremeni, prenese ali kako drugače revidira. Avtorske pravice © 2023 Juniper Networks, Inc. Vse pravice pridržane.

Dokumenti / Viri

Programska oprema Juniper NETWORKS Streaming API [pdf] Uporabniški priročnik
Programska oprema API za pretakanje, programska oprema API, programska oprema

Reference

Pustite komentar

Vaš elektronski naslov ne bo objavljen. Obvezna polja so označena *