Logo jalovce

Software Juniper NETWORKS Streaming APIJuniper-NETWORKS-Streaming-API-Software-product

Informace o produktu

Specifikace

  • Název produktu: Paragon Active Assurance
  • Verze: 4.1
  • Datum zveřejnění: 2023-03-15

Zavedení:
Tato příručka obsahuje pokyny, jak extrahovat data z Paragon Active Assurance pomocí rozhraní API pro streamování produktu. Streamovací klient a rozhraní API jsou součástí instalace Paragon Active Assurance, ale před použitím rozhraní API je vyžadována určitá konfigurace. Proces konfigurace je popsán v části „Konfigurace rozhraní API pro streamování“.

Konfigurace rozhraní API pro streamování:
Následující kroky popisují proces konfigurace rozhraní API pro streamování:

Nadview
Kafka je platforma pro streamování událostí navržená pro zachycování a ukládání dat z různých zdrojů v reálném čase. Umožňuje správu toků událostí distribuovaným, škálovatelným, odolným a bezpečným způsobem. Tato příručka se zaměřuje na konfiguraci Kafky pro využití funkce Streaming API v Paragon Active Assurance Control Center.

Terminologie
Streaming API umožňuje externím klientům získávat informace o metrikách z Kafky. Metriky shromážděné testovacími agenty během úlohy testu nebo monitorování se odesílají do služby Stream. Po zpracování služba Stream publikuje tyto metriky na Kafka spolu s dalšími metadaty.

Kafkova témata
Streaming API využívá témata Kafka k organizaci a ukládání metrik a metadat. Kafkova témata lze vytvářet a spravovat podle konkrétních požadavků.

Povolení rozhraní API pro streamování
Chcete-li povolit rozhraní Streaming API, postupujte takto:

  1. Spusťte následující příkazy na serveru Control Center pomocí sudo:
KAFKA_METRICS_ENABLED = Služby True sudo ncc povolují metriky timescaledb služby sudo ncc spouštějí metriky timescaledb restartování služeb sudo ncc

Ověření, že Streaming API funguje v Control Center:
Chcete-li ověřit, že dostáváte metriky týkající se správných témat Kafka:

  1. Nainstalujte obslužný program kafkacat pomocí následujících příkazů:
    aktualizace sudo apt-get
    sudo apt-get install kafkacat
  1. Nahraďte „můj účet“ krátkým názvem vašeho účtu v
    Řídicí centrum URL:
    export METRICS_TOPIC=paa.public.accounts.myaccount.metrics
    exportovat METADATA_TOPIC=paa.public.accounts.myaccount.metadata
  1. Spusťte následující příkaz view metriky:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
    Poznámka: Výše ​​uvedený příkaz zobrazí metriky.
  2. Na view metadata, spusťte následující příkaz:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e

Poznámka: Výše ​​uvedený příkaz zobrazí metadata, ale nebude se tak často aktualizovat.

Klient Přamples
Pro klienta exampsoubory a další informace naleznete na straně 14 uživatelské příručky.

FAQ (často kladené otázky)

  • Otázka: Co je Paragon Active Assurance?
    Odpověď: Paragon Active Assurance je produkt, který poskytuje možnosti monitorování a testování.
  • Otázka: Co je Streaming API?
    Odpověď: Streaming API je funkce v Paragon Active Assurance, která umožňuje externím klientům získávat informace o metrikách z Kafky.
  • Otázka: Jak povolím rozhraní API pro streamování?
    Odpověď: Chcete-li povolit rozhraní Streaming API, postupujte podle kroků uvedených v části „Povolení rozhraní API pro streamování“ uživatelské příručky.
  • Otázka: Jak mohu ověřit, že rozhraní Streaming API funguje?
    Odpověď: Pokyny, jak ověřit funkčnost rozhraní Streaming API, najdete v části „Ověření, zda rozhraní Streaming API funguje v Control Center“.

Zavedení

