Biểu tượng cây bách xùKỹ thuật đơn giản
Hướng dẫn API phát trực tuyến

Giới thiệu

Hướng dẫn này mô tả cách trích xuất dữ liệu từ Paragon Active Assurance thông qua API phát trực tuyến của sản phẩm.
API cũng như ứng dụng khách phát trực tuyến được bao gồm trong bản cài đặt Paragon Active Assurance.
Tuy nhiên, cần phải cấu hình một chút trước khi bạn có thể sử dụng API. Điều này được đề cập trong phần “Định cấu hình API truyền trực tuyến” ở trang 1, chương.

Quaview

Chương này mô tả cách định cấu hình API truyền phát để cho phép đăng ký thông báo số liệu qua Kafka.
Dưới đây chúng ta sẽ đi qua:

  • Cách bật API truyền trực tuyến
  • Cách định cấu hình Kafka để nghe ứng dụng khách bên ngoài
  • Cách định cấu hình Kafka để sử dụng ACL và thiết lập mã hóa SSL cho các máy khách nói trên

Kafka là gì?

Kafka là một nền tảng phát trực tuyến sự kiện cho phép thu thập dữ liệu được gửi theo thời gian thực từ nhiều nguồn sự kiện khác nhau (cảm biến, cơ sở dữ liệu, thiết bị di động) dưới dạng luồng sự kiện, cũng như lưu trữ lâu dài các luồng sự kiện này để truy xuất và thao tác sau này.
Với Kafka, có thể quản lý sự kiện phát trực tuyến từ đầu đến cuối theo cách phân tán, có khả năng mở rộng cao, linh hoạt, chịu lỗi và an toàn.
GHI CHÚ: Kafka có thể được cấu hình theo nhiều cách khác nhau và được thiết kế cho khả năng mở rộng và các hệ thống dự phòng. Tài liệu này chỉ tập trung vào cách định cấu hình để sử dụng tính năng API truyền trực tuyến có trong Trung tâm kiểm soát đảm bảo hoạt động của Paragon. Để biết các thiết lập nâng cao hơn, chúng tôi tham khảo tài liệu chính thức của Kafka: kafka.apache.org/26/documentation.html.

Thuật ngữ

  • Kafka: Nền tảng phát trực tuyến sự kiện.
  • Chủ đề Kafka: Tập hợp các sự kiện.
  • Người đăng ký/người tiêu dùng Kafka: Thành phần chịu trách nhiệm truy xuất các sự kiện được lưu trữ trong chủ đề Kafka.
  • Nhà môi giới Kafka: Máy chủ lớp lưu trữ của cụm Kafka.
  • SSL/TLS: SSL là một giao thức bảo mật được phát triển để gửi thông tin một cách an toàn qua Internet. TLS là sự kế thừa của SSL, được giới thiệu vào năm 1999.
  • SASL: Khung cung cấp cơ chế xác thực người dùng, kiểm tra tính toàn vẹn của dữ liệu và mã hóa.
  • Người đăng ký API truyền phát: Thành phần chịu trách nhiệm truy xuất các sự kiện được lưu trữ trong các chủ đề được xác định trong Paragon Active Assurance và dành cho truy cập bên ngoài.
  • Cơ quan cấp chứng chỉ: Một thực thể đáng tin cậy phát hành và thu hồi các chứng chỉ khóa công khai.
  • Chứng chỉ gốc của Tổ chức phát hành chứng chỉ: Chứng chỉ khóa công khai xác định Tổ chức phát hành chứng chỉ.

Cách API truyền trực tuyến hoạt động

Như đã đề cập trước đây, API truyền phát cho phép các máy khách bên ngoài truy xuất thông tin về các số liệu từ Kafka.
Tất cả các số liệu được Đại lý kiểm tra thu thập trong một nhiệm vụ kiểm tra hoặc giám sát sẽ được gửi đến dịch vụ Luồng.
Sau giai đoạn xử lý, dịch vụ Luồng xuất bản các số liệu đó trên Kafka cùng với siêu dữ liệu bổ sung.

API phát trực tuyến của Juniper

Chủ đề Kafka

