Dale Lane created FLINK-40863:
---------------------------------

             Summary: Derive FlinkMiniCluster memory configuration from 
spec.resources
                 Key: FLINK-40863
                 URL: https://issues.apache.org/jira/browse/FLINK-40863
             Project: Flink
          Issue Type: Sub-task
          Components: Kubernetes Operator
            Reporter: Dale Lane


{{spec.resources}} defines the Kubernetes requests and limits for the single 
FlinkMiniCluster container. Because MiniCluster runs Flink's components merged 
into one JVM, it uses Flink's local-execution memory path, where many memory 
configuration options are ignored and heap is sized by the JVM's 
container-aware mechanism with no coordination against the memory Flink 
reserves for managed and network memory.

To give users a working memory budget without hand-tuning 
{{{}flinkConfiguration{}}}, the operator will derive 
{{{}taskmanager.memory.managed.size{}}}, 
{{{}taskmanager.memory.network.min{}}}, {{taskmanager.memory.network.max}} and 
{{env.java.opts.all}} ({{{}-XX:MaxRAMPercentage{}}}) from the memory in 
{{{}spec.resources{}}}, preferring requests and falling back to limits.

This mirrors what {{FlinkConfigBuilder}} already does for 
{{{}FlinkDeployment{}}}'s JobManager and TaskManager pods. As there, every 
derived value will be applied only when absent, so anything the user sets in 
{{flinkConfiguration}} will take precedence.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to