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)