Kafka có khái niệm về các chủ đề mà tất cả dữ liệu được xuất bản. Trong Paragon Active Assurance có rất nhiều chủ đề Kafka như vậy; tuy nhiên, chỉ một tập hợp con trong số này dành cho truy cập bên ngoài.
Mỗi tài khoản Paragon Active Assurance trong Trung tâm điều khiển có hai chủ đề riêng. Bên dưới, ACCOUNT là tên viết tắt của tài khoản:

  • paa.public.accounts.{ACCOUNT}.metrics
  • Tất cả thông báo chỉ số cho tài khoản nhất định được xuất bản cho chủ đề này
  • Lượng lớn dữ liệu
  • Tần suất cập nhật cao
  • paa.public.accounts.{ACCOUNT}.metadata
  • Chứa siêu dữ liệu liên quan đến dữ liệu số liệu, ví dụ:amptập tin kiểm tra, giám sát hoặc Tác nhân kiểm tra được liên kết với số liệu
  • Lượng dữ liệu nhỏ
  • Tần suất cập nhật thấp

Kích hoạt API truyền trực tuyến

GHI CHÚ: Các hướng dẫn này sẽ được chạy trên máy chủ Trung tâm điều khiển bằng sudo.
Vì API truyền trực tuyến thêm một số chi phí vào Trung tâm điều khiển nên nó không được bật theo mặc định. Để bật API, trước tiên chúng tôi phải bật xuất bản số liệu lên Kafka trong cấu hình chính file:

  • /etc/netrounds/netrounds.conf
    KAFKA_METRICS_ENABLED = Đúng
    CẢNH BÁO: Việc bật tính năng này có thể ảnh hưởng đến hiệu suất của Trung tâm điều khiển. Đảm bảo rằng bạn đã định kích thước cho phiên bản của mình cho phù hợp.
    Tiếp theo, để cho phép chuyển tiếp các số liệu này đến đúng chủ đề Kafka:
  • /etc/netrounds/metrics.yaml
    phát trực tuyến-api: đúng

Để kích hoạt và bắt đầu các dịch vụ Streaming API, hãy chạy:
Dịch vụ sudo ncc kích hoạt số liệu timescaledb Dịch vụ sudo ncc bắt đầu số liệu timescaledb
Cuối cùng, khởi động lại các dịch vụ:
dịch vụ sudo ncc khởi động lại

Xác minh rằng API truyền phát hoạt động trong Trung tâm điều khiển

GHI CHÚ: Các hướng dẫn này sẽ được chạy trên máy chủ Trung tâm điều khiển.
Bây giờ, bạn có thể xác minh rằng bạn đang nhận được số liệu về các chủ đề Kafka chính xác. Để làm như vậy, hãy cài đặt tiện ích kafkacat:
cập nhật sudo apt-get sudo apt-get cài đặt kafkacat
Nếu bạn có một bài kiểm tra hoặc màn hình đang chạy trong Trung tâm điều khiển, bạn sẽ có thể sử dụng kafkacat để nhận số liệu và siêu dữ liệu về các chủ đề này.
Thay thế tài khoản của tôi bằng tên viết tắt của tài khoản của bạn (đây là những gì bạn thấy trong Trung tâm điều khiển của mình URL):
xuất khẩu METRICS_TOPIC=paa.public.accounts.myaccount.metrics
xuất khẩu METADATA_TOPIC=paa.public.accounts.myaccount.metadata
Bây giờ bạn sẽ thấy số liệu bằng cách chạy lệnh này:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
ĐẾN view siêu dữ liệu, hãy chạy lệnh sau (lưu ý rằng lệnh này sẽ không cập nhật thường xuyên):
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
GHI CHÚ:
kafkacat”Khách hàng cũamples ”trên trang 14
Điều này xác minh rằng chúng tôi có API truyền trực tuyến đang hoạt động từ bên trong Trung tâm điều khiển. Tuy nhiên, rất có thể bạn quan tâm đến việc truy cập dữ liệu từ một ứng dụng khách bên ngoài. Phần tiếp theo mô tả cách mở Kafka để truy cập bên ngoài.

Mở Kafka cho các máy chủ bên ngoài