Tato příručka popisuje, jak extrahovat data z Paragon Active Assurance prostřednictvím rozhraní API pro streamování produktu.
Rozhraní API i streamovací klient jsou součástí instalace Paragon Active Assurance. Než však budete moci používat rozhraní API, je potřeba trochu konfigurace. To je popsáno v kapitole „Konfigurace rozhraní API pro streamování“ na stránce 1.

Nadview
Tato kapitola popisuje, jak nakonfigurovat rozhraní Streaming API, aby bylo možné přihlásit se k odběru zpráv metrik přes Kafka.
pr
Níže si projdeme:

  • Jak povolit Streaming API
  • Jak nakonfigurovat Kafka, aby naslouchal externím klientům
  • Jak nakonfigurovat Kafka pro používání ACL a nastavit šifrování SSL pro uvedené klienty

Co je Kafka?
Kafka je platforma pro streamování událostí, která umožňuje v reálném čase zachycovat data odeslaná z různých zdrojů událostí (senzory, databáze, mobilní zařízení) ve formě streamů událostí a také trvalé ukládání těchto streamů událostí pro pozdější vyhledávání a manipulaci.
S Kafkou je možné řídit streamování událostí end-to-end distribuovaným, vysoce škálovatelným, elastickým, chybovým a bezpečným způsobem.

POZNÁMKA: Kafka lze konfigurovat mnoha různými způsoby a byl navržen pro škálovatelnost a redundantní systémy. Tento dokument se zaměřuje pouze na to, jak jej nakonfigurovat, aby využíval funkci Streaming API, která se nachází v Paragon Active Assurance Control Center. Pro pokročilejší nastavení odkazujeme na oficiální dokumentaci Kafka: kafka.apache.org/26/documentation.html.

Terminologie

  • Kafka: Platforma pro streamování událostí.
  • Kafkovo téma: Sbírka událostí.
  • Předplatitel/spotřebitel Kafka: Komponenta odpovědná za vyhledávání událostí uložených v tématu Kafka.
  • Kafka broker: Server úložné vrstvy clusteru Kafka.
  • SSL/TLS: SSL je zabezpečený protokol vyvinutý pro bezpečné odesílání informací přes internet. TLS je nástupcem SSL, představeného v roce 1999.
  • SASL: Rámec, který poskytuje mechanismy pro ověřování uživatelů, kontrolu integrity dat a šifrování.
  • Předplatitel rozhraní Streaming API: Komponenta zodpovědná za získávání událostí uložených v tématech definovaných v Paragon Active Assurance a určená pro externí přístup.
  • Certifikační autorita: Důvěryhodná entita, která vydává a ruší certifikáty veřejného klíče.
  • Kořenový certifikát certifikační autority: Certifikát veřejného klíče, který identifikuje certifikační autoritu.

Jak funguje Streaming API
Jak již bylo zmíněno, Streaming API umožňuje externím klientům získávat informace o metrikách z Kafky.

Všechny metriky shromážděné testovacími agenty během úlohy testu nebo monitorování se odesílají do služby Stream. Po fázi zpracování služba Stream publikuje tyto metriky na Kafka spolu s dalšími metadaty.

Juniper-NETWORKS-Streaming-API-Software- (1)

Kafkova témata
Kafka má koncept témat, ke kterým jsou zveřejňována všechna data. V Paragon Active Assurance je k dispozici mnoho takových Kafkových témat; avšak pouze část z nich je určena pro externí přístup.
Každý účet Paragon Active Assurance v Control Center má dvě vyhrazená témata. Níže je ACCOUNT krátký název účtu:

  • paa.public.accounts.{ACCOUNT}.metrics
    • K tomuto tématu jsou publikovány všechny zprávy metrik pro daný účet
    • Velké množství dat
    • Vysoká frekvence aktualizací
  • paa.public.accounts.{ACCOUNT}.metadata
    • Obsahuje metadata související s daty metrik, napřample test, monitor nebo testovací agent spojený s metrikami
    • Malé množství dat
    • Nízká frekvence aktualizací

Povolení rozhraní API pro streamování

