주니퍼 NETWORKS 스트리밍 API 소프트웨어
제품 정보
명세서
- 제품명: Paragon Active Assurance
- 버전: 4.1
- 발행일: 2023년 03월 15일
소개:
이 가이드는 제품의 스트리밍 API를 사용하여 Paragon Active Assurance에서 데이터를 추출하는 방법에 대한 지침을 제공합니다. 스트리밍 클라이언트와 API는 Paragon Active Assurance 설치에 포함되어 있지만 API를 사용하기 전에 일부 구성이 필요합니다. 구성 프로세스는 "스트리밍 API 구성" 섹션에서 다룹니다.
스트리밍 API 구성:
다음 단계에서는 스트리밍 API를 구성하는 프로세스를 간략하게 설명합니다.
위에view
Kafka는 다양한 소스의 데이터를 실시간으로 캡처하고 저장하도록 설계된 이벤트 스트리밍 플랫폼입니다. 분산되고 확장 가능하며 내결함성이 있고 안전한 방식으로 이벤트 스트림을 관리할 수 있습니다. 이 가이드에서는 Paragon Active Assurance Control Center의 스트리밍 API 기능을 활용하도록 Kafka를 구성하는 데 중점을 둡니다.
술어
Streaming API를 사용하면 외부 클라이언트가 Kafka에서 메트릭 정보를 검색할 수 있습니다. 테스트 또는 모니터링 작업 중에 테스트 에이전트가 수집한 지표는 Stream 서비스로 전송됩니다. 처리 후 Stream 서비스는 추가 메타데이터와 함께 이러한 메트릭을 Kafka에 게시합니다.
Streaming API는 Kafka 주제를 활용하여 측정항목과 메타데이터를 구성하고 저장합니다. Kafka 주제는 특정 요구 사항에 따라 생성 및 관리될 수 있습니다.
스트리밍 API 활성화
스트리밍 API를 활성화하려면 다음 단계를 따르세요.
- sudo를 사용하여 제어 센터 서버에서 다음 명령을 실행합니다.
KAFKA_METRICS_ENABLED = 참 sudo ncc 서비스는 timescaledb 메트릭을 활성화합니다. sudo ncc 서비스는 timescaledb 메트릭을 시작합니다. sudo ncc 서비스는 다시 시작합니다.
스트리밍 API가 제어 센터에서 작동하는지 확인:
올바른 Kafka 주제에 대한 측정항목을 수신하고 있는지 확인하려면 다음 안내를 따르세요.
- 다음 명령을 사용하여 kafkacat 유틸리티를 설치합니다.
sudo apt-get 업데이트
sudo apt-get 설치 kafkacat
- "myaccount"를 계정의 짧은 이름으로 바꾸십시오.
제어 센터 URL:
METRICS_TOPIC=paa.public.accounts.myaccount.metrics 내보내기
METADATA_TOPIC=paa.public.accounts.myaccount.metadata 내보내기
- 다음 명령을 실행하세요. view 메트릭:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
메모: 위 명령은 측정항목을 표시합니다. - 에게 view 메타데이터인 경우 다음 명령을 실행합니다.
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
메모: 위 명령은 메타데이터를 표시하지만 자주 업데이트되지는 않습니다.
전 클라이언트amp레
전 고객의 경우amp파일 및 자세한 내용은 사용 설명서 14페이지를 참조하세요.
FAQ (자주 묻는 질문)
- Q: Paragon Active Assurance란 무엇입니까?
A: Paragon Active Assurance는 모니터링 및 테스트 기능을 제공하는 제품입니다. - Q: 스트리밍 API란 무엇입니까?
A: Streaming API는 외부 클라이언트가 Kafka에서 메트릭 정보를 검색할 수 있도록 하는 Paragon Active Assurance의 기능입니다. - Q: 스트리밍 API를 활성화하려면 어떻게 해야 합니까?
A: 스트리밍 API를 활성화하려면 사용자 매뉴얼의 "스트리밍 API 활성화" 섹션에 설명된 단계를 따르십시오. - Q: 스트리밍 API가 작동하는지 어떻게 확인할 수 있나요?
A: 스트리밍 API 기능을 확인하는 방법에 대한 지침은 "제어 센터에서 스트리밍 API가 작동하는지 확인" 섹션을 참조하세요.
소개
이 가이드는 제품의 스트리밍 API를 통해 Paragon Active Assurance에서 데이터를 추출하는 방법을 설명합니다.
API와 스트리밍 클라이언트는 Paragon Active Assurance 설치에 포함되어 있습니다. 그러나 API를 사용하려면 약간의 구성이 필요합니다. 이에 대한 내용은 1페이지의 "스트리밍 API 구성" 장에서 다룹니다.
위에view
이 장에서는 Kafka를 통해 메트릭 메시지를 구독할 수 있도록 Streaming API를 구성하는 방법을 설명합니다.
pr
아래에서 살펴보겠습니다.
- 스트리밍 API를 활성화하는 방법
- 외부 클라이언트를 수신하도록 Kafka를 구성하는 방법
- ACL을 사용하도록 Kafka를 구성하고 해당 클라이언트에 대해 SSL 암호화를 설정하는 방법
카프카란?
Kafka는 다양한 이벤트 소스(센서, 데이터베이스, 모바일 장치)에서 이벤트 스트림 형태로 전송된 데이터를 실시간으로 캡처할 수 있을 뿐만 아니라 나중에 검색 및 조작할 수 있도록 이러한 이벤트 스트림을 지속적으로 저장할 수 있는 이벤트 스트리밍 플랫폼입니다.
Kafka를 사용하면 분산되고 확장성이 뛰어나고 탄력적이며 내결함성이 있고 안전한 방식으로 종단 간 이벤트 스트리밍을 관리할 수 있습니다.
메모: Kafka는 다양한 방식으로 구성할 수 있으며 확장성과 중복 시스템을 위해 설계되었습니다. 이 문서에서는 Paragon Active Assurance Control Center에 있는 스트리밍 API 기능을 사용하도록 구성하는 방법에만 중점을 둡니다. 고급 설정에 대해서는 공식 Kafka 문서(kafka.apache.org/26/documentation.html)를 참조하세요.
술어
- Kafka: 이벤트 스트리밍 플랫폼.
- Kafka 주제: 이벤트 모음.
- Kafka 구독자/소비자: Kafka 주제에 저장된 이벤트 검색을 담당하는 구성 요소입니다.
- Kafka 브로커: Kafka 클러스터의 스토리지 계층 서버입니다.
- SSL/TLS: SSL은 인터넷을 통해 정보를 안전하게 전송하기 위해 개발된 보안 프로토콜입니다. TLS는 1999년에 도입된 SSL의 후속 제품입니다.
- SASL: 사용자 인증, 데이터 무결성 검사 및 암호화를 위한 메커니즘을 제공하는 프레임워크입니다.
- 스트리밍 API 가입자: Paragon Active Assurance에 정의되고 외부 액세스를 위한 주제에 저장된 이벤트 검색을 담당하는 구성 요소입니다.
- 인증 기관: 공개 키 인증서를 발급하고 취소하는 신뢰할 수 있는 엔터티입니다.
- 인증 기관 루트 인증서: 인증 기관을 식별하는 공개 키 인증서입니다.
스트리밍 API 작동 방식
앞서 언급한 것처럼 Streaming API를 사용하면 외부 클라이언트가 Kafka에서 메트릭에 대한 정보를 검색할 수 있습니다.
테스트 또는 모니터링 작업 중에 테스트 에이전트가 수집한 모든 지표는 Stream 서비스로 전송됩니다. 처리 단계 후 Stream 서비스는 추가 메타데이터와 함께 Kafka에 해당 메트릭을 게시합니다.
카프카 주제
Kafka에는 모든 데이터가 게시되는 주제라는 개념이 있습니다. Paragon Active Assurance에는 이러한 Kafka 주제가 많이 있습니다. 그러나 이들 중 일부만 외부 액세스용입니다.
제어 센터의 각 Paragon Active Assurance 계정에는 두 가지 전용 항목이 있습니다. 아래에서 ACCOUNT는 계정 짧은 이름입니다.
- paa.public.accounts.{ACCOUNT}.metrics
- 지정된 계정에 대한 모든 메트릭 메시지가 이 주제에 게시됩니다.
- 많은 양의 데이터
- 높은 업데이트 빈도
- paa.public.accounts.{ACCOUNT}.metadata
- 예를 들어 메트릭 데이터와 관련된 메타데이터를 포함합니다.amp메트릭과 관련된 테스트, 모니터 또는 테스트 에이전트
- 소량의 데이터
- 낮은 업데이트 빈도
스트리밍 API 활성화
메모: 이 지침은 sudo를 사용하여 제어 센터 서버에서 실행됩니다.
스트리밍 API는 제어 센터에 약간의 오버헤드를 추가하므로 기본적으로 활성화되어 있지 않습니다. API를 활성화하려면 먼저 기본 구성에서 Kafka에 메트릭 게시를 활성화해야 합니다. file:
KAFKA_METRICS_ENABLED = 참
경고: 이 기능을 활성화하면 제어 센터 성능에 영향을 미칠 수 있습니다. 그에 따라 인스턴스의 크기를 지정했는지 확인하십시오.
다음으로 이러한 메트릭을 올바른 Kafka 주제로 전달할 수 있도록 하려면 다음을 수행하십시오.
스트리밍 API: true
Streaming API 서비스를 활성화하고 시작하려면 다음을 실행합니다.
- sudo ncc 서비스는 timescaledb 측정항목을 활성화합니다.
- sudo ncc 서비스는 timescaledb 측정항목을 시작합니다.
마지막으로 서비스를 다시 시작합니다.
- sudo ncc 서비스 재시작
스트리밍 API가 제어 센터에서 작동하는지 확인
메모: 이러한 지침은 제어 센터 서버에서 실행됩니다.
이제 올바른 Kafka 주제에 대한 지표를 수신하고 있는지 확인할 수 있습니다. 이렇게 하려면 kafkacat 유틸리티를 설치합니다.
- sudo apt-get 업데이트
- sudo apt-get 설치 kafkacat
제어 센터에서 실행 중인 테스트 또는 모니터가 있는 경우 kafkacat을 사용하여 이러한 주제에 대한 메트릭 및 메타데이터를 수신할 수 있어야 합니다.
myaccount를 계정의 짧은 이름으로 바꿉니다(제어 센터에 표시되는 이름입니다. URL):
- METRICS_TOPIC=paa.public.accounts.myaccount.metrics 내보내기
- METADATA_TOPIC=paa.public.accounts.myaccount.metadata 내보내기
이제 다음 명령을 실행하여 메트릭을 볼 수 있습니다.
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
에게 view 다음 명령을 실행합니다(자주 업데이트되지 않음).
- kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
메모:
kafkacat”클라이언트 Examp14페이지의 레”
이를 통해 제어 센터 내에서 작동하는 Streaming API가 있는지 확인합니다. 그러나 대신 외부 클라이언트에서 데이터에 액세스하는 데 관심이 있을 가능성이 큽니다. 다음 섹션에서는 외부 액세스를 위해 Kafka를 여는 방법을 설명합니다.
외부 호스트를 위해 Kafka 개방
메모: 이러한 지침은 제어 센터 서버에서 실행됩니다.
기본적으로 제어 센터에서 실행되는 Kafka는 내부 사용을 위해 localhost에서만 수신 대기하도록 구성됩니다. Kafka 설정을 수정하여 외부 클라이언트용으로 Kafka를 열 수 있습니다.
Kafka에 연결: 주의 사항
주의: 이러한 개념을 이해하지 못한 경우 Kafka와 연결 문제가 발생하기 쉬우므로 이 내용을 주의 깊게 읽으십시오.
이 문서에 설명된 제어 센터 설정에는 Kafka 브로커가 하나만 있습니다.
그러나 Kafka 브로커는 많은 Kafka 브로커로 구성될 수 있는 Kafka 클러스터의 일부로 실행됩니다.
Kafka 브로커에 연결할 때 Kafka 클라이언트에서 초기 연결을 설정합니다. 이 연결을 통해 Kafka 브로커는 하나 이상의 Kafka 브로커 목록인 "광고된 리스너" 목록을 반환합니다.
이 목록을 수신하면 Kafka 클라이언트는 연결을 끊은 다음 광고된 리스너 중 하나에 다시 연결합니다. 알려진 리스너는 Kafka 클라이언트에 액세스할 수 있는 호스트 이름 또는 IP 주소를 포함해야 합니다. 그렇지 않으면 클라이언트가 연결에 실패합니다.
특정 호스트 이름에 연결된 SSL 인증서와 관련하여 SSL 암호화를 사용하는 경우 Kafka 클라이언트가 연결할 올바른 주소를 받는 것이 훨씬 더 중요합니다. 그렇지 않으면 연결이 거부될 수 있기 때문입니다.
여기에서 Kafka 리스너에 대해 자세히 알아보세요. www.confluent.io/blog/kafka-listeners-explained
SSL/TLS 암호화
신뢰할 수 있는 클라이언트만 Kafka 및 스트리밍 API에 액세스할 수 있도록 하려면 다음을 구성해야 합니다.
- 입증: 클라이언트는 클라이언트와 Kafka 간의 SSL/TLS 보안 연결을 통해 사용자 이름과 비밀번호를 제공해야 합니다.
- 권한 부여: 인증된 클라이언트는 ACL에 의해 규제되는 작업을 수행할 수 있습니다.
다음은 오버입니다view:
*) SSL 암호화 채널에서 수행되는 사용자 이름/암호 인증
Kafka에서 SSL/TLS 암호화가 작동하는 방식을 완전히 이해하려면 공식 문서 docs.confluent.io/platform/current/kafka/encryption.html을 참조하세요.
SSL/TLS 인증서 오버view
메모: 이 하위 섹션에서는 다음 용어를 사용합니다.
자격증: CA(인증 기관)에서 서명한 SSL 인증서입니다. 각 Kafka 브로커에는 하나가 있습니다.
키스토어: 키 저장소 file 인증서를 저장합니다. 키 저장소 file 인증서의 개인 키를 포함합니다. 따라서 안전하게 보관해야 합니다.
트러스트스토어: 아 file 신뢰할 수 있는 CA 인증서를 포함합니다.
외부 클라이언트와 제어 센터에서 실행 중인 Kafka 간에 인증을 설정하려면 CA 루트 인증서와 함께 인증 기관(CA)에서 서명한 관련 인증서로 정의된 키 저장소가 양측에 있어야 합니다.
이 외에도 클라이언트에는 CA 루트 인증서가 있는 신뢰 저장소도 있어야 합니다.
CA 루트 인증서는 Kafka 브로커와 Kafka 클라이언트에 공통입니다.
필수 인증서 생성
이것은 17페이지의 "부록"에서 다룹니다.
제어 센터의 Kafka Broker SSL/TLS 구성
메모: 이러한 지침은 제어 센터 서버에서 실행됩니다.
메모: 계속하기 전에 17페이지의 "부록"의 지침에 따라 SSL 인증서가 포함된 키 저장소를 생성해야 합니다. 아래 언급된 경로는 이러한 지침에서 나옵니다.
SSL 키 저장소는 file 와 함께 디스크에 저장 file 확장자 .jks.
Kafka 브로커와 Kafka 클라이언트 모두에 대해 생성된 필수 인증서가 있으면 제어 센터에서 실행 중인 Kafka 브로커를 구성하여 계속할 수 있습니다. 다음 사항을 알아야 합니다.
- : Control Center의 공용 호스트 이름입니다. 이는 Kafka 클라이언트가 해결하고 액세스할 수 있어야 합니다.
- : SSL 인증서를 생성할 때 제공되는 키 저장소 비밀번호입니다.
- 그리고 : 관리자 및 클라이언트 사용자에 대해 각각 설정하려는 비밀번호입니다. 예시에 표시된 대로 더 많은 사용자를 추가할 수 있습니다.amp르.
/etc/kafka/server.properties에서 아래 속성을 편집하거나 추가(sudo 액세스 사용)하여 표시된 대로 위의 변수를 삽입합니다.
경고: PLAINTEXT://localhost:9092를 제거하지 마십시오. 내부 서비스가 통신할 수 없으므로 제어 센터 기능이 중단됩니다.
- …
- # Kafka 브로커가 수신 대기하는 주소입니다.
- 청취자=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
- # 이들은 클라이언트 연결에 다시 알려진 호스트입니다.
- Advertising.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093 …
- ####### 커스텀 구성
- # SSL 구성
- ssl.endpoint.identification.algorithm=
ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks - ssl.keystore.password=
- ssl.key.password=
- ssl.client.auth=없음
- ssl.protocol=TLSv1.2
- # SASL 구성
- sasl.enabled.mechanisms=일반
- 사용자 이름=”admin” \
- 비밀번호 =” ” \
- 사용자_관리자=” ” \
- 사용자_클라이언트=” ";
- # 참고 user_를 사용하면 더 많은 사용자를 추가할 수 있습니다. =
- # 승인, ACL 켜기
- Authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=사용자:관리자
액세스 제어 목록(ACL) 설정
localhost에서 ACL 켜기
경고: 제어 센터 자체가 여전히 Kafka에 액세스할 수 있도록 먼저 localhost에 대한 ACL을 설정해야 합니다. 이것이 완료되지 않으면 상황이 깨질 것입니다.
- –인증자 kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –추가 –allow-principal 사용자:ANONYMOUS –allow-host 127.0.0.1 –cluster
- /usr/lib/kafka/bin/kafka-acls.sh \
- –인증자 kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal 사용자:ANONYMOUS –allow-host 127.0.0.1 –topic '*'
- /usr/lib/kafka/bin/kafka-acls.sh \
- –인증자 kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal 사용자:ANONYMOUS –allow-host 127.0.0.1 –group '*'
그런 다음 외부 사용자가 paa.public.* 항목을 읽을 수 있도록 외부 읽기 전용 액세스에 대해 ACL을 활성화해야 합니다.
### 익명 사용자에 대한 ACL 항목 /usr/lib/kafka/bin/kafka-acls.sh \
메모: 보다 세밀하게 제어하려면 Kafka 공식 문서를 참고하세요.
- –인증자 kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal 사용자:* –작업 읽기 –작업 설명 \ –group 'NCC'
- /usr/lib/kafka/bin/kafka-acls.sh \
- –인증자 kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal 사용자:* –작업 읽기 –작업 설명 \ –topic paa.public. –resource-pattern-type 접두사가 붙음
이 작업이 완료되면 서비스를 다시 시작해야 합니다.
### 외부 사용자에 대한 ACL 항목 /usr/lib/kafka/bin/kafka-acls.sh \
- sudo ncc 서비스 재시작
클라이언트가 보안 연결을 설정할 수 있는지 확인하려면 외부에서 다음 명령을 실행하세요.
클라이언트 컴퓨터(제어 센터 서버가 아님) 아래에서 PUBLIC_HOSTNAME은 제어 센터 호스트 이름입니다.
- openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep "보안 재협상 IS 지원됨"
명령 출력에는 서버 인증서와 다음이 표시되어야 합니다.
- 보안 재협상 IS 지원
내부 서비스에 Kafka 서버에 대한 액세스 권한이 부여되었는지 확인하려면 다음 로그를 확인하십시오.files:
- /var/log/kafka/server.log
- /var/log/kafka/kafka-authorizer.log
외부 클라이언트 연결 확인
카프카캣
메모: 이 지침은 제어 센터 서버가 아닌 클라이언트 컴퓨터에서 실행됩니다.
메모: 메트릭 정보를 표시하려면 제어 센터에서 하나 이상의 모니터가 실행되고 있는지 확인하십시오.
외부 클라이언트로 연결을 확인하고 유효성을 검사하려면 4페이지의 "스트리밍 API가 제어 센터에서 작동하는지 확인" 섹션에 설치된 kafkacat 유틸리티를 사용할 수 있습니다.
다음 단계를 수행하세요.
메모: 아래에서 CLIENT_USER는 이전에 지정한 사용자입니다. file 제어 센터의 /etc/kafka/server.properties: 즉, user_client 및 여기에 설정된 비밀번호입니다.
서버 측 SSL 인증서에 서명하는 데 사용되는 CA 루트 인증서가 클라이언트에 있어야 합니다.
생성하다 file 다음 콘텐츠가 포함된 client.properties:
- security.protocol=SASL_SSL
- ssl.ca.location={PATH_TO_CA_CERT}
- sasl.mechanisms=일반
- sasl.username={CLIENT_USER}
- sasl.password={CLIENT_PASSWORD}
어디
- {PATH_TO_CA_CERT}는 Kafka 브로커에서 사용하는 CA 루트 인증서의 위치입니다.
- {CLIENT_USER} 및 {CLIENT_PASSWORD}는 클라이언트의 사용자 자격 증명입니다.
kafkacat에서 소비한 메시지를 보려면 다음 명령을 실행하십시오.
- 내보내기 KAFKA_FQDN=
- 수출 METRICS_TOPIC=paa.public.accounts. .메트릭
- kafkacat -b ${KAFKA_FQDN}:9093 -F 클라이언트.속성 -t ${METRICS_TOPIC} -C -e
여기서 {METRICS_TOPIC}은 접두사가 "paa.public."인 Kafka 주제의 이름입니다.
메모: 이전 버전의 kafkacat은 클라이언트 설정을 읽기 위한 -F 옵션을 제공하지 않습니다. file. 이러한 버전을 사용하는 경우 아래와 같이 명령줄에서 동일한 설정을 제공해야 합니다.
kafkacat -b ${KAFKA_FQDN}:9093 \
- X security.protocol=SASL_SSL \
- X ssl.ca.location={PATH_TO_CA_CERT} \
- X sasl.mechanisms=일반 \
- X sasl.username={CLIENT_USER} \
- X sasl.password={CLIENT_PASSWORD} \
- t ${METRICS_TOPIC} -C -e
연결을 디버그하려면 -d 옵션을 사용할 수 있습니다.
소비자 커뮤니케이션 디버그
kafkacat -d 소비자 -b ${KAFKA_FQDN}:9093 -F 클라이언트.속성 -t ${METRICS_TOPIC} -C -e
# 디버그 브로커 통신
kafkacat -d 브로커 -b ${KAFKA_FQDN}:9093 -F 클라이언트.속성 -t ${METRICS_TOPIC} -C -e
속성이 client.properties의 속성과 다를 수 있으므로 사용 중인 Kafka 클라이언트 라이브러리에 대한 설명서를 참조하십시오.
메시지 형식
메트릭 및 메타데이터 항목에 사용되는 메시지는 프로토콜 버퍼(protobuf) 형식으로 직렬화됩니다(참조: developer.google.com/protocol-buffers). 이러한 메시지의 스키마는 다음 형식을 따릅니다.
메트릭 Protobuf 스키마
- 구문 = "proto3";
- "google/protobuf/timest 가져오기amp.프로토”;
- 패키지 paa.streamingapi;
- 옵션 go_package = “.;paa_streamingapi”;
- 메시지 측정항목 {
- google.protobuf.Timestamp 가장 빠른amp = 1;
- 지도 값 = 2;
- int32 stream_id = 3;
- }
- /**
- * 측정항목 값은 정수 또는 부동 소수점일 수 있습니다.
- */
- 메시지 측정값 {
- 유형 중 하나 {
- int64 int_val = 1;
- float float_val = 2;
- }
- }
메타데이터 Protobuf 스키마
- 구문 = "proto3";
- 패키지 paa.streamingapi;
- 옵션 go_package = “.;paa_streamingapi”;
- 메시지 메타데이터 {
- int32 stream_id = 1;
- 문자열 stream_name = 2;
- 지도 tags = 13;
- }
전 클라이언트amp레
메모: 이 명령은 예를 들어 외부 클라이언트에서 실행하기 위한 것입니다.amp제어 센터가 아닌 랩탑 또는 이와 유사한 것입니다.
메모: 메트릭 정보를 표시하려면 제어 센터에서 하나 이상의 모니터가 실행 중인지 확인하십시오.
제어 센터 tarball에는 아카이브 paa-streaming-api-client-ex가 포함되어 있습니다.amples.tar.gz(클라이언트-examples), 여기에는 ex가 포함되어 있습니다.ampStreaming API 사용 방법을 보여주는 Python 스크립트.
클라이언트 Ex 설치 및 구성amp레
당신은 client-ex를 찾습니다.ampParagon Active Assurance Control Center 폴더의 파일:
- 내보내기 CC_VERSION=4.1.0
- CD ./paa-control-center_${CC_VERSION}
- ls paa-스트리밍-api-클라이언트-examp레*
client-ex를 설치하려면amp외부 클라이언트 컴퓨터에 파일을 설치하려면 다음과 같이 진행하십시오.
- # 클라이언트 ex의 내용을 추출하기 위한 디렉토리 생성amp레 타르볼
- mkdir paa-streaming-api-client-examp레
- # 클라이언트 ex의 내용 추출amp레 타르볼
- tar xzf paa-스트리밍-api-클라이언트-examples.tar.gz -C paa-streaming-api-client-examp레
- # 새로 생성된 디렉토리로 이동
- CD PAA-스트리밍-API-클라이언트-EXamp레
클라이언트-전amp파일을 실행하려면 Docker가 필요합니다. Docker에 대한 다운로드 및 설치 지침은 다음에서 찾을 수 있습니다. https://docs.docker.com/engine/install.
클라이언트 Ex 사용amp레
클라이언트-examp파일 도구는 기본 또는 고급 모드에서 실행하여 ex를 빌드할 수 있습니다.amp다양한 복잡성의 파일. 두 경우 모두 ex를 실행할 수도 있습니다.amp구성이 있는 파일 file 클라이언트 측의 추가 사용자 지정을 위한 추가 속성을 포함합니다.
기본 모드
기본 모드에서는 지표와 해당 메타데이터가 별도로 스트리밍됩니다. 이를 위해 클라이언트는 외부 액세스가 가능한 각 Kafka 주제를 수신하고 수신된 메시지를 콘솔에 인쇄합니다.
기본 ex 실행을 시작하려면amp레, 실행:
- build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
여기서 ACCOUNT_SHORTNAME은 메트릭을 가져오려는 계정의 짧은 이름입니다.
ex의 실행을 종료하려면amp파일에서 Ctrl + C를 누릅니다. (클라이언트가 시간 초과 이벤트를 기다리기 때문에 실행이 중지되기 전에 약간의 지연이 있을 수 있습니다.)
고급 모드
메모: 메트릭은 제어 센터에서 실행 중인 HTTP 모니터에 대해서만 표시됩니다.
고급 모드에서 실행하면 메트릭과 메타데이터 메시지 간의 상관 관계가 표시됩니다. 이것은
해당 메타데이터 메시지를 참조하는 스트림 ID 필드의 각 메트릭 메시지에 존재하기 때문에 가능합니다.
고급 ex를 실행하려면amp레, 실행:
- build.sh 실행-고급 –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
여기서 ACCOUNT_SHORTNAME은 메트릭을 가져오려는 계정의 짧은 이름입니다.
ex의 실행을 종료하려면amp파일에서 Ctrl + C를 누릅니다. (클라이언트가 시간 초과 이벤트를 기다리기 때문에 실행이 중지되기 전에 약간의 지연이 있을 수 있습니다.)
추가 설정
ex를 실행할 수 있습니다.amp-config-를 사용하여 클라이언트의 추가 구성이 있는 파일file 옵션 다음에 file key=value 형식의 속성을 포함하는 이름입니다.
- build.sh 고급 실행 \
- –kafka-brokers localhost:9092 \
- –계정 ACCOUNT_SHORTNAME \
- –구성-file 클라이언트_구성.속성
메모: 모두 file위 명령에서 참조하는 s는 현재 디렉토리에 있어야 하며 상대 경로만 사용하여 참조해야 합니다. 이것은 –config-에 모두 적용됩니다.file 인수 및 구성의 모든 항목 file 설명하는 file 위치.
외부 클라이언트 인증 확인
client-ex를 사용하여 제어 센터 외부에서 클라이언트 인증을 확인하려면amp파일에서 다음 단계를 수행하십시오.
Paragon Active Assurance Control Center 폴더에서 paa-streaming-api-client-ex로 전환합니다.amp파일 폴더:
CD PAA-스트리밍-API-클라이언트-EXamp레
- CA 루트 인증서 ca-cert를 현재 디렉터리에 복사합니다.
- client.properties 만들기 file 다음 내용이 포함됩니다:
security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=일반
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}
여기서 {CLIENT_USER} 및 {CLIENT_PASSWORD}는 클라이언트의 사용자 자격 증명입니다.
기본 ex 실행amp레:
- 내보내기 KAFKA_FQDN=
- build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
- – 계정 ACCOUNT_SHORTNAME
- –구성-file 클라이언트.속성
여기서 ACCOUNT_SHORTNAME은 메트릭을 가져오려는 계정의 짧은 이름입니다.
고급 실행amp레:
- 내보내기 KAFKA_FQDN=
- build.sh 실행-고급 –kafka-brokers ${KAFKA_FQDN}:9093 \
- – 계정 ACCOUNT_SHORTNAME
- –구성-file 클라이언트.속성
충수
이 부록에서는 다음을 생성하는 방법을 설명합니다.
- 키 저장소 file Kafka 브로커 SSL 인증서 저장용
- 신뢰 저장소 file Kafka 브로커 인증서에 서명하는 데 사용되는 인증 기관(CA) 루트 인증서를 저장합니다.
Kafka 브로커 인증서 생성
실제 인증 기관을 사용하여 인증서 생성(권장)
신뢰할 수 있는 CA에서 실제 SSL 인증서를 받는 것이 좋습니다.
CA를 결정했으면 해당 CA 루트 인증서 ca-cert를 복사합니다. file 아래와 같이 자신의 경로로
- CA_PATH=~/my-ca 내보내기
- mkdir ${CA_PATH}
- cp ca-cert ${CA_PATH}
나만의 인증 기관 만들기
메모: 일반적으로 실제 인증 기관에서 서명한 인증서가 있어야 합니다. 이전 하위 섹션을 참조하십시오. 다음은 전직입니다.amp르.
여기에서 자체 인증 기관(CA) 루트 인증서를 생성합니다. file 999일 동안 유효(프로덕션에서는 권장되지 않음):
- # CA를 저장할 디렉터리를 만듭니다.
- CA_PATH=~/my-ca 내보내기
- mkdir ${CA_PATH}
- # CA 인증서 생성
- openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999
클라이언트 신뢰 저장소 생성
이제 신뢰 저장소를 만들 수 있습니다. file 위에서 생성된 ca-cert가 포함된 파일입니다. 이것 file 스트리밍 API에 액세스할 Kafka 클라이언트에 필요합니다.
- keytool -keystore kafka.client.truststore.jks \
- 별칭 CARroot \
- importcert -file ${CA_PATH}/ca-cert
이제 CA 인증서가 신뢰 저장소에 있으므로 클라이언트는 서명된 모든 인증서를 신뢰합니다.
다음을 복사해야 합니다. file kafka.client.truststore.jks를 클라이언트 컴퓨터의 알려진 위치로 복사하고 설정에서 이를 가리킵니다.
Kafka Broker용 키 저장소 생성
Kafka 브로커 SSL 인증서를 생성한 다음 키 저장소 kafka.server.keystore.jks를 생성하려면 다음과 같이 진행하십시오.
SSL 인증서 생성
아래에서 999는 키 저장소의 유효 일수이고 FQDN은 클라이언트의 정규화된 도메인 이름(노드의 공용 호스트 이름)입니다.
메모: FQDN이 Kafka 클라이언트가 제어 센터에 연결하는 데 사용할 정확한 호스트 이름과 일치하는 것이 중요합니다.
- sudo mkdir -p /var/ssl/private
- sudo chown -R $USER: /var/ssl/private
- CD /var/ssl/private
- FQDN 내보내기= keytool -keystore kafka.server.keystore.jks \
- – 별칭 서버 \
- – 유효기간 999 \
- – genkey -keyalg RSA -ext SAN=dns:${FQDN}
인증서 서명 요청을 생성하고 file cert-server-request라는 이름:
- keytool -keystore kafka.server.keystore.jks \
- – 별칭 서버 \
- – 인증서 \
- – file 인증서 서버 요청
이제 다음을 보내야 합니다. file 실제 인증 기관(CA)을 사용하는 경우 인증 기관(CA)에 cert-server-request를 보내세요. 그런 다음 서명된 인증서를 반환합니다. 아래에서는 이를 cert-server-signed라고 부릅니다.
자체 생성 CA 인증서를 사용하여 SSL 인증서 서명
메모: 다시 말하지만, 프로덕션 시스템에서는 자체 CA를 사용하는 것이 권장되지 않습니다.
CA를 사용하여 인증서에 서명합니다. file 서명된 인증서 cert-server-signed를 생성하는 cert-server-request. 아래를 참조하십시오. ca-password는 CA 인증서를 생성할 때 설정한 암호입니다.
- CD /var/ssl/private openssl x509 -req \
- – CA ${CA_PATH}/ca-cert \
- – CAkey ${CA_PATH}/ca-key \
- – 인증서 서버 요청에서 \
- – 인증서 서버 서명 완료 \
- – 999일 -CAcreateserial \
- – 전달 패스:{ca-password}
서명된 인증서를 키 저장소로 가져오기
ca-cert 루트 인증서를 키 저장소로 가져옵니다.
- keytool -keystore kafka.server.keystore.jks \
- – 별칭 ca-cert \
- – 수입 \
- – file ${CA_PATH}/ca-cert
cert-server-signed라고 하는 서명된 인증서를 가져옵니다.
- keytool -keystore kafka.server.keystore.jks \
- – 별칭 서버 \
- – 수입 \
- – file 인증서 서버 서명
그만큼 file kafka.server.keystore.jks는 제어 센터 서버의 알려진 위치에 복사한 다음 /etc/kafka/server.properties에서 참조해야 합니다.
스트리밍 API 사용
이 섹션에서
- 일반 | 20
- Kafka 주제 이름 | 21
- ExampAPI 사용 방법 | 21
일반적인
스트리밍 API는 테스트 데이터와 모니터 데이터를 모두 가져옵니다. 이러한 범주 중 하나를 골라내는 것은 불가능합니다.
스트리밍 API는 이더넷 서비스 활성화 테스트 및 투명도 테스트와 같은 스크립트 기반 테스트(제어 센터 GUI에서 퍼즐 조각 대신 직사각형으로 표시됨)에서 데이터를 가져오지 않습니다.
카프카 주제 이름
스트리밍 API에 대한 Kafka 주제 이름은 다음과 같습니다. 여기서 %s는 제어 센터 계정의 짧은 이름입니다(계정 생성 시 표시됨).
- const (
- 수출자 이름 = "카프카"
- MetadataTopicTpl = "paa.public.accounts.%s.metadata"metricTopicTpl = "paa.public.accounts.%s.metrics" )
ExampStreaming API 사용 파일
전직amp다음 파일은 tarball paa-streaming-api-client-ex에서 찾을 수 있습니다.amp제어 센터 tarball에 포함된 les.tar.gz.
먼저 기본 ex가 있습니다.amp이 파일은 지표와 해당 메타데이터가 별도로 스트리밍되는 방법과 수신된 메시지를 콘솔에 인쇄하는 방법을 보여줍니다. 다음과 같이 실행할 수 있습니다.
- sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
더 진보된 ex도 있습니다.amp메트릭과 메타데이터 메시지가 상관 관계가 있는 파일입니다. 다음 명령을 사용하여 실행하십시오.
- sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
위와 같은 Docker 명령을 실행하려면 sudo를 사용해야 합니다. 선택적으로 Linux 설치 후 단계에 따라 sudo 없이 Docker 명령을 실행할 수 있습니다. 자세한 내용은 다음을 참조하세요. docs.docker.com/engine/install/linux-postinstall.
Juniper Networks, Juniper Networks 로고, Juniper 및 Junos는 미국 및 기타 국가에서 Juniper Networks, Inc.의 등록 상표입니다. 다른 모든 상표, 서비스 마크, 등록 상표 또는 등록 서비스 마크는 해당 소유자의 재산입니다. Juniper Networks는 이 문서의 부정확성에 대해 책임을 지지 않습니다. Juniper Networks는 통지 없이 이 간행물을 변경, 수정, 이전 또는 기타 방식으로 개정할 권리를 보유합니다. 저작권 © 2023 Juniper Networks, Inc. 모든 권리 보유.
문서 / 리소스
![]() |
주니퍼 NETWORKS 스트리밍 API 소프트웨어 [PDF 파일] 사용자 가이드 스트리밍 API 소프트웨어, API 소프트웨어, 소프트웨어 |