GHI CHÚ: Các hướng dẫn này sẽ được chạy trên máy chủ Trung tâm điều khiển.
Theo mặc định, Kafka chạy trên Trung tâm điều khiển được định cấu hình để chỉ nghe trên máy chủ cục bộ để sử dụng nội bộ.
Có thể mở Kafka cho các máy khách bên ngoài bằng cách sửa đổi cài đặt Kafka.
Kết nối với Kafka: Hãy cẩn thận
THE OUTDOOR PLUS TOP Series Fire Pit Connection Kits and Insights - Biểu tượng 1 THẬN TRỌNG:
Vui lòng đọc kỹ phần này, vì rất dễ gặp phải các vấn đề liên quan đến Kafka nếu bạn không hiểu các khái niệm này.
Trong thiết lập Trung tâm điều khiển được mô tả trong tài liệu này, chỉ có một nhà môi giới Kafka duy nhất.
Tuy nhiên, lưu ý rằng một nhà môi giới Kafka có nghĩa là hoạt động như một phần của cụm Kafka có thể bao gồm nhiều nhà môi giới Kafka.
Khi kết nối với nhà môi giới Kafka, kết nối ban đầu được thiết lập bởi ứng dụng khách Kafka. Qua kết nối này, đến lượt nhà môi giới Kafka sẽ trả về một danh sách “người nghe được quảng cáo”, là danh sách của một hoặc nhiều nhà môi giới Kafka.
Khi nhận được danh sách này, ứng dụng khách Kafka sẽ ngắt kết nối, sau đó kết nối lại với một trong những trình nghe được quảng cáo này. Trình nghe được quảng cáo phải chứa tên máy chủ hoặc địa chỉ IP mà ứng dụng khách Kafka có thể truy cập được, nếu không ứng dụng khách sẽ không kết nối được.
Nếu mã hóa SSL được sử dụng, liên quan đến chứng chỉ SSL được gắn với một tên máy chủ cụ thể, thì điều quan trọng hơn nữa là ứng dụng khách Kafka nhận được địa chỉ chính xác để kết nối, vì nếu không thì kết nối có thể bị từ chối.
Đọc thêm về người nghe Kafka tại đây: www.confluent.io/blog/kafka-listeners-explained
Mã hóa SSL/TLS
Để đảm bảo chỉ những khách hàng đáng tin cậy mới được phép truy cập Kafka và API truyền phát, chúng tôi phải định cấu hình như sau:

  • Xác thực: Khách hàng phải cung cấp tên người dùng và mật khẩu thông qua kết nối an toàn SSL/TLS giữa khách hàng và Kafka.
  • Ủy quyền: Các máy khách đã được xác thực có thể thực hiện các tác vụ do ACL quy định.
    Đây là một kết thúcview:

Juniper Streaming API - Hình

*) Xác thực tên người dùng/mật khẩu được thực hiện trên kênh được mã hóa SSL
Để hiểu đầy đủ cách mã hóa SSL/TLS hoạt động cho Kafka, vui lòng tham khảo tài liệu chính thức: docs.confluent.io/platform/current/kafka/encryption.html
Hết chứng chỉ SSL/TLSview
GHI CHÚ: Trong tiểu mục này, chúng tôi sẽ sử dụng các thuật ngữ sau:
Chứng chỉ: Chứng chỉ SSL được ký bởi Cơ quan cấp chứng chỉ (CA). Mỗi nhà môi giới Kafka có một.
Kho khóa: kho khóa file lưu trữ chứng chỉ. kho khóa file chứa khóa riêng của chứng chỉ; do đó, nó cần phải được lưu giữ một cách an toàn.
Cửa hàng ủy thác: A file chứa các chứng chỉ CA đáng tin cậy.
Để thiết lập xác thực giữa ứng dụng khách bên ngoài và Kafka đang chạy trong Trung tâm điều khiển, cả hai bên phải có kho khóa được xác định bằng chứng chỉ liên quan được ký bởi Tổ chức phát hành chứng chỉ (CA) cùng với chứng chỉ gốc CA.
Ngoài ra, khách hàng cũng phải có một cửa hàng ủy thác với chứng chỉ gốc CA.
Chứng chỉ gốc CA là chung cho nhà môi giới Kafka và ứng dụng khách Kafka.
Tạo chứng chỉ cần thiết
Điều này được trình bày trong “Phụ lục” ở trang 17.
Cấu hình SSL/TLS của nhà môi giới Kafka trong Trung tâm điều khiển
GHI CHÚ: Các hướng dẫn này sẽ được chạy trên máy chủ Trung tâm điều khiển.
GHI CHÚ: Trước khi tiếp tục, bạn phải tạo kho khóa chứa chứng chỉ SSL bằng cách làm theo hướng dẫn trong “Phụ lục” ở trang 17. Các đường dẫn được đề cập bên dưới đến từ các hướng dẫn này.
Kho khóa SSL là một file được lưu trữ trên đĩa với file phần mở rộng .jks.
Khi bạn đã tạo các chứng chỉ cần thiết cho cả trình môi giới Kafka và ứng dụng khách Kafka, bạn có thể tiếp tục bằng cách định cấu hình trình môi giới Kafka đang chạy trong Trung tâm điều khiển. Bạn cần biết những điều sau:

  • : Tên máy chủ công khai của Trung tâm điều khiển; điều này phải được giải quyết và có thể truy cập bởi các khách hàng Kafka.
  • : Mật khẩu kho khóa được cung cấp khi tạo chứng chỉ SSL.
  • Và : Đây là những mật khẩu bạn muốn đặt cho quản trị viên và người dùng máy khách tương ứng.
    Lưu ý rằng bạn có thể thêm nhiều người dùng hơn, như được nêu trong ví dụ cũamplà.
    Chỉnh sửa hoặc nối thêm (với quyền truy cập sudo) các thuộc tính bên dưới trong /etc/kafka/server.properties, chèn các biến trên như hình minh họa:

