Juniper NETWORKS Streaming Software API
Émbaran produk
spésifikasi
- Ngaran produk: Paragon Active Assurance
- Vérsi: 4.1
- Tanggal diterbitkeun: 2023-03-15
bubuka:
Pituduh ieu nyayogikeun pitunjuk ngeunaan cara nimba data tina Paragon Active Assurance nganggo API streaming produk. Klién streaming sareng API kalebet dina pamasangan Paragon Active Assurance, tapi sababaraha konfigurasi diperyogikeun sateuacan nganggo API. Prosés konfigurasi katutupan dina bagian "Konfigurasi API Streaming".
Ngonpigurasikeun API Streaming:
Léngkah-léngkah ieu ngagariskeun prosés pikeun ngonpigurasikeun API streaming:
Leuwihview
Kafka mangrupikeun platform streaming acara anu dirancang pikeun newak sareng neundeun data sacara real-time tina sababaraha sumber. Éta ngamungkinkeun ngokolakeun aliran acara dina cara anu disebarkeun, skalabel, toleran kasalahan, sareng aman. Pituduh ieu museurkeun kana ngonpigurasikeun Kafka pikeun ngamangpaatkeun fitur Streaming API di Paragon Active Assurance Control Center.
terminologi
API Streaming ngamungkinkeun klien éksternal pikeun meunangkeun informasi métrik ti Kafka. Métrik anu dikumpulkeun ku Agén Tés salami tugas tés atanapi ngawaskeun dikirim ka layanan Stream. Saatos ngolah, jasa Stream nyebarkeun métrik ieu dina Kafka sareng metadata tambahan.
API Streaming ngagunakeun topik Kafka pikeun ngatur sareng nyimpen métrik sareng metadata. Topik Kafka tiasa didamel sareng dikokolakeun dumasar kana sarat khusus.
Aktipkeun API Streaming
Pikeun ngaktipkeun API Streaming, tuturkeun léngkah ieu:
- Jalankeun paréntah di handap ieu dina server Pusat Kontrol nganggo sudo:
KAFKA_METRICS_ENABLED = Ladenan sudo ncc leres ngaktifkeun métrik timescaledb jasa sudo ncc ngamimitian métrik timescaledb jasa sudo ncc balikan deui
Verifikasi yén API Streaming Gawéna di Pusat Kontrol:
Pikeun pariksa yén anjeun nampi métrik dina topik Kafka anu leres:
- Pasang utilitas kafkacat kalayan paréntah di handap ieu:
sudo apt-get update
sudo apt-meunang install kafkacat
- Ngaganti "myaccount" ku ngaran pondok akun anjeun dina
Puseur kontrol URL:
ékspor METRICS_TOPIC=paa.public.accounts.myaccount.metrics
ékspor METADATA_TOPIC=paa.public.accounts.myaccount.metadata
- Jalankeun paréntah di handap ieu pikeun view métrik:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
Catetan: Paréntah di luhur bakal mintonkeun metrics. - Ka view metadata, jalankeun paréntah di handap ieu:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
Catetan: Paréntah di luhur bakal nembongkeun metadata, tapi moal ngamutahirkeun sakumaha sering.
Klién Examples
Pikeun klien examples sarta informasi salajengna, tingal kaca 14 tina manual pamaké.
FAQ (Patarosan anu Sering Ditaroskeun)
- Q: Naon Paragon Active Assurance?
A: Paragon Active Assurance mangrupikeun produk anu nyayogikeun kamampuan ngawaskeun sareng nguji. - Q: Naon ari Streaming API?
A: API Streaming nyaéta fitur dina Paragon Active Assurance anu ngamungkinkeun para klien éksternal nyandak inpormasi métrik ti Kafka. - Q: Kumaha cara kuring ngaktipkeun API Streaming?
A: Pikeun ngaktifkeun API Streaming, tuturkeun léngkah-léngkah anu digariskeun dina bagian "Ngaktipkeun API Streaming" dina manual pangguna. - Q: Kumaha carana abdi tiasa pariksa yen Streaming API jalan?
A: Tingali kana bagian "Verifying yén Streaming API Gawéna di Control Center" pikeun parentah tentang kumaha carana pariksa pungsionalitas API Streaming.
Bubuka
Pituduh ieu ngajelaskeun kumaha carana nimba data tina Paragon Active Assurance via API streaming produk.
API ogé klien streaming kaasup kana pamasangan Paragon Active Assurance. Nanging, sakedik konfigurasi diperyogikeun sateuacan anjeun tiasa nganggo API. Ieu katutupan dina "Konfigurasi API Streaming" dina kaca 1 bab.
Leuwihview
Bab ieu ngajelaskeun kumaha carana ngonpigurasikeun API Streaming pikeun ngidinan ngalanggan pesen métrik via Kafka.
pr
Di handap ieu urang bakal ngaliwat:
- Kumaha ngaktipkeun API Streaming
- Kumaha ngonpigurasikeun Kafka pikeun ngadangukeun klien éksternal
- Kumaha ngonpigurasikeun Kafka ngagunakeun ACLs tur nyetel enkripsi SSL pikeun klien ceuk
Naon Dupi Kafka?
Kafka mangrupikeun platform streaming acara anu ngamungkinkeun nyandak data sacara real-time tina sababaraha sumber acara (sensor, database, alat sélulér) dina bentuk aliran acara, ogé nyimpen awét aliran acara ieu pikeun dimeunangkeun sareng manipulasi engké.
Kalayan Kafka, anjeun tiasa ngatur acara streaming tungtung-ka-tungtung dina cara anu disebarkeun, skalabel pisan, elastis, toleran kasalahan, sareng aman.
CATETAN: Kafka tiasa dikonpigurasi ku sababaraha cara anu béda-béda sareng dirarancang pikeun skalabilitas sareng sistem kaleuleuwihan. Dokumén ieu ngan ukur difokuskeun kumaha ngonpigurasikeunana pikeun ngamangpaatkeun fitur API Streaming anu aya di Pusat Kontrol Assurance Active Paragon. Pikeun setups leuwih maju urang tingal dokuméntasi Kafka resmi: kafka.apache.org/26/documentation.html.
terminologi
- Kafka: Platform streaming acara.
- Topik Kafka: Kumpulan acara.
- Palanggan/konsumen Kafka: Komponén anu tanggung jawab pikeun meunangkeun deui kajadian anu disimpen dina topik Kafka.
- calo Kafka: Panyimpenan server lapisan tina klaster Kafka.
- SSL / TLS: SSL mangrupakeun protokol aman dikembangkeun pikeun ngirim informasi aman ngaliwatan Internet. TLS teh panerusna SSL, diwanohkeun dina 1999.
- SASL: Kerangka anu nyayogikeun mékanisme pikeun auténtikasi pangguna, mariksa integritas data, sareng enkripsi.
- Palanggan API Streaming: Komponén anu tanggung jawab pikeun nyandak deui kajadian anu disimpen dina topik anu didefinisikeun dina Paragon Active Assurance sareng dimaksudkeun pikeun aksés éksternal.
- Otoritas Sertipikat: Éntitas anu dipercaya anu ngaluarkeun sareng nyabut sertipikat konci umum.
- Sertipikat akar Otoritas Sertipikat: Sertipikat konci umum anu ngaidentipikasi Otoritas Sertipikat.
Kumaha Streaming API Gawé
Sakumaha anu disebatkeun sateuacana, API Streaming ngamungkinkeun para klien éksternal nyandak inpormasi ngeunaan métrik tina Kafka.
Sadaya métrik anu dikumpulkeun ku Agén Tés salami tés atanapi tugas ngawas dikirim ka jasa Stream. Saatos fase ngolah, ladenan Stream nyebarkeun métrik éta dina Kafka sareng metadata tambahan.
Topik Kafka
Kafka gaduh konsép topik anu sadayana data diterbitkeun. Dina Paragon Active Assurance aya seueur topik Kafka sapertos anu sayogi; kumaha oge, ngan sawaréh ieu dimaksudkeun pikeun aksés éksternal.
Unggal akun Paragon Active Assurance di Pusat Kontrol gaduh dua topik khusus. Di handap, AKUN nyaéta ngaran pondok akun:
- paa.public.accounts.{ACCOUNT}.metrics
- Sadaya pesen métrik pikeun akun anu dipasihkeun dipedar pikeun topik ieu
- Jumlah badag data
- Frékuénsi update luhur
- paa.public.accounts.{ACCOUNT}.metadata
- Ngandung metadata anu aya hubunganana sareng data métrik, contonaample test, monitor atawa Test Agen pakait sareng metrics
- Jumlah leutik data
- Frékuénsi update low
Aktipkeun API Streaming
CATETAN: Parentah ieu kedah dijalankeun dina server Pusat Kontrol nganggo sudo.
Kusabab API Streaming nambihan sababaraha overhead ka Pusat Kontrol, éta henteu diaktipkeun sacara standar. Pikeun ngaktifkeun API, urang mimitina kedah ngaktipkeun penerbitan métrik ka Kafka dina konfigurasi utama file:
KAFKA_METRICS_ENABLED = Leres
PERHATOSAN: Aktipkeun fitur ieu tiasa mangaruhan kinerja Pusat Kontrol. Pastikeun anjeun geus dimensioned conto Anjeun sasuai.
Salajengna, pikeun ngaktifkeun neraskeun métrik ieu kana topik Kafka anu leres:
streaming-api: leres
Pikeun ngaktipkeun sareng ngamimitian jasa Streaming API, jalankeun:
- jasa sudo ncc ngaktifkeun métrik timescaledb
- jasa sudo ncc ngamimitian métrik timescaledb
Tungtungna, balikan deui jasa:
- jasa sudo ncc balikan deui
Verifikasi yén API Streaming Gawéna di Pusat Kontrol
CATETAN: Parentah ieu kedah dijalankeun dina server Pusat Kontrol.
Anjeun ayeuna tiasa pariksa yén anjeun nampi métrik dina topik Kafka anu leres. Jang ngalampahkeun kitu, pasang utilitas kafkacat:
- sudo apt-get update
- sudo apt-meunang install kafkacat
Upami anjeun gaduh tés atanapi monitor anu dijalankeun dina Pusat Kontrol, anjeun kedah tiasa nganggo kafkacat pikeun nampi métrik sareng metadata dina topik ieu.
Ganti akun abdi sareng nami pondok tina akun anjeun (ieu anu anjeun tingali dina Pusat Kontrol anjeun URL):
- ékspor METRICS_TOPIC=paa.public.accounts.myaccount.metrics
- ékspor METADATA_TOPIC=paa.public.accounts.myaccount.metadata
Ayeuna anjeun kedah ningali métrik ku ngajalankeun paréntah ieu:
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
Ka view metadata, ngajalankeun paréntah di handap ieu (perhatikeun yén ieu moal ngamutahirkeun sakumaha sering):
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
CATETAN:
kafkacat”Klién Examples” dina kaca 14
Ieu marios yén kami gaduh API Streaming anu tiasa dianggo ti jero Pusat Kontrol. Sanajan kitu, paling dipikaresep anjeun resep ngakses data ti hiji klien éksternal gantina. Bagian salajengna ngajelaskeun kumaha carana muka Kafka pikeun aksés éksternal.
Muka Kafka pikeun Hosts éksternal
CATETAN: Parentah ieu kedah dijalankeun dina server Pusat Kontrol.
Sacara standar Kafka dijalankeun dina Control Center geus ngonpigurasi pikeun ngan ngadangukeun on localhost pikeun pamakéan internal. Anjeun tiasa muka Kafka pikeun klien éksternal ku ngarobih setélan Kafka.
Nyambung ka Kafka: Caveats
PERHATOSAN: Mangga baca ieu taliti, sabab gampang pikeun ngajalankeun kana masalah sambungan kalawan Kafka lamun teu ngartos konsep ieu.
Dina setelan Control Center dijelaskeun dina dokumen ieu, ngan aya hiji calo Kafka tunggal.
Nanging, perhatikeun yén calo Kafka dimaksudkeun pikeun ngajalankeun salaku bagian tina klaster Kafka anu tiasa diwangun ku seueur calo Kafka.
Nalika nyambungkeun ka calo Kafka, sambungan awal diatur ku klien Kafka. Dina sambungan ieu calo Kafka dina gilirannana bakal balik daptar "pendengar diémbarkeun", nu mangrupa daptar hiji atawa leuwih calo Kafka.
Nalika nampi daptar ieu, klien Kafka bakal pegatkeun sambungan, teras sambungkeun deui ka salah sahiji pamiarsa anu diémbarkeun ieu. Pamirsa anu diémbarkeun kedah ngandung nami host atanapi alamat IP anu tiasa diaksés ku klien Kafka, atanapi klien bakal gagal nyambung.
Lamun enkripsi SSL dipaké, ngalibetkeun hiji sertipikat SSL nu dihijikeun ka hostname tinangtu, éta malah leuwih penting yén klien Kafka narima alamat bener pikeun nyambung ka, saprak disebutkeun sambungan nu bisa ditolak.
Baca langkung seueur ngeunaan pendengar Kafka di dieu: www.confluent.io/blog/kafka-listeners-explained
Enkripsi SSL/TLS
Pikeun mastikeun ngan ukur klien anu dipercaya anu diidinan ngaksés Kafka sareng API Streaming, urang kedah ngonpigurasikeun ieu:
- Auténtikasi: Klién kudu nyadiakeun ngaran pamaké sarta sandi ngaliwatan hiji SSL / TLS sambungan aman antara klien tur Kafka.
- Otorisasina: Klién anu dioténtikasi tiasa ngalaksanakeun tugas anu diatur ku ACL.
Di dieu hiji leuwihview:
*) Auténtikasi ngaran pamaké/sandi dipigawé dina saluran SSL-énkripsi
Pikeun ngartos sapinuhna kumaha enkripsi SSL/TLS dianggo pikeun Kafka, mangga tingal dokuméntasi resmi: docs.confluent.io/platform/current/kafka/encryption.html
SSL / Sertipikat TLS Leuwihview
CATETAN: Dina subsection ieu urang bakal ngagunakeun terminologi handap:
Sertipikat: Sertipikat SSL ditandatanganan ku Otoritas Sertipikat (CA). Unggal calo Kafka gaduh hiji.
Toko konci: Toko konci file nu nyimpen sertipikat. Toko konci file ngandung konci pribadi tina sertipikat; kituna, éta perlu dijaga aman.
Toko amanah: A file ngandung sertipikat CA anu dipercaya.
Pikeun nyetél auténtikasi antara hiji klien éksternal sarta Kafka ngajalankeun di Control Center, kadua sisi kudu boga keystore diartikeun ku sertipikat patali ditandatanganan ku Otoritas Sertipikat (CA) bareng jeung sertipikat root CA.
Salaku tambahan, klien ogé kedah gaduh toko amanah sareng sertipikat akar CA.
Sertipikat akar CA umum pikeun calo Kafka sareng klien Kafka.
Nyiptakeun sertipikat anu diperyogikeun
Ieu katutupan dina "Apendiks" dina kaca 17.
Kafka calo SSL / Konfigurasi TLS di Control Center
CATETAN: Parentah ieu kedah dijalankeun dina server Pusat Kontrol.
CATETAN: Sateuacan neraskeun, anjeun kedah nyiptakeun toko konci anu ngandung sertipikat SSL ku nuturkeun pitunjuk dina "Lampiran" dina kaca 17. Jalur anu disebatkeun di handap asalna tina petunjuk ieu.
The SSL keystore nyaeta a file disimpen dina disk jeung file extension .jks.
Sakali anjeun ngagaduhan sertipikat anu diperyogikeun pikeun calo Kafka sareng klien Kafka sayogi, anjeun tiasa teraskeun ku ngonpigurasikeun calo Kafka anu dijalankeun dina Pusat Kontrol. Anjeun kudu nyaho di handap:
- : The hostname umum tina Control Center; ieu kudu resolvable sarta diaksés ku klien Kafka.
- : Sandi keystore disadiakeun nalika nyieun sertipikat SSL.
- jeung : Ieu mangrupikeun kecap konci anu anjeun hoyong setel pikeun admin sareng pangguna klien masing-masing. Catet yén anjeun tiasa nambihan langkung seueur pangguna, sapertos anu dituduhkeun dina example.
Édit atanapi tambihan (kalayan aksés sudo) pasipatan di handap dina /etc/kafka/server.properties, lebetkeun variabel di luhur sapertos anu dipidangkeun:
PERHATOSAN: Ulah miceun PLAINTEXT: // localhost: 9092; ieu bakal megatkeun fungsi Control Center saprak jasa internal moal bisa komunikasi.
- …
- # Alamat anu didangukeun ku calo Kafka.
- listeners = PLAINTEXT: // localhost: 9092, SASL_SSL: // 0.0.0.0: 9093
- # Ieu mangrupikeun host anu diémbarkeun deui ka klien anu nyambungkeun.
- advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093…
- ###### KONFIG ADAT
- # Konfigurasi SSL
- ssl.endpoint.identification.algorithm=
ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks - ssl.keystore.sandi =
- ssl.key.sandi =
- ssl.client.auth=euweuh
- ssl.protocol=TLSv1.2
- # Konfigurasi SASL
- sasl.enabled.mechanisms=PLAIN
- ngaran pamaké = "admin" \
- sandi =” ”\
- pamaké_admin=" ”\
- pamaké_klien =” ”;
- # CATETAN langkung seueur pangguna tiasa nambihan sareng pangguna_ =
- # Otorisasina, hurungkeun ACLs
- authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=Pamaké:admin
Nyetél Daptar Kontrol Aksés (ACLs)
Ngaktipkeun ACLs on localhost
PERHATOSAN: Urang kedah nyetél heula ACL pikeun localhost, supados Pusat Kontrol nyalira tiasa ngaksés Kafka. Upami ieu henteu dilakukeun, hal-hal bakal rusak.
- –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 '*'
Urang lajeng kudu ngaktipkeun ACLs pikeun aksés dibaca wungkul éksternal, ku kituna pamaké éksternal diwenangkeun maca topik paa.public.*.
### Éntri ACL pikeun pangguna anonim /usr/lib/kafka/bin/kafka-acls.sh \
CATETAN: Kanggo kontrol anu langkung rinci, mangga tingal dokuméntasi Kafka resmi.
- –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 \ –topik paa.public. –sumberdaya-pola-tipe prefixed
Saatos réngsé ieu, anjeun kedah ngabalikan deui jasa:
### Éntri ACL pikeun pangguna éksternal /usr/lib/kafka/bin/kafka-acls.sh \
- jasa sudo ncc balikan deui
Pikeun pariksa yén klien tiasa ngadamel sambungan anu aman, jalankeun paréntah di handap ieu dina éksternal
komputer klien (henteu dina server Control Center). Di handap, PUBLIC_HOSTNAME mangrupikeun nami host Pusat Kontrol:
- openssl s_client -debug -nyambungkeun ${PUBLIC_HOSTNAME}: 9093 -tls1_2 | grep "Secure Renegotiation IS didukung"
Dina kaluaran paréntah anjeun kedah ningali sertipikat server ogé kieu:
- Renegotiation Aman IS dirojong
Pikeun mastikeun yén jasa internal parantos dibéré aksés ka server Kafka, mangga parios log di handap ieufiles:
- /var/log/kafka/server.log
- /var/log/kafka/kafka-authorizer.log
Validasi Konéktipitas klien éksternal
kafkacat
CATETAN: Parentah ieu kudu dijalankeun dina komputer klien (teu dina server Control Center).
CATETAN: Pikeun mintonkeun inpormasi métrik, pastikeun sahenteuna hiji monitor dijalankeun dina Pusat Kontrol.
Pikeun pariksa sareng ngabuktoskeun konektipitas salaku klien éksternal, anjeun tiasa nganggo utilitas kafkacat anu dipasang dina bagian "Mariksa yén API Streaming Gawéna di Pusat Kontrol" dina kaca 4.
Laksanakeun léngkah-léngkah ieu:
CATETAN: Di handap, CLIENT_USER nyaéta pamaké nu saméméhna dieusian dina file /etc/kafka/server.properties di Control Center: nyaéta, user_client sareng kecap akses anu disetél di dinya.
Sertipikat akar CA anu dianggo pikeun ngadaptarkeun sertipikat SSL sisi server kedah aya dina klien.
Nyiptakeun a file client.properties kalawan eusi handap:
- security.protocol=SASL_SSL
- ssl.ca.location={PATH_TO_CA_CERT}
- sasl.mechanisms=PLAIN
- sasl.username={CLIENT_USER}
- sasl.password={CLIENT_PASSWORD}
dimana
- {PATH_TO_CA_CERT} mangrupikeun lokasi sertipikat akar CA anu dianggo ku calo Kafka
- {CLIENT_USER} sareng {CLIENT_PASSWORD} mangrupikeun kredensial pangguna pikeun klien.
Jalankeun paréntah di handap ieu pikeun ningali pesen anu dikonsumsi ku kafkacat:
- ékspor KAFKA_FQDN =
- ékspor METRICS_TOPIC=paa.public.accounts. .metrik
- kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
dimana {METRICS_TOPIC} mangrupikeun nami topik Kafka kalayan awalan "paa.public.".
CATETAN: Vérsi heubeul kafkacat teu nyadiakeun pilihan -F pikeun maca setélan klien ti a file. Upami anjeun nganggo versi sapertos kitu, anjeun kedah nyayogikeun setélan anu sami tina garis paréntah sapertos anu dipidangkeun di handap ieu.
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
Pikeun debug konektipitas, anjeun tiasa nganggo pilihan -d:
Debug komunikasi konsumen
kafkacat -d konsumen -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Debug komunikasi calo
kafkacat -d calo -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
Pastikeun pikeun ngarujuk kana dokuméntasi pikeun perpustakaan klien Kafka anu dianggo, sabab sipatna tiasa bénten sareng anu aya dina client.properties.
Format pesen
Pesen anu dianggo pikeun métrik sareng topik metadata diserialisasikeun dina format Protocol buffers (protobuf) (tingali developers.google.com/protocol-buffers). Skéma pikeun pesen ieu patuh kana format ieu:
Métrik Protobuf Schema
- sintaksis = "proto3";
- impor "google/protobuf/timestamp.proto”;
- pakét paa.streamingapi;
- pilihan go_package = ".;paa_streamingapi";
- pesen Métrik {
- google.protobuf.Timestamp waktosamp = 1;
- peta peunteun = 2;
- int32 stream_id = 3;
- }
- /**
- * Nilai métrik tiasa janten integer atanapi ngambang.
- */
- pesen MetricValue {
- salah sahiji tipe {
- int64 int_val = 1;
- ngambang float_val = 2;
- }
- }
Skéma Protobuf Metadata
- sintaksis = "proto3";
- pakét paa.streamingapi;
- pilihan go_package = ".;paa_streamingapi";
- pesen Metadata {
- int32 stream_id = 1;
- string stream_name = 2;
- peta tags = 13;
- }
Klién Examples
CATETAN: Paréntah ieu dimaksudkeun pikeun ngajalankeun on hiji klien éksternal, pikeun example laptop Anjeun atawa sarupa, na teu di Control Center.
CATETAN: Pikeun nunjukkeun inpormasi métrik, pastikeun sahenteuna hiji monitor dijalankeun dina Pusat Kontrol.
Tarball Pusat Kontrol kalebet arsip paa-streaming-api-client-examples.tar.gz (klien-examples), anu ngandung example Aksara Python némbongkeun kumaha ngagunakeun Streaming API.
Masang sareng Konpigurasikeun Klién Examples
Anjeun manggihan klien-examples dina folder Paragon Active Assurance Control Center:
- ékspor CC_VERSION = 4.1.0
- cd ./paa-control-center_${CC_VERSION}
- ls paa-streaming-api-klien-examples*
Pikeun masang klien-examples dina komputer klien éksternal anjeun, lajengkeun kieu:
- # Jieun diréktori pikeun ékstrak eusi klien examples tarball
- mkdir paa-streaming-api-klien-examples
- # Ekstrak eusi klien examples tarball
- tar xzf paa-streaming-api-klien-examples.tar.gz -C paa-streaming-api-klien-examples
- # Pindah ka diréktori anu nembé diciptakeun
- cd paa-streaming-api-klien-examples
klien-examples merlukeun Docker ngajalankeun. Undeuran sareng petunjuk instalasi pikeun Docker tiasa dipendakan di https://docs.docker.com/engine/install.
Ngagunakeun Klién Examples
The klien-examples parabot bisa ngajalankeun dina boh mode dasar atawa canggih pikeun ngawangun examples of varying pajeulitna. Dina duanana kasus, eta oge mungkin pikeun ngajalankeun examples kalawan konfigurasi a file ngandung sipat tambahan pikeun kustomisasi salajengna tina sisi klien.
Mode Dasar
Dina mode dasar, métrik sareng metadatana dialirkeun nyalira. Pikeun tujuan ieu, klien ngadangukeun unggal topik Kafka anu sayogi pikeun aksés éksternal sareng ngan saukur nyitak pesen anu ditampi kana konsol.
Pikeun ngamimitian palaksanaan ex dasaramples, ngajalankeun:
- build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
dimana ACCOUNT_SHORTNAME mangrupikeun nami pondok tina akun anu anjeun badé kéngingkeun métrik.
Pikeun ngeureunkeun palaksanaan example, pencét Ctrl + C. (Bisa aya reureuh slight saméméh palaksanaan eureun sabab klien waits pikeun acara timeout.)
Mode canggih
CATETAN: Métrik dipintonkeun ngan pikeun monitor HTTP ngajalankeun di Control Center.
Palaksanaan dina modeu canggih nunjukkeun korelasi antara métrik sareng pesen metadata. Ieu
mungkin berkat ayana dina unggal pesen métrik tina widang stream id nu nujul kana pesen metadata pakait.
Pikeun ngaéksekusi ex majuamples, ngajalankeun:
- build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
dimana ACCOUNT_SHORTNAME mangrupikeun nami pondok tina akun anu anjeun badé kéngingkeun métrik.
Pikeun ngeureunkeun palaksanaan example, pencét Ctrl + C. (Bisa aya reureuh slight saméméh palaksanaan eureun sabab klien waits pikeun acara timeout.)
Setélan tambahan
Kasebut nyaéta dimungkinkeun pikeun ngajalankeun examples kalayan konfigurasi tambahan tina klien ngagunakeun –config-file pilihan dituturkeun ku a file ngaran ngandung sipat dina formulir konci = nilai.
- build.sh run-advanced \
- –kafka-broker localhost:9092 \
- –akun ACCOUNT_SHORTNAME \
- –konfigurasi-file client_config.properties
CATETAN: Sadayana files referenced dina paréntah di luhur kudu lokasina di diréktori ayeuna jeung disebut ngan ngagunakeun jalur relatif. Ieu lumaku duanana pikeun –config-file argumen sareng ka sadaya éntri dina konfigurasi file anu ngajelaskeun file lokasi.
Validasi auténtikasi klien éksternal
Pikeun ngesahkeun auténtikasi klien ti luar Pusat Kontrol nganggo klien-examples, laksanakeun léngkah-léngkah ieu:
Ti folder Paragon Active Assurance Control Center, pindah ka paa-streaming-api-client-examples folder:
cd paa-streaming-api-klien-examples
- Nyalin sertipikat akar CA ca-cert kana diréktori ayeuna.
- Jieun klien.properties file kalawan eusi handap:
security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=PLAIN
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}
dimana {CLIENT_USER} sareng {CLIENT_PASSWORD} mangrupikeun kredensial pangguna pikeun klien.
Jalankeun dasar examples:
- ékspor KAFKA_FQDN =
- build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
- –akun ACCOUNT_SHORTNAME
- –konfigurasi-file klien. pasipatan
dimana ACCOUNT_SHORTNAME mangrupikeun nami pondok tina akun anu anjeun badé kéngingkeun métrik.
Ngajalankeun ex majuamples:
- ékspor KAFKA_FQDN =
- build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
- –akun ACCOUNT_SHORTNAME
- –konfigurasi-file klien. pasipatan
Lampiran
Dina lampiran ieu kami ngajelaskeun kumaha carana nyieun:
- toko konci file pikeun nyimpen sertipikat SSL calo Kafka
- toko amanah file pikeun nyimpen Sertipikat Otoritas (CA) sertipikat akar dipaké pikeun asup sertipikat calo Kafka.
Nyiptakeun Sertipikat Broker Kafka
Nyiptakeun Sertipikat Nganggo Otoritas Sertipikat Nyata (Disarankeun)
Dianjurkeun yén anjeun meunang sertipikat SSL nyata ti CA dipercaya.
Sakali anjeun geus mutuskeun dina CA, nyalin sertipikat akar CA maranéhanana ca-cert file kana jalur anjeun sorangan sapertos anu dipidangkeun di handap ieu:
- ékspor CA_PATH=~/my-ca
- mkdir ${CA_PATH}
- cp ca-sert ${CA_PATH}
Jieun Otoritas Sertipikat Anjeun Sorangan
CATETAN: Biasana anjeun kedah gaduh sertipikat anjeun ditandatanganan ku Otoritas Sertipikat nyata; tingali subsection saméméhna. Naon kieu ngan hiji example.
Di dieu urang nyieun sertipikat akar Otoritas Sertipikat (CA) urang sorangan file valid pikeun 999 poé (teu dianjurkeun dina produksi):
- # Jieun diréktori pikeun nyimpen CA
- ékspor CA_PATH=~/my-ca
- mkdir ${CA_PATH}
- # Ngahasilkeun sertipikat CA
- openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999
Nyiptakeun Client Truststore
Ayeuna anjeun tiasa nyiptakeun toko amanah file nu ngandung ca-cert dihasilkeun di luhur. Ieu file bakal diperlukeun ku klien Kafka anu bakal ngakses Streaming API:
- keytool -keystore kafka.client.truststore.jks \
- alias CARoot \
- importcert -file ${CA_PATH}/ca-cert
Ayeuna sertipikat CA aya di toko amanah, klien bakal percanten kana sertipikat anu ditandatanganan ku éta.
Anjeun kedah nyalin éta file kafka.client.truststore.jks ka lokasi anu dipikanyaho dina komputer klien anjeun sareng arahkeun kana setélan.
Nyiptakeun Keystore pikeun calo Kafka
Pikeun ngahasilkeun sertipikat SSL calo Kafka teras keystore kafka.server.keystore.jks, teraskeun kieu:
Ngahasilkeun Sertipikat SSL
Di handap, 999 nyaéta jumlah poé validitas keystore, sarta FQDN mangrupakeun ngaran domain mumpuni pinuh tina klien (ngaran host umum tina titik).
CATETAN: Penting yén FQDN cocog sareng hostname pasti anu bakal dianggo ku klien Kafka pikeun nyambung ka Pusat Kontrol.
- sudo mkdir -p /var/ssl/private
- sudo chown -R $ USER: /var/ssl/private
- cd /var/ssl/swasta
- ékspor FQDN = keytool -keystore kafka.server.keystore.jks \
- – landian server \
- - validitas 999 \
- – genkey -keyalg RSA -ext SAN=dns:${FQDN}
Jieun pamundut Signing sertipikat tur nyimpen eta dina file ngaranna cert-server-request:
- keytool -keystore kafka.server.keystore.jks \
- – landian server \
- – certreq \
- – file cert-server-pamundut
Anjeun ayeuna kedah ngirim file cert-server-request ka Otoritas Sertipikat anjeun (CA) upami anjeun nganggo anu asli. Aranjeunna teras bakal ngabalikeun sertipikat anu ditandatanganan. Kami bakal ngarujuk kana ieu salaku sertipikat-server-ditandatanganan di handap.
Signing sertipikat SSL Ngagunakeun sertipikat CA Self-dijieun
CATETAN: Deui, ngagunakeun CA sorangan teu dianjurkeun dina sistem produksi.
Asupkeun sertipikat ngagunakeun CA ku cara maké éta file cert-server-request, anu ngahasilkeun sertipikat anu ditandatanganan cert-server-signed. Tingali kahandap; ca-sandi teh sandi diatur nalika nyieun sertipikat CA.
- cd /var/ssl/private openssl x509 -req \
- – CA ${CA_PATH}/ca-cert \
- – CAkey ${CA_PATH}/ca-key \
- – dina cert-server-request \
- – kaluar sertipikat-server-ditandatanganan \
- – poé 999 -CAcreateserial \
- – passin pass: {ca-sandi}
Ngimpor Sertipikat Ditandatanganan kana Keystore
Impor sertipikat root ca-cert kana keystore:
- keytool -keystore kafka.server.keystore.jks \
- – alias ca-cert \
- - impor \
- – file ${CA_PATH}/ca-cert
Impor sertipikat anu ditandatanganan anu disebut sertipikat-server-ditandatanganan:
- keytool -keystore kafka.server.keystore.jks \
- – landian server \
- - impor \
- – file cert-server-ditandatanganan
The file kafka.server.keystore.jks kudu ditiron ka lokasi nu dipikawanoh dina server Control Center, lajeng disebut dina /etc/kafka/server.properties.
Ngagunakeun Streaming API
DINA BAGIAN IEU
- Umum | 20
- Ngaran Topik Kafka | 21
- Examples tina Ngagunakeun Streaming API | 21
Umum
The streaming API fetches duanana data test na monitor. Teu mungkin pikeun milih salah sahiji kategori ieu.
API streaming henteu nyandak data tina tés dumasar-skrip (anu diwakilan ku sagi opat tinimbang potongan jigsaw dina GUI Pusat Kontrol), sapertos tés aktivasina jasa Ethernet sareng tés transparansi.
Ngaran Topik Kafka
Ngaran topik Kafka pikeun API streaming nyaéta kieu, dimana %s nyaéta ngaran pondok tina akun Control Center (ditunjukkeun nalika nyieun akun):
- const (
- exporterName = "kafka"
- metadataTopicTpl = "paa.public.accounts.%s.metadata" metricsTopicTpl = "paa.public.accounts.%s.metrics")
Examples tina Ngagunakeun Streaming API
Mantanamples nu nuturkeun kapanggih dina tarball paa-streaming-api-klien-examples.tar.gz dikandung dina tarball Control Center.
Kahiji, aya ex dasarample demonstrating kumaha metrics na metadata maranéhanana anu streamed misah tur saukur nyitak pesen narima kana konsol nu. Anjeun tiasa ngajalankeun éta saperti kieu:
- sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
Aya ogé ex leuwih majuample dimana métrik sareng pesen metadata dihubungkeun. Anggo paréntah ieu pikeun ngajalankeunana:
- sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
Anjeun kedah nganggo sudo pikeun ngajalankeun paréntah Docker sapertos anu di luhur. Opsional, anjeun tiasa nuturkeun léngkah-léngkah pamasangan Linux pikeun tiasa ngajalankeun paréntah Docker tanpa sudo. Pikeun detil, buka docs.docker.com/engine/install/linux-postinstall.
Juniper Networks, logo Juniper Networks, Juniper, sarta Junos mangrupakeun mérek dagang kadaptar ti Juniper Networks, Nyarita di Amérika Serikat jeung nagara séjén. Sadaya merek dagang, merek jasa, merek kadaptar, atanapi merek jasa kadaptar sanés mangrupikeun hak milik nu gaduhna. Juniper Networks teu nanggungjawaban kana sagala kasalahan dina dokumén ieu. Juniper Networks boga hak pikeun ngarobah, ngarobah, mindahkeun, atawa lamun heunteu ngarévisi ieu publikasi tanpa aya bewara. Hak Cipta © 2023 Juniper Networks, Inc. Sadaya hak ditangtayungan.
Dokumén / Sumberdaya
![]() |
Juniper NETWORKS Streaming Software API [pdf] Pituduh pamaké Streaming Software API, Software API, Software |