POZNÁMKA: Tyto pokyny je třeba spustit na serveru Control Center pomocí sudo.

Vzhledem k tomu, že rozhraní Streaming API přidává do Control Center určitou režii, není ve výchozím nastavení povoleno. Pro aktivaci API musíme nejprve povolit publikování metrik do Kafky v hlavní konfiguraci file:

KAFKA_METRICS_ENABLED = Pravda

VAROVÁNÍ: Povolení této funkce může ovlivnit výkon Control Center. Ujistěte se, že jste svou instanci odpovídajícím způsobem dimenzovali.

Dále, abyste povolili předávání těchto metrik správným tématům Kafka:

streaming-api: true

Chcete-li povolit a spustit služby Streaming API, spusťte:

  • Služby sudo ncc umožňují metriky timescaledb
  • služby sudo ncc spouštějí metriky timescaledb

Nakonec restartujte služby:

  • restartování služeb sudo ncc

Ověření, že Streaming API funguje v Control Center

POZNÁMKA: Tyto pokyny je třeba spustit na serveru Control Center.

Nyní si můžete ověřit, že dostáváte metriky ke správným Kafkovým tématům. Chcete-li tak učinit, nainstalujte obslužný program kafkacat:

  • aktualizace sudo apt-get
  • sudo apt-get install kafkacat

Pokud máte v Control Center spuštěný test nebo monitor, měli byste být schopni používat kafkacat k přijímání metrik a metadat o těchto tématech.
Nahraďte můj účet krátkým názvem svého účtu (toto vidíte v Ovládacím centru URL):

  • export METRICS_TOPIC=paa.public.accounts.myaccount.metrics
  • exportovat METADATA_TOPIC=paa.public.accounts.myaccount.metadata

Nyní byste měli vidět metriky spuštěním tohoto příkazu:

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

Na view metadata, spusťte následující příkaz (všimněte si, že se nebude aktualizovat tak často):

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

POZNÁMKA:
kafkacat”Klient Přamples “na stránce 14

Tím ověříme, že máme funkční rozhraní API pro streamování z Control Center. Nejpravděpodobněji však máte zájem o přístup k datům z externího klienta. Další část popisuje, jak otevřít Kafka pro externí přístup.

Otevření Kafky pro externí hostitele

POZNÁMKA: Tyto pokyny je třeba spustit na serveru Control Center.

Ve výchozím nastavení je Kafka spuštěná v Řídicím centru nakonfigurována tak, aby naslouchala pouze na localhost pro interní použití. Kafku je možné otevřít pro externí klienty úpravou nastavení Kafky.

Připojení ke Kafka: Upozornění

POZOR: Přečtěte si to prosím pozorně, protože pokud těmto pojmům nerozumíte, můžete snadno narazit na problémy s připojením k Kafkovi.

V nastavení Control Center popsaném v tomto dokumentu je pouze jeden Kafka broker.
Mějte však na paměti, že broker Kafka má fungovat jako součást clusteru Kafka, který se může skládat z mnoha brokerů Kafka.
Při připojení ke zprostředkovateli Kafka je počáteční připojení nastaveno klientem Kafka. Po tomto spojení Kafka broker zase vrátí seznam „inzerovaných posluchačů“, což je seznam jednoho nebo více Kafka brokerů.
Po obdržení tohoto seznamu se klient Kafka odpojí a poté se znovu připojí k jednomu z těchto inzerovaných posluchačů. Inzerované posluchače musí obsahovat názvy hostitelů nebo IP adresy, které jsou přístupné klientovi Kafka, jinak se klientovi nepodaří připojit.
Pokud je použito šifrování SSL, které zahrnuje certifikát SSL, který je vázán na konkrétní název hostitele, je ještě důležitější, aby klient Kafka obdržel správnou adresu, ke které se může připojit, protože jinak může být připojení odmítnuto.
Více o Kafkových posluchačích čtěte zde: www.confluent.io/blog/kafka-listeners-explained