Biểu tượng điện giật CẢNH BÁO: Không xóa PLAINTEXT://localhost:9092 ; điều này sẽ phá vỡ chức năng của Trung tâm điều khiển vì các dịch vụ nội bộ sẽ không thể giao tiếp.
…# Các địa chỉ mà nhà môi giới Kafka lắng nghe.
người nghe=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
# Đây là những máy chủ được quảng cáo trở lại bất kỳ máy khách nào đang kết nối.
Advertisement.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093…
####### CẤU HÌNH TÙY CHỈNH
# CẤU HÌNH 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
# Cấu hình SASL sasl.enabled.mechanisms=PLAIN
listener.name.sasl_ssl.plain.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginMo cần có dule \ username=”admin” \ password=” ” \user_admin=” ” \user_client=” ”; # LƯU Ý có thể thêm nhiều người dùng hơn bằng user_ =
# Ủy quyền, bật ACL ủy quyền.class.name=kafka.security.authorizer.AclAuthorizer super.users=User:admin
Thiết lập Danh sách kiểm soát truy cập (ACL)
Bật ACL trên localhost
Biểu tượng điện giật CẢNH BÁO: Trước tiên, chúng ta phải thiết lập ACL cho localhost để chính Trung tâm điều khiển vẫn có thể truy cập Kafka. Nếu điều này không được thực hiện, mọi thứ sẽ đổ vỡ.
######### Mục nhập ACL cho người dùng ẩn danh
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \ –authorizer-properties Zookeeper.connect=localhost:2181 \ –add –allow-principal Người dùng: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 '*'
Sau đó, chúng tôi cần bật ACL cho quyền truy cập chỉ đọc bên ngoài để người dùng bên ngoài được phép đọc các chủ đề paa.public.*.
GHI CHÚ: Để kiểm soát chi tiết hơn, vui lòng tham khảo tài liệu chính thức của Kafka.
######### mục nhập ACL cho người dùng bên ngoài
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \–authorizer-property Zookeeper.connect=localhost:2181 \
–add –allow-principal User:* –thao tác đọc –thao tác mô tả \–nhóm 'NCC'
/usr/lib/kafka/bin/kafka-acls.sh \
–ủy quyền kafka.security.authorizer.AclAuthorizer \
–authorizer-properties Zookeeper.connect=localhost:2181 \
–add –allow-principal User:* –thao tác đọc –thao tác mô tả \
–topic paa.public. –resource-pattern-type có tiền tố
Sau khi hoàn thành việc này, bạn cần khởi động lại các dịch vụ:
dịch vụ sudo ncc khởi động lại
Để xác minh rằng máy khách có thể thiết lập kết nối an toàn, hãy chạy lệnh sau trên máy khách bên ngoài (không phải trên máy chủ Trung tâm điều khiển). Dưới đây, PUBLIC_HOSTNAME là tên máy chủ của Trung tâm điều khiển:
openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep “Hỗ trợ đàm phán lại an toàn”
Trong đầu ra lệnh, bạn sẽ thấy chứng chỉ máy chủ cũng như thông tin sau:
Đàm phán lại an toàn IS được hỗ trợ
Để đảm bảo rằng các dịch vụ nội bộ đã được cấp quyền truy cập vào máy chủ Kafka, vui lòng kiểm tra nhật ký saufiles:

Xác thực kết nối máy khách bên ngoài

