Juniper NETWORKS Streaming API Software
Tlhahisoleseding ya Sehlahiswa
Litlhaloso
- Lebitso la Sehlahisoa: Paragon Active Assurance
- Phetolelo: 4.1
- Letsatsi la Phatlalatso: 2023-03-15
Selelekela:
Tataiso ena e fana ka litaelo tsa mokhoa oa ho ntša data ho Paragon Active Assurance o sebelisa sehlahisoa sa API. Moreki oa ho phallela le API li kenyellelitsoe ts'ebetsong ea Paragon Active Assurance, empa ho hlokahala tlhophiso e itseng pele u sebelisa API. Ts'ebetso ea tlhophiso e koahetsoe karolong ea "Configuring the Streaming API".
Ho lokisa API ea ho phallela:
Mehato e latelang e hlalosa mokhoa oa ho lokisa API ea ho phallela:
Fetileview
Kafka ke sethala sa ho tsamaisa liketsahalo se etselitsoeng ho hapa le ho boloka data ka nako ea nnete ho tsoa mehloling e fapaneng. E thusa ho laola melapo ea liketsahalo ka mokhoa o ajoang, o senyehileng, o mamellang liphoso le ka mokhoa o sireletsehileng. Tataiso ena e tsepamisitse maikutlo ho hlophiseng Kafka ho sebelisa tšobotsi ea Phallo ea API Setsing sa Taolo ea Tiisetso ea Paragon.
Terminology
Phallo ea API e lumella bareki ba kantle ho fumana lintlha tsa metrics ho tsoa Kafka. Lintlha tse bokelletsoeng ke Baemeli ba Teko nakong ea tlhahlobo kapa mosebetsi oa ho beha leihlo li romelloa ho tšebeletso ea Stream. Kamora ho sebetsa, ts'ebeletso ea Stream e phatlalatsa metrics ena ho Kafka hammoho le metadata e eketsehileng.
Phallela API e sebelisa lihlooho tsa Kafka ho hlophisa le ho boloka metrics le metadata. Lihlooho tsa Kafka li ka etsoa le ho laoloa ho latela litlhoko tse itseng.
E nolofalletsa API ea ho phallela
Ho thusa ho phallela API, latela mehato ena:
- Etsa litaelo tse latelang ho seva sa Control Center u sebelisa sudo:
KAFKA_METRICS_ENABLED = Litšebeletso tsa 'nete tsa sudo ncc li thusa metrics ea timescaledb lits'ebeletso tsa sudo ncc li qala lits'ebeletso tsa metrics tsa linako tsa sudo ncc li qala hape
Ho netefatsa hore API ea Phallo e sebetsa Setsing sa Taolo:
Ho netefatsa hore o fumana metrics ka lihlooho tse nepahetseng tsa Kafka:
- Kenya ts'ebeliso ea kafkacat ka litaelo tse latelang:
sudo apt-fumana ntlafatso
sudo apt-get install kafkacat
- Kenya sebaka sa "myaccount" ka lebitso le khuts'oane la ak'haonte ea hau ho
Setsi sa Taolo URL:
export METRICS_TOPIC=paa.public.accounts.myaccount.metrics
export METADATA_TOPIC=paa.public.accounts.myaccount.metadata
- Matha taelo e latelang ho view metrics:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
Hlokomela: Taelo e ka holimo e tla bontša metrics. - Ho view metadata, tsamaisa taelo e latelang:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
Hlokomela: Taelo e ka holimo e tla hlahisa metadata, empa e ke ke ea ntlafatsa khafetsa.
Moreki Examples
Bakeng sa moreki examplintlha le lintlha tse ling, sheba leqephe la 14 la bukana ea mosebelisi.
FAQ (Lipotso Tse Botsoang Hangata)
- P: Paragon Active Assurance ke eng?
A: Paragon Active Assurance ke sehlahisoa se fanang ka bokhoni ba ho beha leihlo le ho etsa liteko. - P: API ea ho phallela ke eng?
A: The Streaming API ke karolo ea Paragon Active Assurance e lumellang bareki ba kantle ho fumana lintlha tsa metrics ho tsoa Kafka. - P: Ke thusa joang ho phallela API?
A: Ho nolofalletsa API ea Phallo, latela mehato e hlalositsoeng karolong ea "Enabling the Streaming API" ea buka ea mosebedisi. - P: Nka netefatsa joang hore Streaming API ea sebetsa?
A: Sheba karolo ea "Ho netefatsa hore API ea Phallo e sebetsa Setsing sa Taolo" bakeng sa litaelo tsa mokhoa oa ho netefatsa ts'ebetso ea API ea Phallo.
Selelekela
Tataiso ena e hlalosa mokhoa oa ho ntša data ho Paragon Active Assurance ka ho tsamaisa sehlahisoa sa API.
API hammoho le moreki oa ho phallela li kenyellelitsoe ho kenyelletsong ea Tiisetso ea Paragon Active. Leha ho le joalo, ho hlokahala tlhophiso e nyane pele o ka sebelisa API. Sena se kenyelelitsoe ho "Configuring the Streaming API" leqepheng la 1 khaolo.
Fetileview
Khaolo ena e hlalosa mokhoa oa ho lokisa API ea Streaming ho lumella ho ngolisa melaetsa ea metrics ka Kafka.
pr
Ka tlase re tla feta:
- Mokhoa oa ho nolofalletsa API ea ho phallela
- Mokhoa oa ho hlophisa Kafka ho mamela bareki ba kantle
- Mokhoa oa ho hlophisa Kafka ho sebelisa ACLs le ho theha encryption ea SSL bakeng sa bareki ba boletsoeng
Kafka ke Eng?
Kafka ke sethala se tsamaisang liketsahalo se lumellang ho ts'oaroa ha data ka nako ea nnete ho tsoa mehloling e fapaneng ea liketsahalo (li-sensor, databases, lisebelisoa tsa mehala) ka mokhoa oa melapo ea liketsahalo, hammoho le ho boloka nako e telele ea melapo ena ea liketsahalo bakeng sa ho e fumana le ho e qhekella hamorao.
Ka Kafka hoa khoneha ho laola ketsahalo ea ho phallela ho ea qetellong ka mokhoa o ajoang, o tsitsitseng haholo, o tsitsitseng, o mamellang liphoso le o sireletsehileng.
HLOKOMELA: Kafka e ka hlophisoa ka mekhoa e mengata e fapaneng mme e ne e etselitsoe ho scalability le lits'ebetso tse sa sebetseng. Tokomane ena e shebana feela le mokhoa oa ho e hlophisa ho sebelisa sebopeho sa API sa Phallo se fumanehang Setsing sa Taolo ea Tiisetso ea Paragon. Bakeng sa litlhophiso tse tsoetseng pele re bua ka litokomane tsa semmuso tsa Kafka: kafka.apache.org/26/documentation.html.
Terminology
- Kafka: Sethala sa ho phallela ketsahalo.
- Sehlooho sa Kafka: Pokello ea liketsahalo.
- Mongolisi / moreki oa Kafka: Karolo e ikarabellang bakeng sa ho khutlisa liketsahalo tse bolokiloeng sehloohong sa Kafka.
- Kafka Broker: Seva ea polokelo ea sehlopha sa Kafka.
- SSL/TLS: SSL ke protocol e sireletsehileng e etselitsoeng ho romella tlhahisoleseling ka mokhoa o sireletsehileng Marang-rang. TLS ke mohlahlami oa SSL, e hlahisitsoeng ka 1999.
- SASL: Moralo o fanang ka mekhoa ea netefatso ea mosebelisi, ho lekola botšepehi ba data, le encryption.
- Mongolisi oa API ea phallela: Karolo e ikarabellang bakeng sa ho khutlisa liketsahalo tse bolokiloeng lihloohong tse hlalositsoeng ho Paragon Active Assurance mme e reretsoe ho fihlella kantle.
- Bolaoli ba Setifikeiti: Setheo se tšeptjoang se fanang ka le ho hlakola litifikeiti tsa bohlokoa tsa sechaba.
- Setifikeiti sa motso sa Bolaoli ba Setifikeiti: Setifikeiti sa senotlolo sa sechaba se hloaeang Bolaoli ba Setifikeiti.
Kamoo API ea Phallo e sebetsang kateng
Joalokaha ho boletsoe pejana, API ea Streaming e lumella bareki ba kantle ho fumana lintlha tse mabapi le metrics ho tsoa Kafka.
Lintlha tsohle tse bokelletsoeng ke Baemeli ba Teko nakong ea tlhahlobo kapa mosebetsi oa ho beha leihlo li romelloa ho tšebeletso ea Stream. Kamora mohato oa ts'ebetso, ts'ebeletso ea Stream e phatlalatsa metrics eo ho Kafka hammoho le metadata e eketsehileng.
Kafka Lihlooho
Kafka e na le mohopolo oa lihlooho tseo data eohle e hatisoang ho tsona. Ho Paragon Active Assurance ho na le lihlooho tse ngata tse joalo tsa Kafka tse fumanehang; leha ho le joalo, ke karoloana feela ea tsena e reretsoeng ho fihlella kantle.
Ak'haonte e 'ngoe le e' ngoe ea Paragon Active Assurance ho Control Center e na le lihlooho tse peli tse inehetseng. Ka tlase, ACCOUNT ke lebitso le khuts'oane la ak'haonte:
- paa.public.accounts.{ACCOUNT}.metrics
- Melaetsa eohle ea lipalo bakeng sa ak'haonte e fanoeng e phatlalalitsoe sehloohong sena
- Lintlha tse ngata
- Khafetsa ea ntlafatso e phahameng
- paa.public.accounts.{ACCOUNT}.metadata
- E na le metadata e amanang le lintlha tsa metrics, mohlalaamplekola, ho beha leihlo kapa Moemeli oa Teko o amanang le metrics
- Lintlha tse nyane
- Khafetsa ea ntlafatso e tlase
E nolofalletsa API ea ho phallela
HLOKOMELA: Litaelo tsena li lokela ho tsamaisoa ho seva sa Setsi sa Taolo ho sebelisa sudo.
Kaha API ea Phallo e eketsa lihlooho tse ling ho Setsi sa Taolo, ha e sebetse ka ho sa feleng. Ho nolofalletsa API, re tlameha ho qala ka ho lumella ho phatlalatsoa ha metrics ho Kafka ka tlhophiso e kholo. file:
KAFKA_METRICS_ENABLED = 'Nete
TLHOKOMELISO: Ho nolofalletsa tšobotsi ena ho ka ama ts'ebetso ea Setsi sa Taolo. Etsa bonnete ba hore u ntlafalitse mohlala oa hau ka nepo.
Ka mor'a moo, ho nolofalletsa ho fetisetsa metrics ho lihlooho tse nepahetseng tsa Kafka:
streaming-api: nnete
Ho nolofalletsa le ho qala lits'ebeletso tsa Streaming API, matha:
- lits'ebeletso tsa sudo ncc li thusa metrics ea timescaledb
- lits'ebeletso tsa sudo ncc li qala metrics ea timescaledb
Qetellong, qala litšebeletso hape:
- lits'ebeletso tsa sudo ncc li qala hape
Ho netefatsa hore API ea Phallo e sebetsa Setsing sa Taolo
HLOKOMELA: Litaelo tsena li lokela ho tsamaisoa ho seva sa Setsi sa Taolo.
Joale o ka netefatsa hore o fumana litekanyetso holima lihlooho tse nepahetseng tsa Kafka. Ho etsa joalo, kenya ts'ebeliso ea kafkacat:
- sudo apt-fumana ntlafatso
- sudo apt-get install kafkacat
Haeba u na le teko kapa tlhahlobo e sebetsang Setsing sa Taolo, u lokela ho khona ho sebelisa kafkacat ho fumana metrics le metadata lihloohong tsena.
Tlosa myaccount ka lebitso le khuts'oane la ak'haonte ea hau (sena ke seo u se bonang Setsing sa hau sa Taolo URL):
- export METRICS_TOPIC=paa.public.accounts.myaccount.metrics
- export METADATA_TOPIC=paa.public.accounts.myaccount.metadata
Joale o lokela ho bona metrics ka ho sebelisa taelo ena:
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
Ho view metadata, tsamaisa taelo e latelang (hlokomela hore sena se ke ke sa ntlafatsa khafetsa):
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
HLOKOMELA:
kafkacat”Client Examples ”leqepheng la 14
Sena se tiisa hore re na le API ea Phallo e sebetsang ho tsoa kahare ho Setsi sa Taolo. Leha ho le joalo, ho ka etsahala hore ebe u thahasella ho fumana data ho tsoa ho moreki oa kantle. Karolo e latelang e hlalosa mokhoa oa ho bula Kafka bakeng sa phihlello ea kantle.
Ho bula Kafka bakeng sa Baamoheli ba Kantle
HLOKOMELA: Litaelo tsena li lokela ho tsamaisoa ho seva sa Setsi sa Taolo.
Ka ho sa feleng Kafka e sebetsang Setsing sa Taolo e lokiselitsoe hore e mamele ho localhost feela bakeng sa ts'ebeliso ea kahare. Hoa khoneha ho bula Kafka bakeng sa bareki ba kantle ka ho fetola maemo a Kafka.
Ho hokela ho Kafka: Caveats
TLHOKOMELISO: Ka kopo bala sena ka hloko, kaha ho bonolo ho tobana le litaba tsa khokahano le Kafka haeba u sa utloisise lintlha tsena.
Sebakeng sa Setsi sa Taolo se hlalositsoeng tokomaneng ena, ho na le morekisi a le mong oa Kafka.
Leha ho le joalo, hlokomela hore morekisi oa Kafka o reretsoe ho sebetsa e le karolo ea sehlopha sa Kafka se ka bang le barekisi ba bangata ba Kafka.
Ha o hokela ho morekisi oa Kafka, khokahano ea pele e thehoa ke moreki oa Kafka. Ka lebaka la khokahano ena, morekisi oa Kafka eena o tla khutlisa lethathamo la "bamameli ba phatlalalitsoeng", e leng lethathamo la barekisi ba Kafka a le mong kapa ho feta.
Ha a fumana lenane lena, moreki oa Kafka o tla hakolla, ebe o hokela ho e mong oa bamameli bana ba bapalitsoeng. Bamameli ba phatlalalitsoeng ba tlameha ho ba le mabitso a baeti kapa liaterese tsa IP tse fumanehang ho moreki oa Kafka, kapa moreki o tla hloleha ho hokela.
Haeba SSL encryption e sebelisoa, e kenyelletsang setifikeiti sa SSL se tlamelletsoeng lebitsong le itseng la moamoheli, ho bohlokoa le ho feta hore moreki oa Kafka a fumane aterese e nepahetseng eo a ka hokelang ho eona, kaha ho seng joalo khokahano e kanna ea hana.
Bala haholoanyane ka bamameli ba Kafka mona: www.confluent.io/blog/kafka-listeners-explained
SSL/TLS Encryption
Ho etsa bonnete ba hore bareki ba tšepahalang feela ba lumelloa ho fihlella Kafka le Streaming API, re tlameha ho hlophisa tse latelang:
- Netefatso: Bareki ba tlameha ho fana ka lebitso la mosebelisi le password ka khokahano e sireletsehileng ea SSL/TLS lipakeng tsa moreki le Kafka.
- Authorization: Bareki ba netefalitsoeng ba ka etsa mesebetsi e laoloang ke ACLs.
Ho feta monaview:
*) Netefatso ea lebitso la mosebelisi / phasewete e etsoang mocha o kentsoeng oa SSL
Ho utloisisa ka botlalo hore na encryption ea SSL/TLS e sebetsa joang bakeng sa Kafka, ka kopo sheba litokomane tsa semmuso: docs.confluent.io/platform/current/kafka/encryption.html
Setifikeiti sa SSL/TLS se Felletseview
HLOKOMELA: Karolong ena re tla sebelisa mantsoe a latelang:
Setifikeiti: Setifikeiti sa SSL se saennweng ke Bolaodi ba Setifikeiti (CA). Morekisi e mong le e mong oa Kafka o na le eona.
Keystore: Lebenkele la linotlolo file e bolokang lengolo. Lebenkele la linotlolo file e na le senotlolo sa poraefete sa setifikeiti; ka hona, e hloka ho bolokoa ka mokhoa o sireletsehileng.
Truststore: A file e nang le litifikeiti tsa CA tse tšepahalang.
Ho theha netefatso pakeng tsa moreki oa kantle le Kafka e sebetsang Setsing sa Taolo, mahlakore ka bobeli a tlameha ho ba le lebenkele la linotlolo le hlalositsoeng ka setifikeiti se amanang le sona se saennoeng ke Bolaoli ba Setifikeiti (CA) hammoho le setifikeiti sa motso sa CA.
Ntle le sena, moreki o tlameha ho ba le truststore e nang le setifikeiti sa motso sa CA.
Setifikeiti sa motso sa CA se tloaelehile ho morekisi oa Kafka le moreki oa Kafka.
Ho theha Setifikeiti se Hlokehang
Sena se akarelletsoa ho “Sehlomathiso” leqepheng la 17 .
Kafka Broker SSL/TLS Configuration Setsing sa Taolo
HLOKOMELA: Litaelo tsena li lokela ho tsamaisoa ho seva sa Setsi sa Taolo.
HLOKOMELA: Pele o tsoela pele, o tlameha ho etsa lebenkele la linotlolo le nang le setifikeiti sa SSL ka ho latela litaelo tse ho "Sehlomathiso" leqepheng la 17. Litsela tse boletsoeng ka tlase li tsoa litaelong tsena.
SSL keystore ke file bolokoa ka disk le file katoloso .jks.
Hang ha u se u e-na le litifikeiti tse hlokahalang bakeng sa mofani oa Kafka le mofani oa Kafka, u ka tsoela pele ka ho lokisa Kafka broker e sebetsang Setsing sa Taolo. U lokela ho tseba tse latelang:
- : Lebitso la moamoheli oa sechaba la Setsi sa Taolo; sena se tlameha ho rarolloa le ho fumaneha ke bareki ba Kafka.
- : Lekunutu la senotlolo le fanoeng ha ho etsoa setifikeiti sa SSL.
- le : Tsena ke li-passwords tseo u batlang ho li beha bakeng sa mosebelisi oa admin le moreki ka ho latellana. Hlokomela hore o ka eketsa basebelisi ba bang, joalo ka ha ho bonts'itsoe ho example.
Fetola kapa u kenyelle (ka phihlello ea sudo) thepa e ka tlase ho /etc/kafka/server.properties, kenya mefuta e kaholimo joalo ka ha ho bonts'itsoe:
TLHOKOMELISO: U se ke ua tlosa PLAINTEXT://localhost:9092; sena se tla senya ts'ebetso ea Setsi sa Taolo kaha litšebeletso tsa ka hare li ke ke tsa khona ho buisana.
- …
- # Liaterese tseo morekisi oa Kafka a li mamelang.
- bamameli=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
- # Tsena ke libapali tse phatlalalitsoeng ho khokahanyo efe kapa efe ea bareki.
- advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093…
- ####### CUSTOM CONFIG
- # TLHOKOMELISO ea SSL
- ssl.endpoint.identification.algorithm=
ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks - ssl.keystore.password=
- ssl.key.password=
- ssl.client.auth=ha ho letho
- ssl.protocol=TLSv1.2
- # tlhophiso ea SASL
- sasl.enabled.mechanisms=PLAIN
- username="admin" \
- password = " \
- user_admin=" \
- user_client=” ”;
- # HLOKOMELA basebelisi ba bang ba ka eketsoa le user_ =
- # Tumello, bulela li-ACL
- authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=User:admin
Ho theha Manane a Taolo ea ho fihlella (ACLs)
Ho bulela ACLs ho localhost
TEMOSO: Re tlameha ho qala ka ho theha ACLs bakeng sa localhost, e le hore Setsi sa Taolo ka boeona se ntse se ka fihlella Kafka. Haeba sena se sa etsoe, lintho li tla senyeha.
- -mongoli kafka.security.authorizer.AclAuthorizer
- -authorizer-properties zookeeper.connect=localhost:2181 \
- -eketsa -allow-principal User: ANONYMOUS -allow-host 127.0.0.1 -cluster
- /usr/lib/kafka/bin/kafka-acls.sh \
- -mongoli kafka.security.authorizer.AclAuthorizer
- -authorizer-properties zookeeper.connect=localhost:2181 \
- -eketsa -allow-principal User:ANONYMOUS -allow-host 127.0.0.1 -topic '*'
- /usr/lib/kafka/bin/kafka-acls.sh \
- -mongoli kafka.security.authorizer.AclAuthorizer
- -authorizer-properties zookeeper.connect=localhost:2181 \
- -eketsa -allow-principal User:ANONYMOUS -allow-host 127.0.0.1 -group '*'
Joale re hloka ho lumella ACLs bakeng sa phihlello ea kantle ea ho bala feela, e le hore basebelisi ba kantle ba lumelloe ho bala paa.public.* lihlooho.
### ACLs kenyeletso bakeng sa basebelisi ba sa tsejoeng /usr/lib/kafka/bin/kafka-acls.sh \
HLOKOMELA: Bakeng sa taolo e ntle, ka kopo sheba litokomane tsa semmuso tsa Kafka.
- -mongoli kafka.security.authorizer.AclAuthorizer
- -authorizer-properties zookeeper.connect=localhost:2181 \
- -eketsa -allow-principal User:* -operation bala -operation hlalosa \ -group 'NCC'
- /usr/lib/kafka/bin/kafka-acls.sh \
- -mongoli kafka.security.authorizer.AclAuthorizer
- -authorizer-properties zookeeper.connect=localhost:2181 \
- -eketsa -dumella-ka sehloohong Mosebedisi:* -ts'ebetso bala -ts'ebetso hlalosa \ -topic paa.public. –mofuta wa mohlodi-mofuta wa sehlongwapele
Ha u se u qetile ka sena, u lokela ho qala litšebeletso hape:
### ACLs kenyeletso bakeng sa basebelisi ba kantle /usr/lib/kafka/bin/kafka-acls.sh \
- lits'ebeletso tsa sudo ncc li qala hape
Ho netefatsa hore moreki a ka theha khokahano e sireletsehileng, tsamaisa taelo e latelang ho e kantle
k'homphieutha ea bareki (eseng ho seva sa Control Center). Ka tlase, PUBLIC_HOSTNAME ke Setsi sa Taolo lebitso la moamoheli:
- openssl s_client -debug -hokela ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep "Renegotiation e sireletsehileng e tšehetsoa"
Ka tlhahiso ea taelo u lokela ho bona setifikeiti sa seva hammoho le tse latelang:
- Sireletsehile Renegotiation E tšehelitsoe
Ho etsa bonnete ba hore lits'ebeletso tsa kahare li filoe monyetla oa ho fumana seva sa Kafka, ka kopo sheba lethathamo le latelangfiles:
- /var/log/kafka/server.log
- /var/log/kafka/kafka-authorizer.log
Ho netefatsa Khokahano ea Bareki ba Kantle
kafkacat
HLOKOMELA: Litaelo tsena li lokela ho tsamaisoa ho komporo ea bareki (eseng ho seva sa Setsi sa Taolo).
HLOKOMELA: Ho hlahisa tlhahisoleseling ea metrics, etsa bonnete ba hore bonyane sebali se le seng se sebetsa Setsing sa Taolo.
Ho netefatsa le ho netefatsa khokahanyo joalo ka moreki oa kantle, hoa khoneha ho sebelisa sesebelisoa sa kafkacat se kentsoeng karolong ea "Ho netefatsa Hore Phallo ea API e sebetsa Setsing sa Taolo" leqepheng la 4.
Etsa mehato e latelang:
HLOKOMELA: Ka tlase, CLIENT_USER ke mosebelisi ea boletsoeng pejana file /etc/kafka/server.properties in Control Center: e leng, user_client le password e behiloeng moo.
Setifikeiti sa motso sa CA se sebelisitsoeng ho saena setifikeiti sa SSL sa lehlakoreng la seva se tlameha ho ba teng ho moreki.
Etsa a file client.properties tse nang le litaba tse latelang:
- security.protocol=SASL_SSL
- ssl.ca.location={PATH_TO_CA_CERT}
- sasl.mechanisms=PALA
- sasl.username={CLIENT_USER}
- sasl.password={CLIENT_PASSWORD}
moo
- {PATH_TO_CA_CERT} ke sebaka sa setifikeiti sa motso sa CA se sebelisoang ke morekisi oa Kafka
- {CLIENT_USER} le {CLIENT_PASSWORD} ke lintlha tsa mosebelisi bakeng sa moreki.
Sebelisa taelo e latelang ho bona molaetsa o jeoang ke kafkacat:
- thomelontle KAFKA_FQDN=
- export METRICS_TOPIC=paa.public.accounts. .metrics
- kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
moo {METRICS_TOPIC} e leng lebitso la sehlooho sa Kafka se nang le sehlongwapele "paa.public".
HLOKOMELA: Mefuta ea khale ea kafkacat ha e fane ka khetho ea -F bakeng sa ho bala litlhophiso tsa bareki ho tsoa ho a file. Haeba o sebelisa mofuta o joalo, o tlameha ho fana ka litlhophiso tse tšoanang ho tsoa moleng oa taelo joalo ka ha ho bonts'itsoe ka tlase.
kafkacat -b ${KAFKA_FQDN}:9093 \
- X security.protocol=SASL_SSL \
- X ssl.ca.location={PATH_TO_CA_CERT} \
- X sasl.mechanisms=PLAIN \
- X sasl.username={CLIENT_USER} \
- X sasl.password={CLIENT_PASSWORD} \
- t ${METRICS_TOPIC} -C -e
Ho lokisa khokahano, o ka sebelisa khetho ea -d:
Hlakola likhokahano tsa bareki
kafkacat -d moreki -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Tlosa lipuisano tsa barekisi
kafkacat -d broker -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
Etsa bonnete ba hore u sheba litokomane tsa laeborari ea bareki ba Kafka e sebelisoang, kaha thepa e ka fapana le ea bareki.
Sebopeho sa Molaetsa
Melaetsa e sebelisoang bakeng sa metrics le lihlooho tsa metadata e hlophisitsoe ka mokhoa oa Protocol buffers (protobuf) (bona developers.google.com/protocol-buffers). Merero ea melaetsa ena e latela mokhoa o latelang:
Metrics Protobuf Schema
- syntax = "proto3";
- import "google/protobuf/timestamp.proto”;
- sephutheloana paa.streamingapi;
- kgetho go_package = “.;paa_streamingapi”;
- Melaetsa ea molaetsa {
- google.protobuf.Timestamp linakoamp = 1;
- 'mapa boleng = 2;
- int32 stream_id = 3;
- }
- /**
- * Boleng ba metric e ka ba palo e felletseng kapa e phaphametseng.
- */
- molaetsa MetricValue {
- mofuta o mong {
- int64 int_val = 1;
- float float_val = 2;
- }
- }
Metadata Protobuf Schema
- syntax = "proto3";
- sephutheloana paa.streamingapi;
- kgetho go_package = “.;paa_streamingapi”;
- molaetsa Metadata {
- int32 stream_id = 1;
- string stream_name = 2;
- 'mapa tags = 13;
- }
Moreki Examples
HLOKOMELA: Litaelo tsena li reretsoe ho sebetsa ho moreki oa kantle, mohlalaampLeka laptop ea hau kapa e tšoanang, eseng Setsing sa Taolo.
HLOKOMELA: Ho hlahisa tlhahisoleseling ea metrics, etsa bonnete ba hore bonyane sebali se le seng se sebetsa Setsing sa Taolo.
Setsi sa Taolo sa tarball se kenyelletsa polokelo ea paa-streaming-api-client-examples.tar.gz (client-examples), e nang le example Python script e bonts'ang mokhoa oa ho sebelisa API ea Streaming.
Ho kenya le ho Hlophisa Client Examples
U fumana moreki-exampka fensetereng ea Paragon Active Assurance Control Center:
- thomelontle CC_VERSION=4.1.0
- cd ./paa-control-center_${CC_VERSION}
- ls paa-streaming-api-client-exampjoalo*
Ho kenya client-exampka komporo ea hau ea kantle, tsoela pele ka tsela e latelang:
- # Theha bukana ea ho ntša litaba tsa moreki oa mehlengample tarball
- mkdir paa-streaming-api-client-examples
- # Ntša litaba tsa moreki oa mehlengample tarball
- tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
- # Eya ho directory e sa tsoa etsoa
- cd paa-streaming-api-client-examples
moreki-mohlalaampLes e hloka hore Docker e sebetse. Litaelo tsa ho jarolla le ho kenya Docker li ka fumanoa ho https://docs.docker.com/engine/install.
Ho sebelisa Client Examples
Moreki-exampLisebelisoa li ka sebetsa ka mokhoa oa mantlha kapa o tsoetseng pele ho aha exampmefuta e fapaneng ea ho rarahana. Maemong ana ka bobeli, hoa khoneha ho tsamaisa examples ka tlhophiso file e nang le thepa e eketsehileng bakeng sa ntlafatso e eketsehileng ea lehlakore la bareki.
Mokhoa oa Motheo
Ka mokhoa oa mantlha, metrics le metadata ea tsona li tsamaisoa ka thoko. Ho fihlela sena, moreki o mamela sehlooho se seng le se seng sa Kafka se fumanehang bakeng sa phihlello ea kantle mme o hatisa feela melaetsa e amoheloang ho console.
Ho qala phethahatso ea exampjoalo, matha:
- build.sh run-basic -kafka-brokers localhost:9092 -account ACCOUNT_SHORTNAME
moo ACCOUNT_SHORTNAME e leng lebitso le khuts'oane la ak'haonte eo o batlang ho fumana lintlha ho eona.
Ho felisa phethahatso ea example, tobetsa Ctrl + C. (Ho ka ba le tieho e nyane pele ts'ebetso e emisa hobane moreki o emetse ketsahalo ea nako.)
Mokhoa o tsoetseng pele
HLOKOMELA: Metrics e hlahisoa feela bakeng sa limonitor tsa HTTP tse sebetsang Setsing sa Taolo.
Ts'ebetso ka mokhoa o tsoetseng pele e bonts'a kamano lipakeng tsa metamo le melaetsa ea metadata. Sena ke
ho khoneha ka lebaka la boteng ba molaetsa o mong le o mong oa metrics oa sebaka sa id sa molatsoana se buang ka molaetsa oa metadata o tsamaellanang.
Ho phethahatsa exampjoalo, matha:
- build.sh run-advanced -kafka-brokers localhost:9092 -account ACCOUNT_SHORTNAME
moo ACCOUNT_SHORTNAME e leng lebitso le khuts'oane la ak'haonte eo o batlang ho fumana lintlha ho eona.
Ho felisa phethahatso ea example, tobetsa Ctrl + C. (Ho ka ba le tieho e nyane pele ts'ebetso e emisa hobane moreki o emetse ketsahalo ea nako.)
Litlhophiso tse Eketsehileng
Hoa khoneha ho tsamaisa exampka tlhophiso e eketsehileng ea moreki a sebelisa -config-file khetho e lateloang ke a file lebitso le nang le thepa ka sebopeho key=value.
- build.sh run-advanced \
- -kafka-brokers localhost:9092 \
- –account ACCOUNT_SHORTNAME \
- -config-file client_config.properties
HLOKOMELA: Tsohle files e boletsoeng taelong e ka holimo e tlameha ho behoa bukeng ea hajoale mme e fetisetsoe ho sebelisoa litsela tse amanang feela. Sena se sebetsa ho -config-file khang le ho likenyo tsohle tse tlhophisong file tse hlalosang file libaka.
Netefatsa Netefatso ya Moreki wa Ka Ntle
Ho netefatsa netefatso ea bareki ho tsoa kantle ho Setsi sa Taolo ka ho sebelisa client-exampka kopo, etsa mehato e latelang:
Ho tsoa ho "Paragon Active Assurance Control Center" foldareng, fetela ho paa-streaming-api-client-ex.ampfoldareng e nyane:
cd paa-streaming-api-client-examples
- Kopitsa ca-cert ea setifikeiti sa motso oa CA bukeng ea hajoale.
- Theha moreki.mehato file ka litaba tse latelang:
security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=THOELENG
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}
moo {CLIENT_USER} le {CLIENT_PASSWORD} e leng mangolo a mosebedisi bakeng sa moreki.
Matha mohlala oa mantlhaamphanyane:
- thomelontle KAFKA_FQDN=
- build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
- –akhaonto ACCOUNT_SHORTNAME
- -config-file moreki. thepa
moo ACCOUNT_SHORTNAME e leng lebitso le khuts'oane la ak'haonte eo o batlang ho fumana lintlha ho eona.
Matha examphanyane:
- thomelontle KAFKA_FQDN=
- build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
- –akhaonto ACCOUNT_SHORTNAME
- -config-file moreki. thepa
Sehlomathiso
Sehlomathisong sena re hlalosa mokhoa oa ho etsa:
- lebenkele la linotlolo file bakeng sa ho boloka setifikeiti sa Kafka broker SSL
- truststore file bakeng sa ho boloka setifikeiti sa metso sa Setifikeiti sa Setifikeiti (CA) se sebelisoang ho saena setifikeiti sa broker sa Kafka.
Ho theha Setifikeiti sa Kafka Broker
Ho Theha Setifikeiti ka ho Sebelisa Bolaoli ba Setifikeiti sa 'Nete (Ho khothaletsoa)
Ho khothaletsoa hore u fumane setifikeiti sa 'nete sa SSL ho tsoa ho CA e tšepahalang.
Ha u se u nkile qeto ka CA, kopitsa ca-cert ea bona ea setifikeiti sa motso oa CA file tseleng ea hau joalo ka ha ho bonts'itsoe ka tlase:
- kantle ho naha CA_PATH=~/my-ca
- mkdir ${CA_PATH}
- cp ca-cert ${CA_PATH}
Iketsetse Bolaoli ba Setifikeiti sa Hao
HLOKOMELA: Ka tloaelo setifikeiti sa hau se lokela ho tekenoa ke Bolaoli ba Setifikeiti ba 'nete; sheba karolwana e fetileng. Se latelang ke ex feelaample.
Mona re iketsetsa setifikeiti sa rona sa Motso oa Setifikeiti (CA). file e sebetsa matsatsi a 999 (ha e khothalletsoe tlhahiso):
- # Theha bukana ea ho boloka CA
- kantle ho naha CA_PATH=~/my-ca
- mkdir ${CA_PATH}
- # Hlahisa setifikeiti sa CA
- openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999
Ho theha Lebenkele la bareki
Hona joale o ka etsa truststore file e nang le ca-cert e entsoeng ka holimo. Sena file e tla hlokoa ke moreki oa Kafka ea tla fihlella API ea Streaming:
- keytool -keystore kafka.client.truststore.jks \
- alias CARoot \
- importcert -file ${CA_PATH}/ca-cert
Kaha joale setifikeiti sa CA se ho truststore, moreki o tla tšepa setifikeiti sefe kapa sefe se saenneng le sona.
O lokela ho kopitsa file kafka.client.truststore.jks sebakeng se tsebahalang k'homphieutheng ea hau ea bareki 'me u se supe litlhophisong.
Ho theha Keystore bakeng sa Broker ea Kafka
Ho hlahisa setifikeiti sa SSL sa Broker ea Kafka ebe lebenkele la linotlolo kafka.server.keystore.jks, tsoela pele ka tsela e latelang:
Ho hlahisa Setifikeiti sa SSL
Ka tlase, 999 ke palo ea matsatsi a bonnete ba lebenkele la linotlolo, 'me FQDN ke lebitso la domain name le tšoanelehang ka botlalo la moreki (lebitso la moamoheli oa sechaba sa node).
HLOKOMELA: Ho bohlokoa hore FQDN e ts'oane le lebitso la moamoheli leo moreki oa Kafka a tla le sebelisa ho hokela Setsi sa Taolo.
- sudo mkdir -p /var/ssl/private
- sudo chown -R $USER: /var/ssl/private
- cd /var/ssl/private
- thomelontle FQDN= keytool -keystore kafka.server.keystore.jks \
- - seva sa lebitso \
- - bonnete ba 999 \
- – genkey -keyalg RSA -ext SAN=dns:${FQDN}
Etsa kopo ea ho saena setifikeiti ebe u e boloka ka har'a file e bitsoang cert-server-kopo:
- keytool -keystore kafka.server.keystore.jks \
- - seva sa lebitso \
- - certreq \
- – file cert-server-kopo
O lokela ho romela hona joale file cert-server-kopo ho Bolaoli ba Setifikeiti sa hau (CA) haeba u sebelisa ea 'nete. Joale ba tla khutlisa setifikeiti se saenneng. Re tla bua ka sena e le cert-server-e saenneng ka tlase.
Ho saena Setifikeiti sa SSL Ho Sebelisa Setifikeiti sa CA se Iketselitseng
HLOKOMELA: Hape, ho sebelisa CA ea hau ha ho khothalletsoe tsamaisong ea tlhahiso.
Saena setifikeiti u sebelisa CA ka ho file cert-server-request, e hlahisang setifikeiti se saenneng se saennoe ke cert-server. Sheba ka tlase; ca-password ke senotlolo se behiloeng ha u theha setifikeiti sa CA.
- cd /var/ssl/private openssl x509 -req \
- – CA ${CA_PATH}/ca-cert \
- – CAkey ${CA_PATH}/ca-key \
- - ka kopo ea cert-server-
- - e saennoe ke cert-server-
- Matsatsi a 999 -CAcreateserial \
- – phasewete:{ca-password}
Ho kenya Setifikeiti se Saenneng ka har'a Keystore
Kenya setifikeiti sa motso oa ca-cert lebenkeleng la linotlolo:
- keytool -keystore kafka.server.keystore.jks \
- - alias ca-cert \
- - kenya \
- – file ${CA_PATH}/ca-cert
Kenya setifikeiti se saenneng se bitsoang cert-server-signed:
- keytool -keystore kafka.server.keystore.jks \
- - seva sa lebitso \
- - kenya \
- – file cert-server-e saenneng
The file kafka.server.keystore.jks e lokela ho kopitsoa sebakeng se tsebahalang ho Setsi sa Setsi sa Taolo, ebe se boleloa ho /etc/kafka/server.properties.
Ho sebelisa Streaming API
KAROLO ENA
- Kakaretso | 20
- Kafka Topic Mabitso | 21
- Examptse ling tsa Ho Sebelisa Streaming API | 21
Kakaretso
API ea ho phallela e fumana lintlha tsa tlhahlobo le ho beha leihlo. Ho ke ke ha khoneha ho khetholla e 'ngoe ea lihlopha tsena.
API ea ho phallela ha e nke data ho tsoa litekong tse thehiloeng ho mongolo (tse emeloang ke khutlonnetsepa ho fapana le sekhechana sa jigsaw ho Control Center GUI), joalo ka liteko tsa ts'ebetso ea ts'ebeletso ea Ethernet le liteko tsa ponaletso.
Kafka Topic Mabitso
Mabitso a sehlooho sa Kafka bakeng sa API ea ho phallela a tjena, moo %s e leng lebitso le khuts'oane la ak'haonte ea Setsi sa Taolo (e bonts'itsoeng ha u theha ak'haonte):
- const (
- exporterName = "kafka"
- metadataTopicTpl = “paa.public.accounts.%s.metadata” metricsTopicTpl = “paa.public.accounts.%s.metrics” )
Examptse ling tsa Ho Sebelisa API ea phallela
Examptse latelang li fumanoa ho tarball paa-streaming-api-client-examples.tar.gz e ka har'a tarball Center ea Taolo.
Ea pele, ho na le ex ea motheoample ho bonts'a hore na li-metrics le metadata ea tsona li tsamaisoa ka thoko le ho hatisa feela melaetsa e amoheloang ho khomphutha. U ka e tsamaisa ka tsela e latelang:
- sudo ./build.sh run-basic -kafka-brokers localhost:9092 -account ACCOUNT_SHORTNAME
Ho boetse ho na le ex e tsoetseng pele ho fetaample moo melaetsa le metadata e amanang teng. Sebelisa taelo ena ho e tsamaisa:
- sudo ./build.sh run-advanced -kafka-brokers localhost:9092 -account ACCOUNT_SHORTNAME
U hloka ho sebelisa sudo ho tsamaisa litaelo tsa Docker tse kang tse ka holimo. Ka boikhethelo, o ka latela mehato ea kamora ho kenya Linux ho khona ho tsamaisa litaelo tsa Docker ntle le sudo. Ho fumana lintlha, etela ho docs.docker.com/engine/install/linux-postinstall.
Juniper Networks, logo ea Juniper Networks, Juniper, le Junos ke matšoao a ngolisitsoeng a Juniper Networks, Inc. United States le linaheng tse ling. Matshwao a mang kaofela a kgwebo, matshwao a tshebeletso, matshwao a ngodisitsweng, kapa matshwao a tshebeletso a ngodisitsweng ke thepa ya beng ba ona ka ho fapana. Juniper Networks ha e nke boikarabello bakeng sa ho se nepahale hofe kapa hofe ho tokomane ena. Juniper Networks e na le tokelo ea ho fetola, ho fetola, ho fetisa, kapa ho ntlafatsa sengoliloeng sena ntle le tsebiso. Copyright © 2023 Juniper Networks, Inc. Litokelo tsohle li sirelelitsoe.
Litokomane / Lisebelisoa
![]() |
Juniper NETWORKS Streaming API Software [pdf] Bukana ea Mosebelisi Phallela API Software, API Software, Software |