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

Optimize resource discovery/collection

Đang mở
#620 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ó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
45/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
go, kubernetes
Lĩnh vực
cli, infrastructure

Hướng nghiên cứu

Bắt đầu bằng cách lần theo các đường dẫn tải ruleset và phát hiện tài nguyên, sau đó kiểm tra cách các đối tượng được phát hiện được lấy về và lưu giữ trong bộ nhớ. Sử dụng các quy tắc tích hợp sẵn và tùy chỉnh đã được tải để xác định các loại tài nguyên bắt buộc, bỏ qua các tài nguyên không liên quan và phân trang phần phát hiện còn lại. Được xem là hoàn tất khi các cluster lớn không còn yêu cầu thu thập các tài nguyên không liên quan và các kiểm tra deprecation hiện có vẫn hoạt động.

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

Mô tả

enhancement triage

Is your feature request related to a problem? Please describe.
Pluto currently appears to pull all API resource types from a cluster, followed by all objects matching those types, in an unpaginated list. In a large cluster with a significant number of resources, many of them unrelated to the rules/deprecations being checked, this leads to high memory usage.

Describe the solution you'd like
Short version: only pull the resources that appear in the ruleset we loaded, so we don't use as much memory.

Long version / suggestion:

  • After loading the ruleset (built-in deprecations and custom/user-defined), build a list of resource types we need to check
  • Only pull the resources that actually need to be checked (this can avoid loading thousands of events, for example)
  • Paginate discovery of the remaining resource types, discarding ones we don't need before fetching the next set

Describe alternatives you've considered

  • Smaller clusters with fewer resources: it's currently not feasible for me to reduce the number of resources in my cluster.
  • Give pluto more resources: I've more than tripled the resources I gave to pluto to run against a cluster, I can technically keep going but improving the collection logic is more efficient

Additional context
N/A

Ngôn ngữ chính
Go
Star
2.6k
Fork
142
Merge trung bình
1 giờ 21 phút
Pull request đã merge (30 ngày)
2

Chuẩn bị môi trường

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 FairwindsOps/pluto

Tất cả issue của FairwindsOps/pluto

Issue tương tự

Thêm issue về Go

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.