mèo kafka
GHI CHÚ: Các hướng dẫn này sẽ được chạy trên máy khách (không phải trên máy chủ Trung tâm điều khiển).
GHI CHÚ: Để hiển thị thông tin số liệu, hãy đảm bảo rằng ít nhất một màn hình đang chạy trong Trung tâm điều khiển.
Để xác minh và xác thực kết nối với tư cách là ứng dụng khách bên ngoài, có thể sử dụng tiện ích kafkacat đã được cài đặt trong phần “Xác minh rằng API truyền trực tuyến hoạt động trong Trung tâm điều khiển” trên trang 4.
Thực hiện các bước sau:
GHI CHÚ: Bên dưới, CLIENT_USER là người dùng được chỉ định trước đó trong file /etc/kafka/server.properties trong
Trung tâm điều khiển: cụ thể là user_client và mật khẩu được đặt ở đó.
Chứng chỉ gốc CA được sử dụng để ký chứng chỉ SSL phía máy chủ phải có trên máy khách.

  • Tạo một file client.properties với nội dung như sau:
    security.protocol=SASL_SSL
    ssl.ca.location={PATH_TO_CA_CERT}
    sasl.mechanisms=ĐỒNG BẰNG
    sasl.username={CLIENT_USER}
    sasl.password={CLIENT_PASSWORD} ở đâu
    • {PATH_TO_CA_CERT} là vị trí của chứng chỉ gốc CA được nhà môi giới Kafka sử dụng
    • {CLIENT_USER} và {CLIENT_PASSWORD} là thông tin đăng nhập người dùng cho ứng dụng khách.
    • Chạy lệnh sau để xem thông báo được sử dụng bởi kafkacat:
    xuất KAFKA_FQDN=
    xuất METRICS_TOPIC=paa.public.accounts. .metrics
    kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
    trong đó {METRICS_TOPIC} là tên của chủ đề Kafka có tiền tố “paa.public.”.

GHI CHÚ: Các phiên bản cũ hơn của kafkacat không cung cấp tùy chọn -F để đọc cài đặt ứng dụng khách từ file. Nếu bạn đang sử dụng một phiên bản như vậy, bạn phải cung cấp các cài đặt tương tự từ dòng lệnh như được hiển thị bên dưới.
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
Để gỡ lỗi kết nối, bạn có thể sử dụng tùy chọn -d:
Gỡ lỗi thông tin liên lạc của người tiêu dùng
kafkacat -d người tiêu dùng -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# Gỡ lỗi thông tin liên lạc của nhà môi giới
kafkacat -d nhà môi giới -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
Đảm bảo tham khảo tài liệu dành cho thư viện máy khách Kafka đang sử dụng, vì các thuộc tính có thể khác với các thuộc tính trong client.properties.

Định dạng tin nhắn

Các thông báo được sử dụng cho các chủ đề số liệu và siêu dữ liệu được đăng tuần tự ở định dạng Bộ đệm giao thức (protobuf) (xem developer.google.com/protocol-buffers). Các lược đồ cho các thông báo này tuân theo định dạng sau:
Số liệu Lược đồ Protobuf
cú pháp = “proto3”; nhập “google/protobuf/timestamp.proto”; gói paa.streamingapi; tùy chọn go_package = “.;paa_streamingapi”; Số liệu tin nhắn { google.protobuf.Timestamp thời gianamp = 1; bản đồ giá trị = 2; int32 đo lường_id = 3; } /** * Giá trị số liệu có thể là số nguyên hoặc số float. */
thông báo MetricValue { oneof type { int64 int_val = 1; float float_val = 2; } }
Lược đồ Protobuf siêu dữ liệu
cú pháp = “proto3”; gói paa.streamingapi; tùy chọn go_package = “.;paa_streamingapi”; tin nhắn Siêu dữ liệu { int32 đo lường_id = 1; tên_đo chuỗi = 2; bản đồ tags = 13; }

khách hàng cũamptập

GHI CHÚ: Các lệnh này nhằm mục đích chạy trên máy khách bên ngoài, chẳng hạn nhưampcủa máy tính xách tay của bạn hoặc tương tự, và không có trong Trung tâm điều khiển.
GHI CHÚ: Để hiển thị thông tin số liệu, hãy đảm bảo rằng ít nhất một màn hình đang chạy trong Trung tâm điều khiển.
Tarball của Trung tâm điều khiển bao gồm kho lưu trữ paa-streaming-api-client-examples.tar.gz (khách hàng cũamples), chứa example Tập lệnh Python hiển thị cách sử dụng API Truyền trực tuyến.
Cài đặt và cấu hình Client Examptập
Bạn tìm khách hàng cũampcác tập tin trong thư mục Paragon Active Assurance Control Center:
xuất CC_VERSION=3.3.1
cd ./paa-control-center_${CC_VERSION} ls paa-streaming-api-client-examples*
Để cài đặt client-examptrên máy khách bên ngoài của bạn, hãy tiến hành như sau:
# Tạo thư mục để trích xuất nội dung của máy khách cũamples tarball mkdir paa-streaming-api-client-examptập
# Trích xuất nội dung của khách hàng cũamples tarball tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examptập
# Vào thư mục mới tạo cd paa-streaming-api-client-exampkhách hàng cũamples yêu cầu Docker để chạy. Tải xuống và hướng dẫn cài đặt cho Docker có thể được tìm thấy tại https://docs.docker.com/engine/install.
Sử dụng khách hàng cũamptập
khách hàng cũampcông cụ les có thể chạy ở chế độ cơ bản hoặc nâng cao để xây dựng examples phức tạp khác nhau. Trong cả hai trường hợp, cũng có thể chạy examptập tin có cấu hình file chứa các thuộc tính bổ sung để tùy chỉnh thêm phía máy khách.
Chế độ cơ bản Ở chế độ cơ bản, các chỉ số và siêu dữ liệu của chúng được phát trực tuyến riêng biệt. Cuối cùng, khách hàng lắng nghe từng chủ đề Kafka có sẵn để truy cập bên ngoài và chỉ cần in các thông báo đã nhận vào bảng điều khiển.
Để bắt đầu thực hiện ex cơ bảnamptập tin, hãy chạy: ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
trong đó ACCOUNT_SHORTNAME là tên viết tắt của tài khoản mà bạn muốn lấy số liệu từ đó.
Để chấm dứt việc thực hiện cũample, nhấn Ctrl + C. (Có thể có một chút chậm trễ trước khi quá trình thực thi dừng lại do máy khách chờ sự kiện hết thời gian chờ.)
Chế độ nâng cao
GHI CHÚ:
Số liệu chỉ được hiển thị cho màn hình HTTP đang chạy trong Trung tâm điều khiển.
Thực thi ở chế độ nâng cao cho thấy mối tương quan giữa số liệu và thông báo siêu dữ liệu. Điều này có thể thực hiện được nhờ sự hiện diện trong mỗi thông báo chỉ số của trường id luồng đề cập đến thông báo siêu dữ liệu tương ứng.
Để thực hiện ex nâng caoamptập tin, hãy chạy: ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME trong đó ACCOUNT_SHORTNAME là tên viết tắt của tài khoản mà bạn muốn lấy số liệu từ đó.
Để chấm dứt việc thực hiện cũample, nhấn Ctrl + C. (Có thể có một chút chậm trễ trước khi quá trình thực thi dừng lại do máy khách chờ sự kiện hết thời gian chờ.)
Cài đặt bổ sung
Có thể chạy examptập tin với cấu hình bổ sung của máy khách bằng cách sử dụng –config-file tùy chọn theo sau bởi một file name chứa các thuộc tính ở dạng key=value.
./build.sh run-advanced \ –kafka-brokers localhost:9092 \ –account ACCOUNT_SHORTNAME \ –config-file client_config.properties
GHI CHÚ: Tất cả files được tham chiếu trong lệnh trên phải được đặt trong thư mục hiện tại và chỉ được tham chiếu bằng các đường dẫn tương đối. Điều này áp dụng cho cả –config-file đối số và cho tất cả các mục trong cấu hình file mà mô tả file địa điểm.
Xác thực Xác thực ứng dụng khách bên ngoài
Để xác thực xác thực ứng dụng khách từ bên ngoài Trung tâm điều khiển bằng client-examples, thực hiện các bước sau:

  • Từ thư mục Paragon Active Assurance Control Center, chuyển sang paa-streaming-api-clientexampthư mục:
    cd paa-streaming-api-client-examptập
  • Sao chép chứng chỉ gốc CA ca-cert vào thư mục hiện tại.
  • Tạo một client.properties file với nội dung sau:
    security.protocol=SASL_SSL
    ssl.ca.location=ca-cert
    sasl.mechanism=ĐỒNG BẰNG
    sasl.username={CLIENT_USER}
    sasl.password={CLIENT_PASSWORD}
    trong đó {CLIENT_USER} và {CLIENT_PASSWORD} là thông tin đăng nhập người dùng cho ứng dụng khách.
  • Chạy ex cơ bảnampcác bạn:
    xuất KAFKA_FQDN= ./build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \ –account ACCOUNT_SHORTNAME
    –cấu hình-file client.properties trong đó ACCOUNT_SHORTNAME là tên viết tắt của tài khoản mà bạn muốn lấy số liệu từ đó.
  • Chạy ex nâng caoampcác bạn:
    xuất KAFKA_FQDN= ./build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \ –account ACCOUNT_SHORTNAME–config-file khách hàng.properties

Phụ lục

Trong phụ lục này, chúng tôi mô tả cách tạo:

  • một kho khóa file để lưu trữ chứng chỉ SSL của nhà môi giới Kafka
  • một cửa hàng tin cậy file để lưu trữ chứng chỉ gốc của Tổ chức phát hành chứng chỉ (CA) được sử dụng để ký chứng chỉ môi giới Kafka.

Tạo chứng chỉ nhà môi giới Kafka
Tạo chứng chỉ bằng Cơ quan cấp chứng chỉ thực (Được khuyến nghị)
Bạn nên lấy chứng chỉ SSL thực từ một CA đáng tin cậy.
Khi bạn đã quyết định chọn CA, hãy sao chép chứng chỉ gốc CA của họ ca-cert file đến đường dẫn của riêng bạn như hình dưới đây:
xuất CA_PATH=~/my-ca mkdir ${CA_PATH} cp ca-cert ${CA_PATH}
Tạo cơ quan cấp chứng chỉ của riêng bạn
GHI CHÚ: Thông thường, bạn nên để chứng chỉ của mình được ký bởi Cơ quan cấp chứng chỉ thực; xem tiểu mục trước. Những gì sau đây chỉ là một người cũamplà.
Ở đây chúng tôi tạo chứng chỉ gốc của Tổ chức phát hành chứng chỉ (CA) của riêng mình file có giá trị trong 999 ngày (không được khuyến nghị trong sản xuất):
# Tạo thư mục để lưu CA xuất CA_PATH=~/my-ca mkdir ${CA_PATH}
# Tạo chứng chỉ CA openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999
Tạo Client Truststore
Bây giờ bạn có thể tạo một cửa hàng ủy thác file có chứa ca-cert được tạo ở trên. Cái này file ứng dụng khách Kafka sẽ truy cập API truyền trực tuyến sẽ cần:
keytool -keystore kafka.client.truststore.jks \ -alias CARoot \ -importcert -file ${CA_PATH}/ca chứng chỉ
Bây giờ chứng chỉ CA đã có trong cửa hàng tin cậy, khách hàng sẽ tin cậy bất kỳ chứng chỉ nào được ký với nó.
Bạn nên sao chép file kafka.client.truststore.jks đến một vị trí đã biết trên máy khách của bạn và trỏ đến vị trí đó trong cài đặt.
Tạo kho khóa cho Nhà môi giới Kafka
Để tạo chứng chỉ SSL của nhà môi giới Kafka và sau đó là kho khóa kafka.server.keystore.jks, hãy tiến hành như sau:
Tạo chứng chỉ SSL
Dưới đây, 999 là số ngày hiệu lực của kho khóa và FQDN là tên miền đủ điều kiện của máy khách (tên máy chủ công khai của nút).
GHI CHÚ: Điều quan trọng là FQDN khớp với tên máy chủ chính xác mà ứng dụng khách Kafka sẽ sử dụng để kết nối với Trung tâm điều khiển. sudo mkdir -p /var/ssl/riêng tư
sudo chown -R $USER: /var/ssl/private cd /var/ssl/private export FQDN=
keytool -keystore kafka.server.keystore.jks \ -alias server \ -validity 999 \ -genkey -keyalg RSA -ext SAN=dns:${FQDN}
Tạo một yêu cầu ký chứng chỉ và lưu trữ nó trong file có tên là cert-server-request:
keytool -keystore kafka.server.keystore.jks \ -alias server \ -certreq \ -file yêu cầu máy chủ chứng chỉ
Bây giờ bạn nên gửi file cert-server-request tới Cơ quan cấp chứng chỉ (CA) của bạn nếu bạn đang sử dụng một chứng chỉ thực. Sau đó, họ sẽ trả lại chứng chỉ đã ký. Chúng tôi sẽ gọi điều này là cert-server-signed bên dưới. Ký chứng chỉ SSL bằng chứng chỉ CA tự tạo
GHI CHÚ: Một lần nữa, sử dụng CA của riêng bạn không được khuyến nghị trong hệ thống sản xuất. Ký chứng chỉ bằng CA bằng phương tiện của file cert-server-request, tạo chứng chỉ đã ký cert-server-signed. Xem bên dưới; ca-password là mật khẩu được đặt khi tạo chứng chỉ CA.
cd /var/ssl/private openssl x509 -req \ -CA ${CA_PATH}/ca-cert \ -CAkey ${CA_PATH}/ca-key \ -in cert-server-request \ -out cert-server-signed \ -days 999 -CAcreateserial \ -passin pass:{ca-password}
Nhập chứng chỉ đã ký vào Keystore
Nhập chứng chỉ gốc ca-cert vào kho khóa:
keytool -keystore kafka.server.keystore.jks \ -alias ca-cert \ -import \ -file ${CA_PATH}/ca chứng chỉ
Nhập chứng chỉ đã ký được gọi là cert-server-signed:
keytool -keystore kafka.server.keystore.jks \ -alias server \ -import \ -file chứng chỉ máy chủ đã ký
Các file kafka.server.keystore.jks phải được sao chép vào một vị trí đã biết trên máy chủ Trung tâm điều khiển, sau đó được tham chiếu trong /etc/kafka/server.properties.
Sử dụng API truyền phát

Tổng quan

API phát trực tuyến tìm nạp cả dữ liệu kiểm tra và giám sát. Không thể chọn ra một trong những loại này.
API phát trực tuyến không tìm nạp dữ liệu từ các thử nghiệm dựa trên tập lệnh (những thử nghiệm được biểu thị bằng hình chữ nhật thay vì mảnh ghép hình trong GUI của Trung tâm điều khiển), chẳng hạn như thử nghiệm kích hoạt dịch vụ Ethernet và thử nghiệm độ trong suốt.
Tên chủ đề Kafka
Tên chủ đề Kafka cho API phát trực tuyến như sau, trong đó %s là tên viết tắt của Điều khiển
Tài khoản trung tâm (được chỉ định khi tạo tài khoản):
const (exporterName = “kafka”metadataTopicTpl = “paa.public.accounts.%s.metadata” dimensionsTopicTpl = “paa.public.accounts.%s.metrics”)
Exampcác tập tin Sử dụng API Truyền trực tuyến
Người cũampcác tập tin theo sau được tìm thấy trong tarball paa-streaming-api-client-examples.tar.gz có trong tarball của Trung tâm điều khiển.
Đầu tiên, có một ex cơ bảnample minh họa cách các số liệu và siêu dữ liệu của chúng được truyền trực tuyến riêng biệt và chỉ cần in các thông báo đã nhận ra bảng điều khiển. Bạn có thể chạy nó như sau: sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
Ngoài ra còn có một ex cao cấp hơnamptập tin trong đó số liệu và thông báo siêu dữ liệu tương quan với nhau. Sử dụng lệnh này để chạy nó:
sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME Bạn cần sử dụng sudo để chạy các lệnh Docker chẳng hạn như các lệnh ở trên. Theo tùy chọn, bạn có thể làm theo các bước sau khi cài đặt Linux để có thể chạy các lệnh Docker mà không cần sudo.
Để biết chi tiết, hãy truy cập docs.docker.com/engine/install/linux-postinstall.
Juniper Networks, logo Juniper Networks, Juniper và Junos là các nhãn hiệu đã đăng ký của Juniper Networks, Inc. tại Hoa Kỳ và các quốc gia khác. Tất cả các nhãn hiệu, nhãn hiệu dịch vụ, nhãn hiệu đã đăng ký hoặc nhãn hiệu dịch vụ đã đăng ký khác đều là tài sản của chủ sở hữu tương ứng. Juniper Networks không chịu trách nhiệm về bất kỳ thông tin không chính xác nào trong tài liệu này. Juniper Networks có quyền thay đổi, sửa đổi, chuyển nhượng hoặc sửa đổi ấn phẩm này mà không cần thông báo. Bản quyền © 2022 Juniper Networks, Inc. Mọi quyền được bảo lưu.

Biểu tượng cây bách xù

Tài liệu / Tài nguyên

API phát trực tuyến của Juniper [tập tin pdf] Hướng dẫn sử dụng
API truyền trực tuyến, API

Tài liệu tham khảo

Để lại bình luận

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *