stackabletech / stackabletech/operator-rs

Add method to adaptively calculate JVM heap size instead of using a constant

Offen
#475 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

type/feature-improvement
Vorherrschende Sprache
Rust
Sterne
167
Forks
19
Ø Merge
1 T. 6 Std.
Gemergte PRs (30 T.)
9

Beschreibung

Recently we added the possibility to add resource requests and limits to our operators.

For the Java based products we currently use a factor of 0.8 to calculate the amount of heap for the JVM depending on the memory limit.

In most cases this will lead to unused memory when using alot of memory. E.g. a pod gets 100GB memory, this will be 80GB for the JVM and we end up with almost 20GB unused but reserved memory.

We need a method in the framework that adaptively calculates the required heap memory in order to waste less memory and leaving enough memory for the OS to run when specifying lower amounts.

Acceptance

  • A method to calculate the JVM heap depending on the amount specified is implemented in the framework
    • This includes research about a safe minimal value (e.g. 500mb for the OS that must always be respected)
  • The operator-rs is properly released
  • The resources concepts docs are updated
  • All operators managing java products use this method instead of the constant 0.8 factor

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die aktuelle Berechnung des JVM-Heaps mit 0.8 im Framework und die Dokumentation zu den Ressourcen-Konzepten zu finden. Recherchiere einen sicheren Mindestwert für den OS-Speicher und verfolge anschließend alle Operatoren, die Java-Produkte verwalten, um Verwendungen der Konstante zu identifizieren. Als abgeschlossen gilt die Aufgabe, wenn die adaptive Methode konsistent verwendet wird, operator-rs veröffentlicht ist und die Dokumentation zu den Ressourcen aktualisiert wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
kubernetes, rust
Bereich
devops, documentation, tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.