Programari de l'API de transmissió de Juniper NETWORKS
Informació del producte
Especificacions
- Nom del producte: Paragon Active Assurance
- Versió: 4.1
- Data de publicació: 2023-03-15
Introducció:
Aquesta guia ofereix instruccions sobre com extreure dades de Paragon Active Assurance mitjançant l'API de reproducció en temps real del producte. El client de streaming i l'API s'inclouen a la instal·lació de Paragon Active Assurance, però cal una mica de configuració abans d'utilitzar l'API. El procés de configuració es tracta a la secció "Configuració de l'API de streaming".
Configuració de l'API de streaming:
Els passos següents descriuen el procés per configurar l'API de streaming:
Acabatview
Kafka és una plataforma de transmissió d'esdeveniments dissenyada per capturar i emmagatzemar dades en temps real de diverses fonts. Permet la gestió dels fluxos d'esdeveniments d'una manera distribuïda, escalable, tolerant a errors i segura. Aquesta guia se centra a configurar Kafka per utilitzar la funció de l'API de transmissió al Centre de control de Paragon Active Assurance.
Terminologia
L'API de streaming permet als clients externs recuperar informació de mètriques de Kafka. Les mètriques recopilades pels agents de prova durant una tasca de prova o supervisió s'envien al servei Stream. Després del processament, el servei Stream publica aquestes mètriques a Kafka juntament amb metadades addicionals.
L'API de streaming utilitza temes de Kafka per organitzar i emmagatzemar mètriques i metadades. Els temes de Kafka es poden crear i gestionar segons requisits específics.
Habilitació de l'API de streaming
Per activar l'API de streaming, seguiu aquests passos:
- Executeu les ordres següents al servidor del Centre de control mitjançant sudo:
KAFKA_METRICS_ENABLED = Els serveis de sudo ncc veritables activen les mètriques d'escala temporal sudo ncc inicien les mètriques d'escala de temps de sudo ncc els serveis de reinici
Comprovació que l'API de streaming funciona al Centre de control:
Per verificar que rebeu mètriques sobre els temes de Kafka correctes:
- Instal·leu la utilitat kafkacat amb les ordres següents:
sudo apt-get update
sudo apt-get install kafkacat
- Substituïu "el meu compte" pel nom curt del vostre compte a la pàgina
Centre de control URL:
exporteu METRICS_TOPIC=paa.public.accounts.myaccount.metrics
exporteu METADATA_TOPIC=paa.public.accounts.myaccount.metadata
- Executeu la següent comanda a view mètriques:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
Nota: L'ordre anterior mostrarà les mètriques. - A view metadades, executeu l'ordre següent:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
Nota: L'ordre anterior mostrarà metadades, però no s'actualitzarà amb tanta freqüència.
Client Examples
Per client exampi més informació, consulteu la pàgina 14 del manual d'usuari.
Preguntes Freqüents (Preguntes Freqüents)
- P: Què és Paragon Active Assurance?
R: Paragon Active Assurance és un producte que ofereix capacitats de supervisió i prova. - P: Què és l'API de streaming?
R: L'API de streaming és una característica de Paragon Active Assurance que permet als clients externs recuperar informació de mètriques de Kafka. - P: Com habilito l'API de reproducció en temps real?
R: Per habilitar l'API de reproducció en temps real, seguiu els passos descrits a la secció "Activació de l'API de reproducció en temps real" del manual d'usuari. - P: Com puc verificar que l'API de streaming funciona?
R: Consulteu la secció "Verificació que l'API de streaming funciona al Centre de control" per obtenir instruccions sobre com verificar la funcionalitat de l'API de streaming.
Introducció
Aquesta guia descriu com extreure dades de Paragon Active Assurance mitjançant l'API de reproducció en temps real del producte.
L'API i el client de streaming estan inclosos a la instal·lació de Paragon Active Assurance. Tanmateix, cal una mica de configuració abans de poder utilitzar l'API. Això es tracta al capítol "Configuració de l'API de streaming" a la pàgina 1.
Acabatview
Aquest capítol descriu com configurar l'API de streaming per permetre la subscripció als missatges de mètriques mitjançant Kafka.
pr
A continuació repassarem:
- Com activar l'API de streaming
- Com configurar Kafka per escoltar clients externs
- Com configurar Kafka per utilitzar ACL i configurar el xifratge SSL per a aquests clients
Què és Kafka?
Kafka és una plataforma de transmissió d'esdeveniments que permet la captura en temps real de dades enviades des de diverses fonts d'esdeveniments (sensors, bases de dades, dispositius mòbils) en forma de fluxos d'esdeveniments, així com l'emmagatzematge durador d'aquests fluxos d'esdeveniments per a la seva posterior recuperació i manipulació.
Amb Kafka és possible gestionar la transmissió d'esdeveniments d'extrem a extrem d'una manera distribuïda, altament escalable, elàstica, tolerant a errors i segura.
NOTA: Kafka es pot configurar de moltes maneres diferents i va ser dissenyat per a sistemes d'escalabilitat i redundants. Aquest document només se centra en com configurar-lo per fer ús de la funció de l'API de streaming que es troba al Centre de control de Paragon Active Assurance. Per a configuracions més avançades, consulteu la documentació oficial de Kafka: kafka.apache.org/26/documentation.html.
Terminologia
- Kafka: plataforma de transmissió d'esdeveniments.
- Tema Kafka: Recull d'esdeveniments.
- Subscriptor/consumidor de Kafka: Component responsable de la recuperació d'esdeveniments emmagatzemats en un tema de Kafka.
- Kafka broker: servidor de capa d'emmagatzematge d'un clúster de Kafka.
- SSL/TLS: SSL és un protocol segur desenvolupat per enviar informació de manera segura a Internet. TLS és el successor de SSL, introduït el 1999.
- SASL: marc que proporciona mecanismes per a l'autenticació dels usuaris, la comprovació de la integritat de les dades i el xifratge.
- Subscriptor de l'API de streaming: Component responsable de la recuperació d'esdeveniments emmagatzemats en temes definits a Paragon Active Assurance i destinats a l'accés extern.
- Autoritat de certificació: una entitat de confiança que emet i revoca certificats de clau pública.
- Certificat arrel de l'autoritat de certificació: certificat de clau pública que identifica una autoritat de certificació.
Com funciona l'API de streaming
Com s'ha esmentat anteriorment, l'API de streaming permet als clients externs recuperar informació sobre mètriques de Kafka.
Totes les mètriques recopilades pels agents de prova durant una tasca de prova o supervisió s'envien al servei Stream. Després d'una fase de processament, el servei Stream publica aquestes mètriques a Kafka juntament amb metadades addicionals.
Temes Kafka
Kafka té el concepte de temes als quals es publiquen totes les dades. A Paragon Active Assurance hi ha molts temes de Kafka disponibles; tanmateix, només un subconjunt d'aquests estan destinats a l'accés extern.
Cada compte de Paragon Active Assurance al Control Center té dos temes dedicats. A continuació, ACCOUNT és el nom curt del compte:
- paa.public.accounts.{ACCOUNT}.metrics
- Tots els missatges de mètriques del compte donat es publiquen en aquest tema
- Grans quantitats de dades
- Alta freqüència d'actualització
- paa.public.accounts.{ACCOUNT}.metadades
- Conté metadades relacionades amb les dades de mètriques, per exempleampel test, el monitor o l'agent de prova associat amb les mètriques
- Petites quantitats de dades
- Baixa freqüència d'actualització
Habilitació de l'API de streaming
NOTA: Aquestes instruccions s'han d'executar al servidor del Centre de control mitjançant sudo.
Com que l'API de streaming afegeix una mica de sobrecàrrega al Centre de control, no està habilitat per defecte. Per habilitar l'API, primer hem d'habilitar la publicació de mètriques a Kafka a la configuració principal file:
KAFKA_METRICS_ENABLED = Cert
ADVERTIMENT: Habilitar aquesta funció pot afectar el rendiment del Centre de control. Assegureu-vos que heu dimensionat la vostra instància en conseqüència.
A continuació, per habilitar el reenviament d'aquestes mètriques als temes de Kafka correctes:
streaming-api: cert
Per activar i iniciar els serveis de l'API de streaming, executeu:
- Els serveis de sudo ncc permeten mètriques d'escala temporal
- Els serveis sudo ncc inicien mètriques a escala de temps
Finalment, reinicieu els serveis:
- Reiniciar els serveis sudo ncc
Verificació que l'API de streaming funciona al Centre de control
NOTA: Aquestes instruccions s'han d'executar al servidor del Centre de control.
Ara podeu verificar que rebeu mètriques sobre els temes de Kafka correctes. Per fer-ho, instal·leu la utilitat kafkacat:
- sudo apt-get update
- sudo apt-get install kafkacat
Si teniu una prova o un monitor en execució al Centre de control, hauríeu de poder utilitzar kafkacat per rebre mètriques i metadades sobre aquests temes.
Substituïu myaccount pel nom curt del vostre compte (això és el que veieu al vostre Centre de control URL):
- exporteu METRICS_TOPIC=paa.public.accounts.myaccount.metrics
- exporteu METADATA_TOPIC=paa.public.accounts.myaccount.metadata
Ara hauríeu de veure les mètriques executant aquesta ordre:
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
A view metadades, executeu l'ordre següent (tingueu en compte que això no s'actualitzarà amb tanta freqüència):
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
NOTA:
kafkacat”Client Examples” a la pàgina 14
Això verifica que tenim una API de streaming que funciona des del Centre de control. Tanmateix, el més probable és que us interessi accedir a les dades des d'un client extern. La secció següent descriu com obrir Kafka per a l'accés extern.
Obertura de Kafka per a hosts externs
NOTA: Aquestes instruccions s'han d'executar al servidor del Centre de control.
Per defecte, Kafka que s'executa al Centre de control està configurat per escoltar només a localhost per a ús intern. És possible obrir Kafka per a clients externs modificant la configuració de Kafka.
Connexió a Kafka: advertències
PRECAUCIÓ: Si us plau, llegiu-ho atentament, ja que és fàcil trobar problemes de connexió amb Kafka si no heu entès aquests conceptes.
A la configuració del Centre de control que es descriu en aquest document, només hi ha un sol agent de Kafka.
Tanmateix, tingueu en compte que un corredor de Kafka està pensat per funcionar com a part d'un clúster de Kafka que pot estar format per molts corredors de Kafka.
Quan es connecta a un agent de Kafka, el client de Kafka configura una connexió inicial. Amb aquesta connexió, el corredor de Kafka al seu torn retornarà una llista d'"oients anunciats", que és una llista d'un o més corredors de Kafka.
En rebre aquesta llista, el client de Kafka es desconnectarà i després es tornarà a connectar a un d'aquests oients anunciats. Els oients anunciats han de contenir noms d'amfitrió o adreces IP que siguin accessibles per al client Kafka, o el client no es connectarà.
Si s'utilitza el xifratge SSL, que implica un certificat SSL lligat a un nom d'amfitrió concret, és encara més important que el client Kafka rebi l'adreça correcta per connectar-se, ja que, en cas contrari, es pot rebutjar la connexió.
Més informació sobre els oients de Kafka aquí: www.confluent.io/blog/kafka-listeners-explained
Xifratge SSL/TLS
Per assegurar-nos que només els clients de confiança poden accedir a Kafka i a l'API de streaming, hem de configurar el següent:
- Autenticació: Els clients han de proporcionar nom d'usuari i contrasenya mitjançant una connexió segura SSL/TLS entre el client i Kafka.
- Autorització: els clients autenticats poden realitzar tasques regulades per ACL.
Aquí hi ha un acabatview:
*) Autenticació de nom d'usuari/contrasenya realitzada en un canal encriptat amb SSL
Per entendre completament com funciona el xifratge SSL/TLS per a Kafka, consulteu la documentació oficial: docs.confluent.io/platform/current/kafka/encryption.html
Certificat SSL/TLS acabatview
NOTA: En aquest subapartat utilitzarem la terminologia següent:
Certificat: un certificat SSL signat per una autoritat de certificació (CA). Cada corredor de Kafka en té un.
Magatzem de claus: El magatzem de claus file que emmagatzema el certificat. El magatzem de claus file conté la clau privada del certificat; per tant, cal mantenir-lo de forma segura.
Truststore: A file que conté els certificats de CA de confiança.
Per configurar l'autenticació entre un client extern i Kafka que s'executa al Centre de control, ambdues parts han de tenir un magatzem de claus definit amb un certificat relacionat signat per una autoritat de certificació (CA) juntament amb el certificat arrel de la CA.
A més d'això, el client també ha de tenir un truststore amb el certificat arrel de la CA.
El certificat arrel de la CA és comú al corredor de Kafka i al client de Kafka.
Creació dels certificats requerits
Això es tracta a l'"Apèndix" a la pàgina 17.
Configuració SSL/TLS de Kafka Broker al Centre de control
NOTA: Aquestes instruccions s'han d'executar al servidor del Centre de control.
NOTA: Abans de continuar, heu de crear el magatzem de claus que conté el certificat SSL seguint les instruccions de l'"Apèndix" a la pàgina 17. Els camins esmentats a continuació provenen d'aquestes instruccions.
El magatzem de claus SSL és a file emmagatzemat al disc amb el file extensió .jks.
Un cop tingueu els certificats necessaris creats tant per al corredor de Kafka com per al client de Kafka, podeu continuar configurant el corredor de Kafka que s'executa al Centre de control. Necessites saber el següent:
- : El nom d'amfitrió públic del Centre de control; això ha de ser resolt i accessible pels clients de Kafka.
- : la contrasenya del magatzem de claus proporcionada en crear el certificat SSL.
- i : Aquestes són les contrasenyes que voleu establir per a l'usuari administrador i client, respectivament. Tingueu en compte que podeu afegir més usuaris, tal com s'indica a l'example.
Editeu o afegiu (amb accés sudo) les propietats següents a /etc/kafka/server.properties, inserint les variables anteriors tal com es mostra:
ADVERTIMENT: No elimineu PLAINTEXT://localhost:9092; això trencarà la funcionalitat del Centre de control ja que els serveis interns no es podran comunicar.
- …
- # Les adreces que el corredor de Kafka escolta.
- listeners=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
- # Aquests són els amfitrions anunciats a qualsevol client que es connecti.
- advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093…
- ####### CONFIG. PERSONALITZADA
- # CONFIGURACIÓ SSL
- ssl.endpoint.identification.algorithm=
ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks - ssl.keystore.password=
- ssl.key.password=
- ssl.client.auth=cap
- ssl.protocol=TLSv1.2
- # Configuració SASL
- sasl.enabled.mechanisms=PLAIN
- nom d'usuari = "administrador" \
- contrasenya=" ”\
- user_admin=" ”\
- user_client=" ”;
- # NOTA es poden afegir més usuaris amb user_ =
- # Autorització, activa les ACL
- authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=Usuari:administrador
Configuració de llistes de control d'accés (ACL)
Activació de les ACL a localhost
ADVERTÈNCIA: primer hem de configurar les ACL per a host local, de manera que el Centre de control encara pugui accedir a Kafka. Si això no es fa, les coses es trencaran.
- –authorizer kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties zookeeper.connect=localhost:2181 \
- –add –allow-principal Usuari:ANÒNIM –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 Usuari:ANÒNIM –allow-host 127.0.0.1 –tema '*'
- /usr/lib/kafka/bin/kafka-acls.sh \
- –authorizer kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties zookeeper.connect=localhost:2181 \
- –add –allow-principal Usuari:ANÒNIM –allow-host 127.0.0.1 –grup '*'
Aleshores hem d'habilitar les ACL per a l'accés extern de només lectura, de manera que els usuaris externs puguin llegir els temes paa.public.*.
### Entrades d'ACL per a usuaris anònims /usr/lib/kafka/bin/kafka-acls.sh \
NOTA: Per obtenir un control més detallat, consulteu la documentació oficial de Kafka.
- –authorizer kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties zookeeper.connect=localhost:2181 \
- –add –allow-principal Usuari:* –operació lectura –operació descriure \ –grup 'NCC'
- /usr/lib/kafka/bin/kafka-acls.sh \
- –authorizer kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties zookeeper.connect=localhost:2181 \
- –add –allow-principal Usuari:* –operació lectura –operació descriure \ –tema paa.public. –prefix de tipus de patró de recursos
Un cop fet això, heu de reiniciar els serveis:
### Entrades d'ACL per a usuaris externs /usr/lib/kafka/bin/kafka-acls.sh \
- Reiniciar els serveis sudo ncc
Per verificar que un client pot establir una connexió segura, executeu l'ordre següent en un extern
ordinador client (no al servidor del Centre de control). A continuació, PUBLIC_HOSTNAME és el nom d'amfitrió del Centre de control:
- openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep "S'admet la renegociació segura"
A la sortida de l'ordre hauríeu de veure el certificat del servidor així com el següent:
- S'admet la renegociació segura
Per assegurar-vos que els serveis interns tenen accés al servidor de Kafka, consulteu el registre següentfiles:
- /var/log/kafka/server.log
- /var/log/kafka/kafka-authorizer.log
Validació de la connectivitat del client extern
kafkacat
NOTA: Aquestes instruccions s'han d'executar en un ordinador client (no al servidor del Centre de control).
NOTA: per mostrar informació de mètriques, assegureu-vos que almenys un monitor s'està executant al Centre de control.
Per verificar i validar la connectivitat com a client extern, és possible utilitzar la utilitat kafkacat que es va instal·lar a la secció "Verificació que l'API de streaming funciona al Centre de control" a la pàgina 4.
Realitzeu els passos següents:
NOTA: A continuació, CLIENT_USER és l'usuari especificat anteriorment al file /etc/kafka/server.properties al Centre de control: és a dir, user_client i la contrasenya establerta allà.
El certificat arrel CA utilitzat per signar el certificat SSL del servidor ha d'estar present al client.
Crea un file client.properties amb el contingut següent:
- security.protocol=SASL_SSL
- ssl.ca.location={PATH_TO_CA_CERT}
- sasl.mechanisms=PLAIN
- sasl.username={CLIENT_USER}
- sasl.password={CLIENT_PASSWORD}
on
- {PATH_TO_CA_CERT} és la ubicació del certificat arrel CA utilitzat pel corredor de Kafka
- {CLIENT_USER} i {CLIENT_PASSWORD} són les credencials d'usuari del client.
Executeu l'ordre següent per veure el missatge consumit per kafkacat:
- exporta KAFKA_FQDN=
- exporteu METRICS_TOPIC=paa.public.accounts. .mètrica
- kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
on {METRICS_TOPIC} és el nom del tema de Kafka amb el prefix “paa.public.”.
NOTA: Les versions anteriors de kafkacat no proporcionen l'opció -F per llegir la configuració del client des de a file. Si utilitzeu aquesta versió, heu de proporcionar la mateixa configuració des de la línia d'ordres que es mostra a continuació.
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
Per depurar la connectivitat, podeu utilitzar l'opció -d:
Depurar les comunicacions dels consumidors
kafkacat -d consumidor -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Depura les comunicacions del corredor
kafkacat -d broker -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
Assegureu-vos de consultar la documentació de la biblioteca client de Kafka en ús, ja que les propietats poden diferir de les de client.properties.
Format del missatge
Els missatges utilitzats per als temes de mètriques i metadades es serialitzen en format de memòria intermèdia de protocol (protobuf) (vegeu developers.google.com/protocol-buffers). Els esquemes d'aquests missatges s'adhereixen al format següent:
Metrics Protobuf Schema
- sintaxi = "proto3";
- importar "google/protobuf/timestamp.proto”;
- paquet paa.streamingapi;
- opció go_package = ".;paa_streamingapi";
- mètriques del missatge {
- google.protobuf.Timestamp vegades mésamp = 1;
- mapa valors = 2;
- int32 stream_id = 3;
- }
- /**
- * Un valor mètric pot ser un nombre enter o un valor flotant.
- */
- missatge MetricValue {
- un de tipus {
- int64 int_val = 1;
- float float_val = 2;
- }
- }
Metadades Protobuf Schema
- sintaxi = "proto3";
- paquet paa.streamingapi;
- opció go_package = ".;paa_streamingapi";
- Metadades del missatge {
- int32 stream_id = 1;
- cadena stream_name = 2;
- mapa tags = 13;
- }
Client Examples
NOTA: Aquestes ordres estan pensades per executar-se en un client extern, per exempleampllegiu el vostre ordinador portàtil o similar, i no al Centre de control.
NOTA: Perquè es mostri informació de mètriques, assegureu-vos que almenys un monitor s'està executant al Centre de control.
El fitxer tarball del Centre de control inclou l'arxiu paa-streaming-api-client-examples.tar.gz (client-examples), que conté un example script de Python que mostra com utilitzar l'API de streaming.
Instal·lació i configuració del client Examples
Trobeu client-exampfitxers a la carpeta del Centre de control de Paragon Active Assurance:
- exporteu CC_VERSION=4.1.0
- cd ./paa-control-center_${CC_VERSION}
- ls paa-streaming-api-client-examples*
Per instal·lar client-exampfitxers al vostre ordinador client extern, procediu de la següent manera:
- # Crea un directori per extreure el contingut del client examples tarball
- mkdir paa-streaming-api-client-examples
- # Extraieu el contingut del client examples tarball
- tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
- # Anar al directori acabat de crear
- cd paa-streaming-api-client-examples
client-examples requereix Docker per executar-se. Les descàrregues i les instruccions d'instal·lació de Docker es poden trobar a https://docs.docker.com/engine/install.
Utilitzant el client Examples
El client-examples eines es poden executar en mode bàsic o avançat per crear examplletres de complexitat variable. En ambdós casos, també és possible executar l'exampels amb una configuració file que conté propietats addicionals per a una major personalització del costat del client.
Mode bàsic
En el mode bàsic, les mètriques i les seves metadades es transmeten per separat. Amb aquesta finalitat, el client escolta cada tema de Kafka disponible per a l'accés extern i simplement imprimeix els missatges rebuts a la consola.
Per iniciar l'execució de l'examples, executa:
- build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
on ACCOUNT_SHORTNAME és el nom curt del compte del qual voleu obtenir les mètriques.
Finalitzar l'execució de l'example, premeu Ctrl + C. (Pot haver-hi un lleuger retard abans que l'execució s'aturi perquè el client espera un esdeveniment de temps d'espera).
Mode avançat
NOTA: les mètriques només es mostren per als monitors HTTP que s'executen al Centre de control.
L'execució en mode avançat mostra la correlació entre mètriques i missatges de metadades. Això és
possible gràcies a la presència en cada missatge de mètriques d'un camp d'identificació de flux que fa referència al missatge de metadades corresponent.
Per executar l'ex. avançatamples, executa:
- build.sh run-advanced –kafka-brokers localhost:9092 –compte ACCOUNT_SHORTNAME
on ACCOUNT_SHORTNAME és el nom curt del compte del qual voleu obtenir les mètriques.
Finalitzar l'execució de l'example, premeu Ctrl + C. (Pot haver-hi un lleuger retard abans que l'execució s'aturi perquè el client espera un esdeveniment de temps d'espera).
Configuració addicional
És possible executar l'exampfitxers amb una configuració addicional del client mitjançant el -config-file opció seguida d'a file nom que conté propietats en la forma clau=valor.
- build.sh run-advanced \
- –kafka-brokers localhost:9092 \
- –compte ACCOUNT_SHORTNAME \
- -config-file client_config.properties
NOTA: Tot files a què es fa referència a l'ordre anterior s'han de localitzar al directori actual i fer referència només utilitzant camins relatius. Això s'aplica tant a -config-file argument i a totes les entrades de la configuració file que descriuen file ubicacions.
Validació de l'autenticació de client extern
Per validar l'autenticació del client des de fora del Centre de control mitjançant client-examples, realitzeu els passos següents:
Des de la carpeta del Centre de control de Paragon Active Assurance, canvieu a paa-streaming-api-client-examples carpeta:
cd paa-streaming-api-client-examples
- Copieu el certificat arrel CA ca-cert al directori actual.
- Crear un client.properties file amb el següent contingut:
security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=PLAIN
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}
on {CLIENT_USER} i {CLIENT_PASSWORD} són les credencials d'usuari del client.
Executar bàsic examples:
- exporta KAFKA_FQDN=
- build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
- –compte ACCOUNT_SHORTNAME
- -config-file propietats del client
on ACCOUNT_SHORTNAME és el nom curt del compte del qual voleu obtenir les mètriques.
Executar avançat examples:
- exporta KAFKA_FQDN=
- build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
- –compte ACCOUNT_SHORTNAME
- -config-file propietats del client
Apèndix
En aquest apèndix es descriu com crear:
- un magatzem de claus file per emmagatzemar el certificat SSL del corredor Kafka
- una botiga de confiança file per emmagatzemar el certificat arrel de l'Autoritat de certificació (CA) utilitzat per signar el certificat del corredor de Kafka.
Creació d'un certificat Kafka Broker
Creació d'un certificat mitjançant una autoritat de certificació real (recomanat)
Es recomana obtenir un certificat SSL real d'una CA de confiança.
Un cop us hàgiu decidit per una CA, copieu el seu certificat arrel CA ca-cert file al vostre propi camí tal com es mostra a continuació:
- exportar CA_PATH=~/my-ca
- mkdir ${CA_PATH}
- cp ca-cert ${CA_PATH}
Creeu la vostra pròpia autoritat de certificació
NOTA: Normalment hauríeu de tenir el vostre certificat signat per una autoritat de certificació real; vegeu el subapartat anterior. El que segueix és només un example.
Aquí creem el nostre propi certificat arrel d'Autoritat de Certificació (CA). file vàlid durant 999 dies (no recomanat en producció):
- # Creeu un directori per emmagatzemar la CA
- exportar CA_PATH=~/my-ca
- mkdir ${CA_PATH}
- # Genereu el certificat CA
- openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -dies 999
Creació del client Truststore
Ara podeu crear un truststore file que conté el ca-cert generat anteriorment. Això file serà necessari pel client de Kafka que accedirà a l'API de streaming:
- keytool -keystore kafka.client.truststore.jks \
- àlies CARoot \
- importcert -file ${CA_PATH}/ca-cert
Ara que el certificat CA es troba al magatzem de confiança, el client confiarà en qualsevol certificat signat amb ell.
Hauríeu de copiar el file kafka.client.truststore.jks a una ubicació coneguda de l'ordinador client i apunta-hi a la configuració.
Creació del magatzem de claus per a Kafka Broker
Per generar el certificat SSL del corredor de Kafka i després el magatzem de claus kafka.server.keystore.jks, procediu de la següent manera:
Generació del certificat SSL
A continuació, 999 és el nombre de dies de validesa del magatzem de claus i FQDN és el nom de domini totalment qualificat del client (nom d'amfitrió públic del node).
NOTA: És important que el FQDN coincideixi amb el nom d'amfitrió exacte que utilitzarà el client Kafka per connectar-se al Centre de control.
- sudo mkdir -p /var/ssl/private
- sudo chown -R $USER: /var/ssl/private
- cd /var/ssl/private
- exportar FQDN= keytool -keystore kafka.server.keystore.jks \
- – servidor d'àlies \
- – validesa 999 \
- – genkey -keyalg RSA -ext SAN=dns:${FQDN}
Creeu una sol·licitud de signatura de certificat i deseu-la al fitxer file anomenat certificat-server-request:
- keytool -keystore kafka.server.keystore.jks \
- – servidor d'àlies \
- – certreq \
- – file sol·licitud-cert-server
Ara hauríeu d'enviar el file cert-server-request a la vostra autoritat de certificació (CA) si n'esteu utilitzant una de real. Després retornaran el certificat signat. Ens referirem a això com a certificat-server-signed a continuació.
Signar el certificat SSL mitjançant un certificat CA creat per si mateix
NOTA: De nou, no es recomana utilitzar la vostra pròpia CA en un sistema de producció.
Signar el certificat mitjançant la CA mitjançant el file cert-server-request, que produeix el certificat signat cert-server-signed. Mirar abaix; ca-password és la contrasenya establerta en crear el certificat CA.
- cd /var/ssl/private openssl x509 -req \
- – CA ${CA_PATH}/ca-cert \
- – CAkey ${CA_PATH}/ca-key \
- – a la sol·licitud-cert-server-request \
- – fora de certificat-server signed \
- – dies 999 -CAcreateserial \
- – pass pass:{ca-password}
Importació del certificat signat al magatzem de claus
Importeu el certificat arrel ca-cert al magatzem de claus:
- keytool -keystore kafka.server.keystore.jks \
- – àlies ca-cert \
- – importar \
- – file ${CA_PATH}/ca-cert
Importeu el certificat signat anomenat cert-server-signed:
- keytool -keystore kafka.server.keystore.jks \
- – servidor d'àlies \
- – importar \
- – file signat-cert-server
El file El kafka.server.keystore.jks s'ha de copiar a una ubicació coneguda al servidor del Centre de control i, a continuació, s'ha de fer referència a /etc/kafka/server.properties.
Ús de l'API de streaming
EN AQUESTA SECCIÓ
- General | 20
- Noms dels temes de Kafka | 21
- Exampfitxers d'Ús de l'API de streaming | 21
General
L'API de streaming obté dades de prova i de monitoratge. No és possible destacar una d'aquestes categories.
L'API de transmissió no obté dades de proves basades en scripts (les representades per un rectangle en lloc d'una peça de trencaclosques a la GUI del Centre de control), com ara les proves d'activació del servei Ethernet i les proves de transparència.
Noms dels temes Kafka
Els noms dels temes de Kafka per a l'API de streaming són els següents, on %s és el nom curt del compte del Centre de control (indicat en crear el compte):
- const (
- exporterName = "kafka"
- metadataTopicTpl = “paa.public.accounts.%s.metadata” metricsTopicTpl = “paa.public.accounts.%s.metrics” )
Exampfitxers d'Ús de l'API de streaming
L'exampEls fitxers següents es troben al fitxer tarball paa-streaming-api-client-examples.tar.gz continguda dins del fitxer tarball del Centre de control.
En primer lloc, hi ha un ex bàsicample que demostra com les mètriques i les seves metadades es transmeten per separat i simplement imprimeix els missatges rebuts a la consola. Podeu executar-lo de la següent manera:
- sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
També hi ha un ex més avançatampon es correlacionen els missatges de mètriques i metadades. Utilitzeu aquesta ordre per executar-la:
- sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
Heu d'utilitzar sudo per executar ordres de Docker com les anteriors. Opcionalment, podeu seguir els passos posteriors a la instal·lació de Linux per poder executar ordres de Docker sense sudo. Per obtenir més informació, aneu a docs.docker.com/engine/install/linux-postinstall.
Juniper Networks, el logotip de Juniper Networks, Juniper i Junos són marques registrades de Juniper Networks, Inc. als Estats Units i altres països. Totes les altres marques comercials, marques de servei, marques registrades o marques de servei registrades són propietat dels seus respectius propietaris. Juniper Networks no assumeix cap responsabilitat per qualsevol inexactitud en aquest document. Juniper Networks es reserva el dret de canviar, modificar, transferir o revisar aquesta publicació sense previ avís. Copyright © 2023 Juniper Networks, Inc. Tots els drets reservats.
Documents/Recursos
![]() |
Programari de l'API de transmissió de Juniper NETWORKS [pdfGuia de l'usuari Programari API de streaming, programari API, programari |