IUNIPER NETWORKS - logoRouting Active Testing Streaming API
Taiala

Folasaga

This guide describes how to extract data from Routing Active Testing via the product’s streaming API.
The API as well as the streaming client are included in the Routing Active Testing installation. However, a bit of configuration is needed before you can use the API. This is covered in the “Configuring the Streaming API” on page 1 chapter.
Fa'atonu le Streaming API

Ua umaview

O lenei mataupu o loʻo faʻamatalaina pe faʻafefea ona faʻapipiʻi le Streaming API e faʻatagaina ai le lesitala i feʻau faʻataʻitaʻiga e ala i Kafka.
I lalo o le a tatou faʻaogaina:

  • Auala e mafai ai le Streaming API
  • E faʻafefea ona faʻapipiʻi Kafka e faʻalogo i tagata mai fafo
  • E faʻafefea ona faʻapipiʻi Kafka e faʻaoga ACL ma faʻapipiʻi faʻailoga SSL mo tagata faʻatau

O le a le Kafka?
O le Kafka o se faʻasalalauga faʻasalalauga e mafai ai ona puʻeina taimi moni o faʻamatalaga na lafoina mai punaoa eseese o mea na tutupu (sensors, databases, mobile device) i foliga o faʻalavelave faʻafuaseʻi, faʻapea foʻi ma le teuina umi o nei faʻasalalauga mo le toe maua ma le faʻaogaina mulimuli ane.
Faatasi ai ma Kafka e mafai ona faʻatautaia le mea na tupu e tafe mai i le pito i le pito i se tufatufa, maualuga le faʻaogaina, faʻamalosi, faʻapalepale sese, ma le saogalemu.
FAAMANATU: Kafka can be configured in many different ways and was designed for scalability and redundant systems. This document focuses only on how to configure it to make use of the Streaming API feature found in Routing Active Testing Control Center. For more advanced setups we refer to the official Kafka documentation: kafka.apache.org/26/documentation.html.
Fa'aupuga

  • Kafka: Faʻasalalauga faʻasalalauga.
  • Kafka autu: Aoina o mea na tutupu.
  • Kafka subscriber/consumer: Vaega e nafa ma le toe maua mai o mea na tutupu o loʻo teuina i totonu o se autu Kafka.
  • Kafka Broker: 'au'aunaga fa'apipi'i fa'apipi'i o se fuifui Kafka.
  • SSL/TLS: O le SSL ose fa'amautu fa'apolokalame ua fa'atūina mo le tu'uina atu o fa'amatalaga ma le saogalemu i luga ole Initaneti. TLS o le sui o SSL, na faʻalauiloaina i le 1999.
  • SASL: Ta'iala e maua ai auala mo le fa'amaoniaina o tagata fa'aoga, siaki le sa'o o fa'amaumauga, ma fa'ailoga.
  • Streaming API subscriber: Component responsible for retrieval of events stored in topics defined in Routing Active Testing and meant for external access.
  • Pulega Tusi Faamaonia: O se faalapotopotoga faatuatuaina e tuuina atu ma faaleaogaina tusi faamaonia autu lautele.
  • Certificate Authority root certificate: Tusipasi autu lautele e iloagofie ai se Pulega Tusi Pasi.

Fa'afefea ona galue le Streaming API
E pei ona taʻua muamua, o le Streaming API e faʻatagaina ai tagata mai fafo e toe aumai faʻamatalaga e uiga i metric mai Kafka.
O fua fa'atatau uma e aoina e Su'ega Su'ega i le taimi o se su'ega po'o le mata'ituina o galuega e lafo i le 'au'aunaga Stream.
A mae'a se vaega fa'agaioiga, e fa'asalalau e le 'au'aunaga a le Vaitafe na fua fa'atatau ile Kafka fa'atasi ai ma metadata fa'aopoopo.
Kafka Autu
Kafka has the concept of topics to which all data is published. In Routing Active Testing there are many such Kafka topics available; however, only a subset of these are meant for external access.
Each Routing Active Testing account in Control Center has two dedicated topics. Below, ACCOUNT is the account short name:

  • paa.public.accounts.{ACCOUNT}.metrics
  • O fe'au uma o fua fa'atatau mo le fa'amatalaga ua tu'uina atu o lo'o fa'asalalau i lenei autu
  • Tele fa'amaumauga
  • Fa'afou fa'afou maualuga
  • paa.public.accounts.{ACCOUNT}.metadata
  • O lo'o iai metadata e feso'ota'i ma fa'amaumauga metrics, mo fa'ata'ita'igaample su'ega, mata'itu po'o le Su'ega Su'ega e feso'ota'i ma fua fa'atatau
  • Laiti fa'amaumauga
  • Fa'afou fa'afou maualalo

Fa'aagaoi le Streaming API
FAAMANATU: These instructions are to be run on the Control Center server using sudor.
Talu ai ona o le Streaming API e faʻaopoopoina nisi o luga i le Nofoaga Faʻatonu, e le mafai ona faʻaogaina. Ina ia mafai ai le API, e tatau ona tatou faʻatagaina muamua le faʻasalalauina o metrics i Kafka i le faʻatulagaga autu file:

  • /etc/netrounds/netrounds.conf

KAFKA_METRICS_ENABLED = Moni
KAFKA_PUBLISH_METADATA_FOR_STREAMS = True

Faailo Lapataiga Eletise LAPATAIGA: O le fa'aagaaga o lenei vaega e ono a'afia ai le fa'atinoga o le Nofoaga Pulea. Ia mautinoa ua e fuaina lau instance e tusa ai.
Soso'o, ina ia mafai ai ona tu'uina atu nei fua fa'atatau i autu Kafka sa'o:

  • /etc/netrounds/metrics.yaml

streaming-api: moni
Ina ia mafai ma amata le Streaming API auaunaga, tamomoe:

  • sudo ncc auaunaga e mafai ai timescaledb metrics
  • sudo ncc auaunaga amata timescaledb metrics

Mulimuli ane, toe amata auaunaga:

  • sudo ncc auaunaga toe amata

FAAMANATU: The KAFKA_PUBLISH_RESOURCES setting has been deprecated. It should be removed from your configuration. Use KAFKA_PUBLISH_METADATA_FOR_STREAMS = True instead.
Fa'amautinoa o lo'o galue le Streaming API i le Nofoaga Fa'atonu
FAAMANATU: O nei fa'atonuga e tatau ona fa'atino i luga ole server Center Control.
You can now verify that you are receiving metrics on the correct Kafka topics. To do so, install the Kafka cat utility:

  • sudo apt-get update
  • sudo apt-maua faʻapipiʻi le kafkacat

If you have a test or monitor running in Control Center, you should be able to use Kafka cat to receive metrics and metadata on these topics.
Sui myaccount i le igoa puupuu o lau teugatupe (o le mea lea e te vaʻaia i lau Nofoaga Faʻatonu URL):

  • auina atu i fafo METRICS_TOPIC=paa.public.accounts.myaccount.metrics
  • auina atu i fafo METADATA_TOPIC=paa.public.accounts.myaccount.metadata

E tatau ona e vaʻai i metrics e ala i le faʻatinoina o lenei poloaiga:

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

I view metadata, faʻataʻitaʻi le faʻatonuga o loʻo i lalo (ia maitauina o le a le faʻafouina soo):

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

FAAMANATU: This is just a sanity check to make sure things are being published correctly. The data you see being published will be in binary form, which kafkacat will not decode by default. For properly subscribing to these topics, please see the “Client Examples” on page 13 section.
Ole mea lea e fa'amaonia ai o lo'o i ai sau API Fa'aola galue mai totonu ole Nofoaga Fa'atonu. Ae ui i lea, e foliga mai e te fiafia i le mauaina o faʻamatalaga mai se tagata ese mai fafo nai lo. O le isi vaega o loʻo faʻamatalaina pe faʻafefea ona tatala Kafka mo avanoa i fafo.
Tatala le Kafka mo 'au i fafo
FAAMANATU: O faʻatonuga nei e tatau ona faʻatautaia i luga ole server Center Control.
O le fa'aletonu Kafka o lo'o tamo'e i luga o le Nofoaga Fa'atonu ua fa'atulagaina e na'o le fa'alogo ile localhost mo le fa'aoga i totonu.
E mafai ona tatala Kafka mo tagata mai fafo e ala i le suia o tulaga Kafka.
Feso'ota'i i Kafka: Fa'aaliga
Lapataiga icon FAATUATUA:
Fa'amolemole faitau ma le toto'a lenei mea, talu ai e faigofie ona fa'afeso'ota'i mataupu ma Kafka pe afai e te le'i malamalama i nei manatu.
I le fa'atonuga o le Nofoaga Fa'atonu o lo'o fa'amatalaina i lenei pepa, e na'o le tasi le Kafka broker.
Ae ui i lea, ia maitauina o le Kafka broker e tatau ona tamoe o se vaega o le Kafka cluster lea e ono aofia ai le tele o Kafka brokers.
Pe a faʻafesoʻotaʻi i le Kafka broker, o se fesoʻotaʻiga muamua e faʻatutuina e le Kafka client. I luga o lenei fesoʻotaʻiga, o le a toe faʻafoʻi atu e le Kafka broker se lisi o "faʻasalalauga faʻalogo", o se lisi o se tasi pe sili atu Kafka brokers.
I le mauaina o lenei lisi, o le Kafka client o le a motusia, ona toe faʻafesoʻotaʻi i se tasi o nei faʻasalalauga faʻasalalau. O tagata fa'asalalau fa'asalalau e tatau ona i ai igoa talimalo po'o tuatusi IP e mafai ona maua e le Kafka client, ne'i le mafai e le kalani ona fa'afeso'ota'i.
Afai e faʻaogaina le faʻailoga SSL, e aofia ai se tusi faamaonia SSL o loʻo nonoa i se igoa faʻapitoa, e sili atu ona taua le mauaina e le Kafka client le tuatusi saʻo e faʻafesoʻotaʻi i ai, aua a leai e ono teena le fesoʻotaʻiga.
Faitau atili e uiga i Kafka faʻalogologo iinei: www.confluent.io/blog/kafka-listeners-explained
SSL/TLS Encryption
Ina ia mautinoa e naʻo tagata faʻatuatuaina e faʻatagaina e ulufale i Kafka ma le Streaming API, e tatau ona matou faʻatulagaina mea nei:

  • Faʻamaoni: E tatau i tagata faʻatau ona tuʻuina atu le igoa ole igoa ma le upega tafaʻilagi e ala ile SSL/TLS fesoʻotaʻiga saogalemu i le va o le kalani ma Kafka.
  • Fa'atagaga: E mafai e tagata fa'amaonia fa'amaonia ona faia galuega fa'atulafonoina e ACL.

Ua mae'a neiview:
Ina ia malamalama atoatoa pe faʻafefea ona galue le SSL/TLS encryption mo Kafka, faʻamolemole vaʻai ile faʻamaumauga aloaia: docs.confluent.io/platform/current/kafka/encryption.html
SSL/TLS Tusi Faamaonia Ua Umaview
FAAMANATU:
I lenei vaega o le a matou faʻaogaina upu nei:
Tusi Faamaonia: O se tusi faamaonia SSL saini e se Pulega Tusi Faamaonia (CA). E tofu le tagata fai pisinisi a Kafka ma le tasi.
Keystore: Le keystore file lea e teu ai le tusi faamaonia. Le faleoloa ki file o loo i ai le ki patino o le tusi faamaonia; o lea, e tatau ona teuina ma le saogalemu.
Faleoloa tausi: A file o lo'o iai tusi faamaonia CA.
Ina ia faʻatulagaina le faʻamaoniga i le va o le tagata faʻatau fafo ma Kafka o loʻo tamoʻe i le Control Center, e tatau i itu uma e lua ona i ai se faleoloa autu e faʻamatalaina ma se tusi faamaonia e sainia e le Pulega Tusi Faamaonia (CA) faʻatasi ma le CA root certificate.
E le gata i lea, e tatau foi i le kalani ona i ai se faleoloa tausi ma le CA root certificate.
O le tusi a'a o le CA e taatele i le Kafka broker ma le Kafka client.
Fausia o Tusi Faamaonia Manaomia
O loo aofia i le “Faaopoopoga” i le itulau e 16.
Kafka Broker SSL/TLS Configuration i le Nofoaga Autu
FAAMANATU: O nei fa'atonuga e tatau ona fa'atino i luga ole server Center Control.
FAAMANATU: Before continuing, you must create the keystone which contains the SSL certificate by following the instructions in the “Appendix” on page 16. The paths mentioned below come from these instructions. The SSL keystore is a file teuina i luga o le tisiki ma le file extension .jks.
O le taimi lava e maua ai lau tusipasi mana'omia mo le Kafka broker ma le Kafka client e avanoa, e mafai ona e fa'aauau i le fa'atulagaina o le Kafka broker o lo'o fa'agaoioi i le Control Center. E tatau ona e iloa mea nei:

  • : Le igoa talimalo lautele o le Nofoaga Autu; e tatau ona fo'ia ma mafai ona maua e tagata fa'atau a Kafka.
  • : O le upegatafaʻilagi keystore na tuʻuina atu pe a fatuina le tusi faamaonia SSL.
  • ma : O upu nei e te mana'o e fa'atulaga mo le admin ma le tagata fa'aoga tagata. Manatua e mafai ona e faʻaopoopo nisi tagata faʻaoga, e pei ona faʻaalia i le example.

Edit or append (with sudo access) the properties below in /etc/kafka/server.properties, inserting the above
variables as shown:
Faailo Lapataiga Eletise LAPATAIGA: Aua le aveesea PLAINTEXT: // localhost: 9092; o le a motusia ai galuega o le Center Center talu ai o le a le mafai ona fesootai auaunaga i totonu.

# O tuatusi o loʻo faʻalogo i ai le Kafka broker.
listeners=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
# O 'au nei e toe fa'asalalau atu i so'o se tagata o lo'o feso'ota'i.
advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093
… ####### CUSTOM CONFIG
# SSL CONFIGURATION
ssl.endpoint.identification.algorithm=
ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks
ssl.keystore.password=
ssl.key.password=
ssl.client.auth=leai
ssl.protocol=TLSv1.2
# SASL fa'atulagaina
sasl.enabled.mechanisms=PLAIN
listener.name.sasl_ssl.plain.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginMo
mana'omia tele \
username=”admin” \
password=” ” \
User:admin=”<admin_pwd>” \
user client=”<client_pwd>”;
# FAAMATALAGA sili atu tagata faʻaoga e mafai ona faʻaopoopo i le user_ =
# Fa'ataga, fa'aola ACL
authorizer.class.name=kafka.security.authorizer.AclAuthorizer
superusers=User:admin
Fa'atulaga Lisi Pulea Avanoa (ACLs)
Liliu ACLs ile localhost
Faailo Lapataiga Eletise  LAPATAIGA: E tatau ona tatou seti muamua ACLs mo localhost, ina ia mafai lava e le Pulea Pule ona maua le Kafka. Afai e le faia lenei mea, o le a malepe mea.
######## Fa'auiga ACLs mo tagata fa'aoga le iloa
/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 –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 –autu '*'
/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 ‘*’
E mana'omia la ona fa'ataga ACL mo na'o le faitau i fafo, ina ia fa'atagaina tagata mai fafo e faitau mataupu paa.public.*.
FAAMANATU: Mo nisi fa'atonuga lelei, fa'amolemole va'ai ile fa'amaumauga aloaia a Kafka.
######## Fa'auiga ACLs mo tagata fa'aoga fafo
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \
–authorizer-properties zookeeper.connect=localhost:2181 \
–fa'aopoopo –fa'ataga-matua Tagata fa'aoga:* –fa'agaioiga faitau-fa'agaioiga fa'amatala \
-vaega 'NCC'
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \
–authorizer-properties zookeeper.connect=localhost:2181 \
–fa'aopoopo –fa'ataga-matua Tagata fa'aoga:* –fa'agaioiga faitau-fa'agaioiga fa'amatala \
–autu paa.lautele. –resource-model-type prefixed
A maeʻa loa lenei mea, e te manaʻomia le toe amataina o auaunaga:
sudo ncc auaunaga toe amata
Ina ia faʻamaonia e mafai e le tagata o tausia ona faʻatuina se fesoʻotaʻiga malupuipuia, faʻataʻitaʻi le faʻatonuga o loʻo i lalo i luga o se komepiuta a le tagata o tausia fafo (e le o luga ole server Center Center). I lalo ifo, PUBLIC_HOSTNAME ole igoa ole nofoaga autu e pulea:
openssl s_client -debug -fesootai ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep "E lagolagoina le Toe Fa'atalanoaga Saogalemu"
I le faʻatonuga faʻatonuga e tatau ona e vaʻai i le tusi faamaonia a le server faʻapea foʻi ma mea nei:
E lagolagoina le Secure Renegotiation
Ina ia mautinoa o loʻo faʻatagaina auaunaga i totonu o le Kafka server, faʻamolemole siaki le ogalaau o loʻo i lalofiles:

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

Fa'amaonia le Feso'ota'iga Fa'atau i fafo
kafkacat
FAAMANATU: O nei faʻatonuga e tatau ona faʻatautaia i luga o le komepiuta a le tagata o tausia (e le o luga ole server Center Center).
FAAMANATU: Ina ia fa'aalia fa'amatalaga metrics, ia mautinoa o lo'o fa'agaoioia a itiiti ifo ma le tasi le mata'itū i le Nofoaga Fa'atonu.
Ina ia faʻamaonia ma faʻamaonia fesoʻotaʻiga o se tagata faʻatau fafo, e mafai ona faʻaogaina le faʻaogaina o le kafkacat lea na faʻapipiʻiina i le vaega "Faʻamaonia o le Streaming API e galue i le Nofoaga Faʻatonu" i le itulau 4.
Fai laasaga nei:
FAAMANATU: I lalo ifo, CLIENT_USER o le tagata faʻaoga na faʻamaonia muamua i le file /etc/kafka/ server.properties in Control Center: namely, user_client and the password set there. The CA root certificate used to sign the server side SSL certificate must be present on the client.
Fausia a file client.properties ma mea nei:
security.protocol=SASL_SSL
ssl.ca.location={PATH_TO_CA_CERT}
sasl.mechanisms=PELE
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}
o fea

  • {PATH_TO_CA_CERT} o le nofoaga o le CA root certificate na fa'aogaina e le Kafka broker
  • {CLIENT_USER} ma {CLIENT_PASSWORD} o fa'amatalaga fa'aoga mo le kalani.
  • Faʻatonu le poloaiga lenei e vaʻai ai i le feʻau na faʻaaogaina e kafkacat:

auina atu i fafo KAFKA_FQDN=
auina atu i fafo METRICS_TOPIC=paa.public.accounts. .metrics
kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
lea {METRICS_TOPIC} o le igoa o le autu Kafka ma le prefix “paa.public.”.
FAAMANATU: O lomiga tuai o le kafkacat e le maua ai le filifiliga -F mo le faitauina o tulaga o tagata o tausia mai le a file. Afai o loʻo e faʻaaogaina sea ituaiga, e tatau ona e tuʻuina atu tulaga tutusa mai le laina faʻatonu e pei ona faʻaalia i lalo.
kafkacat -b ${KAFKA_FQDN}:9093 \
-X security.protocol=SASL_SSL \
-X ssl.ca.location={PATH_TO_CA_CERT} \
-X sasl.mechanisms=PALAPALA \
-X sasl.username={CLIENT_USER} \
-X sasl.password={CLIENT_PASSWORD} \
-t ${METRICS_TOPIC} -C -e
Ina ia debug le fesoʻotaʻiga, e mafai ona e faʻaogaina le -d filifiliga:
Debug feso'ota'iga tagata fa'atau
kafkacat -d tagata faatau -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Debug feso'ota'iga fai pisinisi
kafkacat -d faioloa -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
Ia mautinoa e te va'ai i fa'amaumauga mo le faletusi a le tagata fa'atau a Kafka o lo'o fa'aogaina, ona e ono ese meatotino mai mea o lo'o i totonu client.properties.
Fa'asologa o Savali
The messages used for the metrics and metadata topics are serialized in the Protocol buffers (protobuf)format (see developers.google.com/protocol-buffers). O fa'asologa mo nei fe'au o lo'o mulimulita'i i le fa'atulagaga nei:
Fuafuaga Protobuf Schema
syntax = “proto3”;
faaulufale mai “google/protobuf/timestamp.proto”;
afifi paa.streamingapi;
filifiliga go_package = “.;paa_streamingapi”;
fe'au metrics {
google.protobuf.Timestamp taimiamp = 1;
faafanua tau = 2;
int32 stream_id = 3;
}
/**
* O se tau metric e mafai ona avea ma se numera atoa poʻo se faʻafefe.
*/
fe'au MetricValue {
tasi o ituaiga {
int64 int_val = 1;
float float_val = 2;
}
}
Metadata Protobuf Schema
syntax = “proto3”;
afifi paa.streamingapi;
filifiliga go_package = “.;paa_streamingapi”;
fe'au Metadata {
int32 stream_id = 1;
manoa stream_name = 2;
faafanua tags = 13;
}
Client Examples
FAAMANATU:
O nei fa'atonuga e fa'amoemoe e fa'atino i luga o se tagata fa'atau fafo, mo se fa'ata'ita'igaamptu'u lau komepiuta feavea'i po'o se mea faapena, ae le o totonu o le Nofoaga Fa'atonu.
FAAMANATU: Ina ia fa'aalia fa'amatalaga metrics, ia mautinoa o lo'o fa'agaoioi se mata'itū e tasi i le Nofoaga Fa'atonu.
O le tarball Center Control e aofia ai le archive paa-streaming-api-client-examples.tar.gz (client-examples), o loʻo i ai se example Python script o loʻo faʻaalia ai le faʻaogaina o le Streaming API.
Fa'apipi'i ma Fa'atonu le Client Examples
E te maua le client-examples in the Routing Active Testing Control Center folder:
auina atu i fafo CC_VERSION=4.6.0
cd ./paa-control-center_${CC_VERSION}
ls paa-streaming-api-client-examples*
E fa'apipi'i client-examples i lau komepiuta tagata fa'atau fafo, fa'agasolo fa'apea:
# Fausia se lisi mo le suʻeina o mea o loʻo i totonu o le tagata o tausiaamples tarball
mkdir paa-streaming-api-client-examples
# Aveese mea o loʻo i totonu ole kalani examples tarball
tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
# Alu i le lisi fou na faia
cd paa-streaming-api-client-examples
client-examples manaʻomia Docker e tamoe. O faʻamaumauga ma faʻatonuga faʻapipiʻi mo Docker e mafai ona maua ile https://docs.docker.com/engine/install.
Fa'aaogā Client Examples
Le kalani-examples meafaigaluega e mafai ona tamoʻe i soʻo se tulaga faʻavae poʻo le maualuga e fausia ai example lavelave eseese. I tulaga uma e lua, e mafai foi ona tamoe i le examples ma se faatulagaga file o lo'o i ai meatotino fa'aopoopo mo le fa'avasegaina atili o le itu a le kalani.
Faiga Fa'avae
I le faiga fa'avae, o fua fa'atatau ma a latou metadata o lo'o fa'asalalau ese'ese. I lea tulaga, e fa'alogo le kalani i autu Kafka ta'itasi o lo'o avanoa mo avanoa i fafo ma na'o le lolomi o fe'au na maua i le fa'amafanafanaga.
E amata ai le faʻatinoina o le faʻavae muamuaamples, tamoe:
./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
lea ACCOUNT_SHORTNAME ole igoa pu'upu'u ole tala e te mana'o e maua mai ai fua.
Ina ia faamutaina le faatinoga o le example, fetaomi Ctrl + C. (Atonu e iai sina tuai a'o le'i taofia le fa'asalaga ona o lo'o fa'atali le kalani mo se taimi e fa'agata ai.)
Auala maualuga
FAAMANATU: O fua fa'atatau o lo'o fa'aalia mo na'o mata'itū HTTP o lo'o fa'agaoioi ile Nofoaga Fa'atonu.
O le faʻatinoina i le tulaga maualuga e faʻaalia ai le fesoʻotaʻiga i le va o metric ma metadata feʻau. E mafai lenei mea ona o le i ai i totonu o feʻau faʻataʻitaʻiga taʻitasi o se vaitafe id fanua e faʻatatau i le feʻau metadata fetaui.
E fa'atino ai le fa'amata'u maualugaamples, tamoe:
./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
lea ACCOUNT_SHORTNAME ole igoa pu'upu'u ole tala e te mana'o e maua mai ai fua.
Ina ia faamutaina le faatinoga o le example, fetaomi Ctrl + C. (Atonu e iai sina tuai a'o le'i taofia le fa'asalaga ona o lo'o fa'atali le kalani mo se taimi e fa'agata ai.)
Fa'aopoopo Fa'aopoopo
E mafai ona tamomoe le exampfa'atasi ai ma fa'aopoopo fa'aopoopo a le kalani fa'aaoga le –config-file filifiliga sosoo ai ma le a file igoa o lo'o iai meatotino i le fomu ki=taua.
./build.sh run-advanced \
–kafka-brokers localhost:9092 \
–account ACCOUNT_SHORTNAME \
–faiga-file client_config.properties
FAAMANATU: O mea uma files fa'asino i le fa'atonuga o lo'o i luga e tatau ona tu'u i totonu o le lisi o lo'o iai nei ma fa'asino i le fa'aaogaina o ala fa'atatau. E faʻatatau uma i le -config-file finauga ma i mea uma i totonu o le faatulagaga file lea e faamatalaina file nofoaga.
Fa'amaonia le Fa'amaoniga a Tagata Fa'atau i fafo
E fa'amaonia le fa'amaoni o tagata mai fafo o le Nofoaga Fa'atonu e fa'aaoga ai le client-examples, fai laasaga nei:

  • From the Routing Active Testing Control Center folder, switch to the paa-streaming-api-client-example faila:
    cd paa-streaming-api-client-examples
  • Kopi le CA root certificate ca-cert i le lisi o lo'o iai nei.
  • Fausia se client.properties file fa'atasi ai ma mea nei:
    security.protocol=SASL_SSL
    ssl.ca.location=ca-cert
    sasl.mechanism=PLAIN
    sasl.username={CLIENT_USER}
    sasl.password={CLIENT_PASSWORD}
    lea o {CLIENT_USER} ma {CLIENT_PASSWORD} o lo'o iai fa'amatalaga mo tagata fa'aoga.
  • Tamomoe muamua examples:
    auina atu i fafo KAFKA_FQDN=
    ./build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
    –account ACCOUNT_SHORTNAME
    –faiga-file client.properties
    lea ACCOUNT_SHORTNAME ole igoa pu'upu'u ole tala e te mana'o e maua mai ai fua.
  • Tamomoe muamua muamuaamples:
    auina atu i fafo KAFKA_FQDN=
    ./build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
    –account ACCOUNT_SHORTNAME
    –faiga-file client.properties

Fa'aopoopo

I lenei faʻaopoopoga matou te faʻamatalaina pe faʻapefea ona fai:

  • o se faleoloa autu file mo le teuina o le Kafka broker SSL tusi faamaonia
  • se faleoloa tausi file mo le teuina o le Certificate Authority (CA) root certificate na faʻaaogaina e sainia ai le Kafka broker certificate.

Fausiaina o se Kafka Broker Certificate
Fausiaina o se Tusi Fa'amaonia e Fa'aaoga ai se Pule Fa'amaonia Moni (Fautuaina)
E fautuaina e te maua se tusi faamaonia SSL moni mai se CA faatuatuaina.
A uma loa ona e filifili i se CA, kopi la latou CA root certificate ca-cert file i lau lava ala e pei ona faʻaalia i lalo:
auina atu i fafo CA_PATH=~/my-ca
mkdir ${CA_PATH}
cp ca-cert ${CA_PATH}
Fausia Lau Lava Pule Faamaonia
FAAMANATU:
E masani lava e tatau ona saini lau tusi pasi e se Pulega Tusi Faamaonia moni; tagai i le faafuaiupu muamua. O le mea o lo'o mulimuli mai ua na'o se example.
O iinei tatou te fatuina ai la tatou lava Tusi Faamaonia Pulega (CA) aʻa tusi faamaonia file aoga mo 999 aso (e le fautuaina i le gaosiga):
# Fausia se lisi mo le teuina o le CA
auina atu i fafo CA_PATH=~/my-ca
mkdir ${CA_PATH}
# Fausia le tusi faamaonia CA
openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -aso 999
Fausia le Client Truststore
Ole taimi nei e mafai ona e faia se faleoloa fa'alagolago file o lo'o i ai le ca-cert na gaosia i luga. Lenei file will be needed by the Kafka client that will access the Streaming API: keytool -keystore kafka.client.truststore.jks \
-alias CARoot \
-tusitala mai fafo -file ${CA_PATH}/ca-cert
O lea la ua iai le tusi faamaonia CA i le fale tausi mavaega, o le a fa'atuatuaina e le kalani so'o se tusi pasi e sainia ai.
E tatau ona e kopiina le file kafka.client.truststore.jks i se nofoaga e iloa i luga o lau komepiuta tagata o tausia ma faasino i ai i le faatulagaga.
Fausia le Keystore mo le Kafka Broker
Ina ia gaosia le Kafka broker SSL tusi faamaonia ona sosoo ai lea ma le keystore kafka.server.keystore.jks, fa'agasolo e pei ona taua i lalo:
Fausia le Tusi Faamaonia SSL
Use these commands to generate the SSL certificate. Below, 999 is the number of days of validity of the keystore.
sudo mkdir -p /var/ssl/private
sudo chown -R $USER: /var/ssl/private
cd /var/ssl/private
export CC_IP=<Control Center IP>
keytool -keystore kafka.server.keystore.jks \
-alias server \
-malo 999 \
-genkey -keyalg RSA -ext SAN=ip:${CC_IP}
To verify the SSL certificate, you can use the following command:
keytool -v -list -keystore kafka.server.keystore.jks -alias server
You should ensure that the port 9093 is accessible from external clients.
Fausia se talosaga saini tusi faamaonia ma teu i totonu o le file igoa cert-server-request:
keytool -keystore kafka.server.keystore.jks \
-alias server \
-certreq \
-file tusi-server-talosaga
Ua tatau nei ona e auina atu le file cert-server-request i lau Certificate Authority (CA) pe afai o loʻo e faʻaaogaina se mea moni. Ona latou toe faafoi atu lea o le tusipasi ua sainia. O le a matou taʻua lenei mea e pei o le cert-server-signed below.
Saini le Tusi Faamaonia SSL Faʻaaogaina se Tusi Faamaonia CA na faia e le tagata lava ia
FAAMANATU: E le gata i lea, o le faʻaaogaina o lau lava CA e le fautuaina i se faiga gaosiga.
Saini le tusi faamaonia e faaaoga ai le CA e ala i le file cert-server-request, lea e maua ai le tusi faamaonia saini saini-server-signed. Va'ai i lalo; ca-password o le upu faʻapipiʻi seti pe a fatuina le tusi faamaonia CA.
cd /var/ssl/private
openssl x509 -req \

  • -CA ${CA_PATH}/ca-cert \
  • -CAkey ${CA_PATH}/ca-key \
  • -i le tusipasi-server-talosaga \
  • -fa'ailoga-server-saini \
  • -aso 999 -CAcreateserial \
  • -passin pass:{ca-password}

Fa'aulufaleina mai o le Tusi Pasi Saini i totonu o le Keystore
Fa'aulufale mai le ca-cert root certificate i le keystore:
keytool -keystore kafka.server.keystore.jks \
-alias ca-cert \
-faaulufale mai \
-file ${CA_PATH}/ca-cert
Fa'aulufale mai le tusi pasi saini ua ta'ua o le cert-server-signed:
keytool -keystore kafka.server.keystore.jks \
-alias server \
-faaulufale mai \
-file tusi-server-saini
O le file Kafka.server.keystore.jks e tatau ona kopi i se nofoaga e iloa i luga o le server Center Control, ona faasino lea i totonu /etc/kafka/server.properties.
Fa'aaogā le Streaming API

lautele

Ole streaming API e maua uma faʻamatalaga suʻega ma mataʻituina. E le mafai ona fa'avasegaina se tasi o nei vaega.
O le streaming API e le maua mai faʻamatalaga mai suʻega faʻavae faʻamaumauga (o loʻo faʻatusalia e se faʻataʻitaʻi nai lo se fasi jigsaw i le Control Center GUI), e pei o suʻega faʻagaoioia auaunaga a Ethernet ma suʻega manino.

Kafka Autu Igoa

O igoa autu o le Kafka mo le API fa'afefe e fa'apea, o le %s o le igoa pu'upu'u o le Control Center account (fa'ailoa pe a fatuina le tala):
const (
exporterName = “kafka”
metadataTopicTpl = “paa.public.accounts.%s.metadata”
metricsTopicTpl = “paa.public.accounts.%s.metrics”
)
Exampo le Fa'aaogaina o le Streaming API
O le exampo lo'o mulimuli mai o lo'o maua i le tarball paa-streaming-api-client-examples.tar.gz o lo'o iai i totonu o le tarball Center Center.
Muamua, o loʻo i ai se faʻavae masaniample fa'aalia pe fa'afefea ona fa'asalalau fa'atasi ia metric ma a latou metadata ma na o le lolomi o fe'au na maua i le fa'amafanafanaga. E mafai ona e fa'atinoina e fa'apea:
sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME There is also a more advanced example mea e fa'amaopoopoina ai fe'au ma metadata. Fa'aaoga le poloaiga lenei e fa'atino ai:
sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME You need to use sudo to run Docker commands such as the ones above. Optionally, you can follow the Linux post-installation steps to be able to run Docker commands without sudo. For details, go to docs.docker.com/engine/install/linux-postinstall.
Juniper Networks, le logo Juniper Networks, Juniper, ma Junos o fa'ailoga fa'amaufa'ailoga a Juniper Networks, Inc. i le Iunaite Setete ma isi atunu'u. O isi fa'ailoga tau fefa'ataua'iga uma, fa'ailoga tautua, fa'ailoga resitala, po'o fa'ailoga tautua ua resitalaina o mea ia a latou tagata. E leai se matafaioi a Juniper Networks mo soʻo se mea le saʻo i totonu o lenei pepa. Juniper Networks fa'asaoina le aia tatau e sui, suia, fesiita'i, po'o seisi toe teuteu lenei lomiga e aunoa ma se fa'aaliga. Puletaofia © 2025 Juniper Networks,
Inc. Ua taofia aia tatau uma.

IUNIPER NETWORKS - logo

Pepa / Punaoa

JUNIPER NETWORKS Routing Active Testing Solution Brief [pdf] Taiala mo Tagata Fa'aoga
Routing Active Testing Solution Brief, Active Testing Solution Brief, Testing Solution Brief, Solution Brief

Fa'asinomaga

Tuu se faamatalaga

E le fa'asalalauina lau tuatusi imeli. Fa'ailogaina fanua mana'omia *