Šifrování SSL/TLS
Abychom zajistili, že pouze důvěryhodní klienti budou mít přístup ke Kafka a Streaming API, musíme nakonfigurovat následující:

  • Autentizace: Klienti musí poskytnout uživatelské jméno a heslo prostřednictvím zabezpečeného spojení SSL/TLS mezi klientem a Kafkou.
  • Povolení: Ověření klienti mohou provádět úkoly regulované seznamy ACL.

Tady je konecview:

Juniper-NETWORKS-Streaming-API-Software- (2)

*) Ověření uživatelského jména/hesla se provádí na kanálu šifrovaném SSL

Chcete-li plně porozumět tomu, jak funguje šifrování SSL/TLS pro Kafka, nahlédněte do oficiální dokumentace: docs.confluent.io/platform/current/kafka/encryption.html

Konec certifikátu SSL/TLSview

POZNÁMKA: V této podsekci budeme používat následující terminologii:

Osvědčení: Certifikát SSL podepsaný certifikační autoritou (CA). Každý Kafka broker má jednoho.
Úložiště klíčů: Úložiště klíčů file který uchovává certifikát. Úložiště klíčů file obsahuje soukromý klíč certifikátu; proto je třeba jej bezpečně uchovávat.
Truststore: A file obsahující certifikáty důvěryhodných CA.

Chcete-li nastavit autentizaci mezi externím klientem a Kafkou spuštěnou v Control Center, musí mít obě strany definované úložiště klíčů se souvisejícím certifikátem podepsaným certifikační autoritou (CA) spolu s kořenovým certifikátem CA.
Kromě toho musí mít klient také úložiště důvěryhodnosti s kořenovým certifikátem CA.
Kořenový certifikát CA je společný pro brokera Kafka a klienta Kafka.

Vytvoření požadovaných certifikátů
To je popsáno v „Dodatek“ na stránce 17.

Konfigurace Kafka Broker SSL/TLS v Control Center

POZNÁMKA: Tyto pokyny je třeba spustit na serveru Control Center.

POZNÁMKA: Než budete pokračovat, musíte vytvořit úložiště klíčů, které obsahuje certifikát SSL, podle pokynů v části “Dodatek” na stránce 17. Cesty uvedené níže pocházejí z těchto pokynů.
Úložiště klíčů SSL je a file uloženy na disku s file rozšíření .jks.

Jakmile budete mít k dispozici požadované certifikáty vytvořené pro brokera Kafka i klienta Kafka, můžete pokračovat konfigurací brokera Kafka spuštěného v Control Center. Potřebujete vědět následující:

  • : Veřejné jméno hostitele Control Center; to musí být řešitelné a dostupné pro klienty Kafky.
  • : Heslo úložiště klíčů poskytnuté při vytváření certifikátu SSL.
  • a : Toto jsou hesla, která chcete nastavit pro uživatele admin a klienta. Všimněte si, že můžete přidat další uživatele, jak je uvedeno v příkladuample.

Upravte nebo připojte (s přístupem sudo) níže uvedené vlastnosti v /etc/kafka/server.properties a vložte výše uvedené proměnné, jak je znázorněno:

VAROVÁNÍ: Neodstraňujte PLAINTEXT://localhost:9092; to naruší funkčnost Control Center, protože interní služby nebudou schopny komunikovat.

  • # Adresy, na kterých broker Kafka poslouchá.
  • posluchači=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
  • # Toto jsou hostitelé inzerovaní zpět k libovolnému připojujícímu se klientovi.
  • advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093…
  • ####### VLASTNÍ KONFIG
  • # KONFIGURACE SSL
  • ssl.endpoint.identification.algorithm=
    ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks
  • ssl.keystore.password=
  • ssl.key.password=
  • ssl.client.auth=none
  • ssl.protocol=TLSv1.2
  • # Konfigurace SASL
  • sasl.enabled.mechanisms=PLAIN
  • uživatelské jméno = "admin" \
  • heslo =” ” \
  • user_admin=” ” \
  • user_client=” “;
  • # POZNÁMKA více uživatelů lze přidat pomocí user_ =
  • # Autorizace, zapněte ACL
  • authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=User:admin

