Phần mềm API phát trực tuyến Juniper NETWORKS
Thông tin sản phẩm
Thông số kỹ thuật
- Tên sản phẩm: Paragon Active Assurance
- Phiên bản: 4.1
- Ngày xuất bản: 2023-03-15
Giới thiệu:
Hướng dẫn này cung cấp hướng dẫn về cách trích xuất dữ liệu từ Paragon Active Assurance bằng API phát trực tuyến của sản phẩm. Ứng dụng khách phát trực tuyến và API được bao gồm trong quá trình cài đặt Paragon Active Assurance nhưng cần phải có một số cấu hình trước khi sử dụng API. Quá trình cấu hình được đề cập trong phần “Định cấu hình API phát trực tuyến”.
Định cấu hình API truyền phát:
Các bước sau đây phác thảo quy trình định cấu hình API phát trực tuyến:
Quaview
Kafka là một nền tảng phát trực tuyến sự kiện được thiết kế để thu thập và lưu trữ dữ liệu theo thời gian thực từ nhiều nguồn khác nhau. Nó cho phép quản lý các luồng sự kiện theo cách phân tán, có thể mở rộng, có khả năng chịu lỗi và an toàn. Hướng dẫn này tập trung vào việc định cấu hình Kafka để sử dụng tính năng API phát trực tuyến trong Trung tâm kiểm soát bảo đảm hoạt động của Paragon.
Thuật ngữ
API phát trực tuyến cho phép khách hàng bên ngoài truy xuất thông tin số liệu từ Kafka. Các số liệu do Đại lý kiểm tra thu thập trong quá trình kiểm tra hoặc nhiệm vụ giám sát sẽ được gửi đến dịch vụ Truyền phát. Sau khi xử lý, dịch vụ Stream xuất bản các số liệu này trên Kafka cùng với siêu dữ liệu bổ sung.
API phát trực tuyến sử dụng các chủ đề Kafka để sắp xếp và lưu trữ các số liệu cũng như siêu dữ liệu. Các chủ đề Kafka có thể được tạo và quản lý theo các yêu cầu cụ thể.
Kích hoạt API truyền trực tuyến
Để bật API phát trực tuyến, hãy làm theo các bước sau:
- Chạy các lệnh sau trên máy chủ Trung tâm điều khiển bằng sudo:
KAFKA_METRICS_ENABLED = Dịch vụ sudo ncc thực sự kích hoạt các số liệu timescaledb sudo ncc dịch vụ bắt đầu các số liệu timescaledb sudo ncc khởi động lại
Xác minh rằng API phát trực tuyến hoạt động trong Trung tâm điều khiển:
Để xác minh rằng bạn đang nhận được số liệu về đúng chủ đề Kafka:
- Cài đặt tiện ích kafkacat bằng các lệnh sau:
sudo apt-get cập nhật
sudo apt-get cài đặt kafkacat
- Thay thế “myaccount” bằng tên viết tắt của tài khoản của bạn trong
Trung tâm điều khiển URL:
xuất METRICS_TOPIC=paa.public.accounts.myaccount.metrics
xuất METADATA_TOPIC=paa.public.accounts.myaccount.metadata
- Chạy lệnh sau để view số liệu:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
Ghi chú: Lệnh trên sẽ hiển thị số liệu. - ĐẾN view siêu dữ liệu, hãy chạy lệnh sau:
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
Ghi chú: Lệnh trên sẽ hiển thị siêu dữ liệu nhưng sẽ không cập nhật thường xuyên.
khách hàng cũamptập
Đối với khách hàng cũamples và thông tin thêm, hãy tham khảo trang 14 của hướng dẫn sử dụng.
FAQ (Câu hỏi thường gặp)
- Câu hỏi: Paragon Active Assurance là gì?
Đáp: Paragon Active Assurance là sản phẩm cung cấp khả năng giám sát và kiểm tra. - Câu hỏi: API phát trực tuyến là gì?
Đáp: API phát trực tuyến là một tính năng trong Paragon Active Assurance cho phép khách hàng bên ngoài truy xuất thông tin số liệu từ Kafka. - Câu hỏi: Làm cách nào để bật API phát trực tuyến?
Trả lời: Để bật API phát trực tuyến, hãy làm theo các bước được nêu trong phần “Bật API phát trực tuyến” trong hướng dẫn sử dụng. - Câu hỏi: Làm cách nào để xác minh rằng API phát trực tuyến đang hoạt động?
Trả lời: Hãy tham khảo phần “Xác minh rằng API phát trực tuyến hoạt động trong Trung tâm điều khiển” để biết hướng dẫn về cách xác minh chức năng của 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 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 có thể sử dụng API. Điều này được đề cập trong phần “Định cấu hình API phát trực tuyến” ở chương 1.
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.
pr
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 phát trực tuyến có trong Trung tâm kiểm soát bảo đảm 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ả số liệu được Đại lý kiểm tra thu thập trong quá trình kiểm tra hoặc nhiệm vụ giám sát sẽ được gửi đến dịch vụ Truyền phát. Sau giai đoạn xử lý, dịch vụ Stream xuất bản các số liệu đó trên Kafka cùng với siêu dữ liệu bổ sung.
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:
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:
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:
- sudo apt-get cập nhật
- 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 METRICS_TOPIC=paa.public.accounts.myaccount.metrics
- xuất 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 localhost để sử dụng nội bộ. Có thể mở Kafka cho khách hàng 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
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: 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:
*) 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 hoạt động của mã hóa SSL/TLS đối với 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:
Giấy chứng nhận: 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 lưu trữ chìa 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: MỘT 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 tương ứng cho người dùng quản trị viên và khách hàng. Lưu ý rằng bạn có thể thêm nhiều người dùng hơn, như được chỉ ra trong ví dụ trướcamplà.
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:
CẢNH BÁO: Không xóa PLAINTEXT://localhost:9092; điều này sẽ làm hỏng 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ể liên lạc.
- …
- # 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.
- được quảng cáo.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
- tên người dùng = "quản trị viên" \
- mật khẩu=” ” \
- người dùng_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
- Authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=Người dùng:admin
Thiết lập Danh sách kiểm soát truy cập (ACL)
Bật ACL trên localhost
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ẽ tan vỡ.
- –ủy quyền 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 \
- –ủy quyền kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal Người dùng:ANONYMOUS –allow-host 127.0.0.1 –topic '*'
- /usr/lib/kafka/bin/kafka-acls.sh \
- –ủy quyền kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal Người dùng: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.*.
### Mục nhập ACL dành cho người dùng ẩn danh /usr/lib/kafka/bin/kafka-acls.sh \
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.
- –ủy quyền kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal Người dùng:* –hoạt động đọc –hoạt động mô tả \ –group 'NCC'
- /usr/lib/kafka/bin/kafka-acls.sh \
- –ủy quyền kafka.security.authorizer.AclAuthorizer \
- –authorizer-properties Zookeeper.connect=localhost:2181 \
- –add –allow-principal Người dùng:* –hoạt động đọc –hoạt động 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ụ:
### Mục nhập ACL cho người dùng bên ngoài /usr/lib/kafka/bin/kafka-acls.sh \
- 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 thiết bị bên ngoài
máy khách (không phải trên máy chủ Trung tâm điều khiển). Bên dưới, 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:
- /var/log/kafka/server.log
- /var/log/kafka/kafka-authorizer.log
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 phải đượ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 có í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 xác thực người dùng cho ứng dụng khách.
Chạy lệnh sau để xem thông báo được kafkacat sử dụng:
- 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”;
- tin nhắn Số liệu {
- google.protobuf.Timestamp thời gianamp = 1;
- bản đồ giá trị = 2;
- int32 luồng_id = 3;
- }
- /**
- * Giá trị số liệu có thể là số nguyên hoặc số float.
- */
- tin nhắn MetricValue {
- một trong những loại {
- 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”;
- siêu dữ liệu tin nhắn {
- int32 luồng_id = 1;
- chuỗi suối_name = 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=4.1.0
- 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 vừa tạo
- cd paa-streaming-api-client-examptập
khá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, số liệu và siêu dữ liệu của chúng được truyền trực tuyến riêng biệt. Để đạt được mục đích này, khách hàng sẽ lắng nghe từng chủ đề Kafka có sẵn để truy cập bên ngoài và chỉ cần in các tin nhắn nhận được ra bảng điều khiển.
Để bắt đầu thực hiện ex cơ bảnamples, 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 chạy trong Trung tâm điều khiển.
Việc 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. Đây là
có thể thực hiện được nhờ sự hiện diện trong mỗi thông báo số liệu 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 caoamples, 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-nâng cao \
- –kafka-brokers localhost:9092 \
- –tài khoản ACCOUNT_SHORTNAME \
- –cấu hình-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 Trung tâm kiểm soát bảo đảm hoạt động Paragon, hãy chuyển sang paa-streaming-api-client-exampthư 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 \
- –tài khoản ACCOUNT_SHORTNAME
- –cấu hình-file khách hàng.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 \
- –tài khoản ACCOUNT_SHORTNAME
- –cấu hình-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 trữ 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 \
- bí danh CARoot \
- chứng chỉ nhập khẩu -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à máy 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/private
- sudo chown -R $USER: /var/ssl/private
- cd /var/ssl/riêng tư
- xuất FQDN= keytool -keystore kafka.server.keystore.jks \
- – máy chủ bí danh \
- – hiệu lực 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 \
- – máy chủ bí danh \
- – chứng chỉ \
- – 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áy chủ thực. Sau đó họ sẽ trả lại giấy chứng nhận đã 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Ú: Xin nhắc lại, bạn không nên sử dụng CA của riêng mình trong hệ thống sản xuất.
Ký chứng chỉ bằng cách sử dụng CA bằng 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 \
- - trong cert-server-request \
- - ra cert-server-signed \
- – ngày 999 -CAcreateserial \
- – mật khẩu:{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 \
- – bí danh ca-cert \
- - nhập khẩu \
- – 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 \
- – máy chủ bí danh \
- - nhập khẩu \
- – 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
TRONG PHẦN NÀY
- Chung | 20
- Tên chủ đề Kafka | 21
- Examptập tin Sử dụng API phát trực tuyến | 21
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 tài khoản Trung tâm điều khiển (được biểu thị khi tạo tài khoản):
- hằng số (
- nhà xuất khẩuName = “kafka”
- siêu dữ liệuTopicTpl = “paa.public.accounts.%s.metadata” số liệuTopicTpl = “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ảnamptập tin trình bày cách các số liệu và siêu dữ liệu của chúng được truyền phát riêng biệt và chỉ cần in các thông báo đã nhận được 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 như các lệnh trên. Tùy chọn, bạn có thể làm theo các bước sau 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 © 2023 Juniper Networks, Inc. Mọi quyền được bảo lưu.
Tài liệu / Tài nguyên
![]() |
Phần mềm API phát trực tuyến Juniper NETWORKS [tập tin pdf] Hướng dẫn sử dụng Phần mềm API phát trực tuyến, Phần mềm API, Phần mềm |