Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Fix NiFi 2 clustering

Đang mở
#809 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
15/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
kubernetes

Hướng nghiên cứu

Bắt đầu bằng việc điều tra cơ chế chia sẻ trạng thái và hành vi JWT trên toàn cluster của NiFi 2, bao gồm cách tạo khóa ký và cách sử dụng các bước kiểm tra hostname SNI. Đồng thời xem xét đường dẫn xác thực của metrics. Công việc được xem là hoàn tất khi các token do cluster phát hành hoạt động trên mọi node mà không cần sticky session, đồng thời các thay đổi SNI và metrics được đề xuất đã được đánh giá.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

epic size/XL type/security

Description

Currently, if you create a JWT token for a nifi node, you can only log into this specific node. This is apparently by design as explained in https://issues.apache.org/jira/browse/NIFI-7246.

The problem with this is that it forces sticky sessions (when using a load balancer) which defeats the purpose of using a stateless token.

This appears to exist because some NiFi state is not shares, so for some API calls you currently must connect to the applicable node.

Slightly relevant is that there are SNI checks (so that the server can verify that the client is connecting via the expected hostname). Presumably this was implemented due to the previously mentioned requirement for connecting to the correct node.

Proposed Solution

[!TIP]
As this is a specific problem of the product NiFi we think it might be useful to fix it upstream.

There are multiple parts to the overall solution:

  1. Fix NiFi 2's state sharing so that there is no longer a need to send requests to a specific node.
  2. Allow JWTs to be issued by a cluster wide issuer for a single audience so that the same token can be used on any node (thereby removing the need for sticky sessions).
  3. Additional nice-to-have's:
    • Remove the SNI hostname check (assuming it was only there as a protection mechanism for what was mentioned in the Description section).
    • Possibly remove authentication from metrics endpoints (and ideally run metrics on a different http server).

Unknowns

  • How is the JWT signing key currently generated?
  • Can the SNI check be removed once it doesn't matter which cluster node is connected to?
Ngôn ngữ chính
Rust
Star
48
Fork
12
Merge trung bình
11 giờ 26 phút
Pull request đã merge (30 ngày)
10

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của stackabletech/nifi-operator

Tất cả issue của stackabletech/nifi-operator

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.