Nastavení seznamů řízení přístupu (ACL)

Zapnutí ACL na localhost

VAROVÁNÍ: Nejprve musíme nastavit ACL pro localhost, aby samotné Control Center mělo stále přístup ke Kafkovi. Pokud se tak nestane, věci se zlomí.

  • –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 '*'

Poté musíme povolit ACL pro externí přístup pouze pro čtení, aby externí uživatelé mohli číst témata paa.public.*.

### Záznamy ACL pro anonymní uživatele /usr/lib/kafka/bin/kafka-acls.sh \

POZNÁMKA: Pro podrobnější kontrolu prosím nahlédněte do oficiální dokumentace Kafka.

  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:* –operace čtení –operace description \ –group 'NCC'
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –authorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:* –operace čtení –operace description \ –topic paa.public. –předponou typ-vzoru zdroje

Jakmile to uděláte, musíte restartovat služby:

### Záznamy ACL pro externí uživatele /usr/lib/kafka/bin/kafka-acls.sh \
  • restartování služeb sudo ncc

Chcete-li ověřit, že klient může navázat zabezpečené připojení, spusťte na externím zařízení následující příkaz
klientský počítač (nikoli na serveru Control Center). Níže, PUBLIC_HOSTNAME je název hostitele Control Center:

  • openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep “Secure Renegotiation IS podporován”

Ve výstupu příkazu byste měli vidět certifikát serveru a také následující:

  • Secure Renegotiation IS podporována

Abyste zajistili, že interním službám byl udělen přístup k serveru Kafka, zkontrolujte následující protokolfiles:

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

Ověřování připojení externího klienta

kafkacat

POZNÁMKA: Tyto pokyny je třeba spustit na klientském počítači (nikoli na serveru Control Center).
POZNÁMKA: Chcete-li zobrazit informace o metrikách, ujistěte se, že v Ovládacím centru běží alespoň jeden monitor.

Chcete-li ověřit a ověřit připojení jako externí klient, je možné použít obslužný program kafkacat, který byl nainstalován v části „Ověření, že rozhraní API pro streamování funguje v Control Center“ na straně 4.
Proveďte následující kroky:

POZNÁMKA: Níže je CLIENT_USER uživatel dříve zadaný v file /etc/kafka/server.properties v Control Center: jmenovitě user_client a heslo tam nastavené.
Kořenový certifikát CA použitý k podpisu certifikátu SSL na straně serveru musí být přítomen na klientovi.

Vytvořte a file client.properties s následujícím obsahem:

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

kde

  • {PATH_TO_CA_CERT} je umístění kořenového certifikátu CA používaného brokerem Kafka
  • {CLIENT_USER} a {CLIENT_PASSWORD} jsou přihlašovací údaje klienta.

Spusťte následující příkaz, abyste viděli zprávu spotřebovanou kafkacat:

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

kde {METRICS_TOPIC} je název Kafkova tématu s předponou „paa.public.“.

POZNÁMKA: Starší verze kafkacat neposkytují volbu -F pro čtení nastavení klienta z a file. Pokud používáte takovou verzi, musíte zadat stejná nastavení z příkazového řádku, jak je uvedeno níže.

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

Chcete-li ladit připojení, můžete použít volbu -d:

Ladění spotřebitelské komunikace
kafkacat -d spotřebitel -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Ladění komunikace zprostředkovatele
kafkacat -d broker -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

Nezapomeňte si prostudovat dokumentaci k používané klientské knihovně Kafka, protože vlastnosti se mohou lišit od vlastností v client.properties.

Formát zprávy
Zprávy používané pro metriky a témata metadat jsou serializovány ve formátu Protocol buffers (protobuf) (viz developers.google.com/protocol-buffers). Schémata těchto zpráv mají následující formát:

Schéma metriky Protobuf

  • syntaxe = "proto3";
  • importovat „google/protobuf/timestamp.proto“;
  • balíček paa.streamingapi;
  • volba go_package = ".;paa_streamingapi";
  • metriky zprávy {
  • google.protobuf.Timestamp timestamp = 1;
  • mapa hodnoty = 2;
  • int32 stream_id = 3;
  • }
  • /**
  • * Metrická hodnota může být celé číslo nebo plovoucí.
  • */
  • MetricValue zprávy {
  • jeden z typu {
  • int64 int_val = 1;
  • float float_val = 2;
  • }
  • }

Metadata Protobuf Schéma

  • syntaxe = "proto3";
  • balíček paa.streamingapi;
  • volba go_package = ".;paa_streamingapi";
  • metadata zprávy {
  • int32 stream_id = 1;
  • řetězec název_streamu = 2;
  • mapa tags = 13;
  • }

Klient Přamples

POZNÁMKA: Tyto příkazy jsou určeny ke spuštění na externím klientovi, napřample váš notebook nebo podobný, a ne v Control Center.
POZNÁMKA: Chcete-li zobrazit informace o metrikách, ujistěte se, že je v Control Center spuštěn alespoň jeden monitor.

Tarball Control Center obsahuje archiv paa-streaming-api-client-examples.tar.gz (klient-examples), který obsahuje example Python skript ukazující, jak používat Streaming API.

Instalace a konfigurace klienta Examples
Najdete klienta-exampsouborů ve složce Paragon Active Assurance Control Center:

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

Chcete-li nainstalovat klient-exampsouborů na vašem externím klientském počítači postupujte následovně:

  • # Vytvořte adresář pro extrahování obsahu klienta examples tarball
  • mkdir paa-streaming-api-client-examples
  • # Extrahujte obsah klienta examples tarball
  • tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
  • # Přejděte do nově vytvořeného adresáře
  • cd paa-streaming-api-client-examples

klient-examples vyžaduje ke spuštění Docker. Pokyny ke stažení a instalaci pro Docker naleznete na https://docs.docker.com/engine/install.

Pomocí klienta Examples
Klient-examples tools mohou běžet buď v základním, nebo pokročilém režimu pro sestavení exampsoubory různé složitosti. V obou případech je možné provozovat i examples s konfigurací file obsahující další vlastnosti pro další přizpůsobení klientské strany.

Základní režim
V základním režimu jsou metriky a jejich metadata streamovány samostatně. Za tímto účelem si klient poslechne každé Kafkovo téma dostupné pro externí přístup a přijaté zprávy jednoduše vytiskne do konzole.
Chcete-li zahájit provádění základního examples, spustit:

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

kde ACCOUNT_SHORTNAME je krátký název účtu, ze kterého chcete získat metriky.
K ukončení exekuce example stiskněte Ctrl + C. (Před zastavením provádění může nastat malé zpoždění, protože klient čeká na událost časového limitu.)

Pokročilý režim

POZNÁMKA: Metriky se zobrazují pouze pro monitory HTTP spuštěné v Control Center.

Spuštění v pokročilém režimu ukazuje korelaci mezi metrikami a zprávami metadat. Tohle je
možné díky přítomnosti pole ID toku, které odkazuje na odpovídající zprávu metadat, v každé zprávě metrik.
Chcete-li provést pokročilé examples, spustit:

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

kde ACCOUNT_SHORTNAME je krátký název účtu, ze kterého chcete získat metriky.
K ukončení exekuce example stiskněte Ctrl + C. (Před zastavením provádění může nastat malé zpoždění, protože klient čeká na událost časového limitu.)

Další nastavení
Je možné provozovat exampsouborů s další konfigurací klienta pomocí –config-file možnost následovaná a file název obsahující vlastnosti ve tvaru klíč=hodnota.

  • build.sh run-advanced \
  • –kafka-brokers localhost:9092 \
  • –účet ACCOUNT_SHORTNAME \
  • –config-file client_config.properties

POZNÁMKA: Všechny files odkazovaná ve výše uvedeném příkazu musí být umístěna v aktuálním adresáři a odkazována pouze pomocí relativních cest. To platí jak pro –config-file argument a na všechny položky v konfiguraci file které popisují file umístění.

Ověřování externího ověřování klienta
Chcete-li ověřit ověření klienta mimo Řídicí centrum pomocí client-examples, proveďte následující kroky:

Ze složky Paragon Active Assurance Control Center se přepněte na paa-streaming-api-client-exampsložka les:

cd paa-streaming-api-client-examples

  • Zkopírujte kořenový certifikát CA ca-cert do aktuálního adresáře.
  • Vytvořte client.properties file s následujícím obsahem:

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

kde {CLIENT_USER} a {CLIENT_PASSWORD} jsou přihlašovací údaje klienta.

Spustit základní examples:

  • exportovat KAFKA_FQDN=
  • build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
  • –účet ACCOUNT_SHORTNAME
  • –config-file klient.vlastnosti

kde ACCOUNT_SHORTNAME je krátký název účtu, ze kterého chcete získat metriky.

Spustit pokročilé examples:

  • exportovat KAFKA_FQDN=
  • build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
  • –účet ACCOUNT_SHORTNAME
  • –config-file klient.vlastnosti

Dodatek

V této příloze popisujeme, jak vytvořit:

  • úložiště klíčů file pro uložení SSL certifikátu Kafka brokera
  • důvěryhodný obchod file pro uložení kořenového certifikátu certifikační autority (CA) používaného k podpisu certifikátu brokera Kafka.

Vytvoření certifikátu Kafka Broker
Vytvoření certifikátu pomocí skutečné certifikační autority (doporučeno)
Doporučuje se získat skutečný certifikát SSL od důvěryhodné CA.
Jakmile se rozhodnete pro CA, zkopírujte jejich kořenový certifikát CA ca-cert file k vaší vlastní cestě, jak je uvedeno níže:

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

Vytvořte si vlastní certifikační autoritu

POZNÁMKA: Normálně byste měli mít svůj certifikát podepsaný skutečnou certifikační autoritou; viz předchozí pododdíl. To, co následuje, je jen example.

Zde vytvoříme vlastní kořenový certifikát certifikační autority (CA). file platí 999 dní (nedoporučuje se ve výrobě):

  • # Vytvořte adresář pro uložení CA
  • export CA_PATH=~/my-ca
  • mkdir ${CA_PATH}
  • # Vygenerujte certifikát CA
  • openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999

Vytvoření klientského důvěryhodného úložiště
Nyní můžete vytvořit důvěryhodné úložiště file který obsahuje výše vygenerovaný ca-cert. Tento file bude potřebovat klient Kafka, který bude přistupovat k Streaming API:

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

Nyní, když je certifikát CA v úložišti důvěryhodnosti, bude klient důvěřovat všem certifikátům, které jsou s ním podepsány.
Měli byste zkopírovat file kafka.client.truststore.jks do známého umístění na vašem klientském počítači a ukažte na něj v nastavení.

Vytvoření úložiště klíčů pro Kafka Broker
Chcete-li vygenerovat SSL certifikát Kafka brokera a poté úložiště klíčů kafka.server.keystore.jks, postupujte následovně:

Generování SSL certifikátu
Níže 999 je počet dní platnosti úložiště klíčů a FQDN je plně kvalifikovaný název domény klienta (veřejný název hostitele uzlu).

POZNÁMKA: Je důležité, aby FQDN přesně odpovídalo názvu hostitele, který klient Kafka použije pro připojení k Řídicímu centru.

  • sudo mkdir -p /var/ssl/private
  • sudo chown -R $USER: /var/ssl/private
  • cd /var/ssl/private
  • export FQDN= keytool -keystore kafka.server.keystore.jks \
  • – alias server \
  • – platnost 999 \
  • – genkey -keyalg RSA -ext SAN=dns:${FQDN}

Vytvořte žádost o podpis certifikátu a uložte ji do file pojmenovaný požadavek-cert-server:

  • keytool -keystore kafka.server.keystore.jks \
    • – alias server \
    • – certreq \
    • – file cert-server-request

Nyní byste měli odeslat file cert-server-request vaší certifikační autoritě (CA), pokud používáte skutečný. Poté vrátí podepsaný certifikát. Níže to budeme označovat jako cert-server-signed.

Podepsání certifikátu SSL pomocí certifikátu CA, který si sám vytvořil

POZNÁMKA: Opět platí, že použití vlastního CA se v produkčním systému nedoporučuje.

Podepište certifikát pomocí CA pomocí file cert-server-request, která vytvoří podepsaný certifikát cert-server-signed. Viz. níže; ca-password je heslo nastavené při vytváření certifikátu CA.

  • cd /var/ssl/private openssl x509 -req \
    • – CA ${CA_PATH}/ca-cert \
    • – CAkey ${CA_PATH}/ca-key \
    • – v požadavku cert-server \
    • – podepsán cert-server \
    • – dny 999 -CAcreatesserial \
    • – passin pass:{ca-password}

Import podepsaného certifikátu do úložiště klíčů

Importujte kořenový certifikát ca-cert do úložiště klíčů:

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

Importujte podepsaný certifikát označovaný jako cert-server-signed:

  • keytool -keystore kafka.server.keystore.jks \
    • – alias server \
    • - import \
    • – file podepsán cert-server

The file kafka.server.keystore.jks by měl být zkopírován do známého umístění na serveru Řídicího centra a poté odkazován v /etc/kafka/server.properties.

Pomocí Streaming API

V TÉTO SEKCI

  • Obecné | 20
  • Kafka Názvy témat | 21
  • Exampsoubory Používání rozhraní API pro streamování | 21

Generál
Streamovací API načítá testovací i monitorovací data. Není možné vyčlenit jednu z těchto kategorií.
Rozhraní API pro streamování nenačítá data z testů založených na skriptech (které jsou v grafickém uživatelském rozhraní Control Center reprezentovány obdélníkem místo skládačky), jako jsou testy aktivace služby Ethernet a testy transparentnosti.

Názvy témat Kafka
Názvy témat Kafka pro streamovací API jsou následující, kde %s je krátký název účtu Control Center (uveden při vytváření účtu):

  • konst (
  • jméno vývozce = „kafka“
  • metadataTopicTpl = “paa.public.accounts.%s.metadata” metricsTopicTpl = “paa.public.accounts.%s.metrics” )

Exampo používání Streaming API
Bývalýampsoubory, které následují, se nacházejí v archivu paa-streaming-api-client-examples.tar.gz obsažený v tarballu Control Center.
Za prvé, existuje základní example demonstrující, jak jsou metriky a jejich metadata streamovány samostatně, a jednoduše tisknout přijaté zprávy do konzole. Můžete jej spustit následovně:

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

Existuje i pokročilejší example kde jsou metriky a zprávy metadat korelovány. Ke spuštění použijte tento příkaz:

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

Ke spuštění příkazů Docker, jako jsou ty výše, musíte použít sudo. Volitelně můžete postupovat podle kroků po instalaci systému Linux, abyste mohli spouštět příkazy Docker bez sudo. Podrobnosti naleznete na docs.docker.com/engine/install/linux-postinstall.

Juniper Networks, logo Juniper Networks, Juniper a Junos jsou registrované ochranné známky společnosti Juniper Networks, Inc. ve Spojených státech a dalších zemích. Všechny ostatní ochranné známky, servisní známky, registrované známky nebo registrované servisní známky jsou majetkem příslušných vlastníků. Juniper Networks nepřebírá žádnou odpovědnost za jakékoli nepřesnosti v tomto dokumentu. Juniper Networks si vyhrazuje právo změnit, upravit, převést nebo jinak revidovat tuto publikaci bez upozornění. Copyright © 2023 Juniper Networks, Inc. Všechna práva vyhrazena.

Dokumenty / zdroje

Software Juniper NETWORKS Streaming API [pdfUživatelská příručka
Streamovací software API, software API, software

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *