Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

We propose adding a mode to the specof the FlinkDeployment CRD to allow both standalone and native clusters to be deployed. This would allow 2 new types of Flink clusters to be created: standalone-application, standalone-session. This will default to native to maintain compatibility.

Also replicas will be added to the taskManager spec to specify the number of TaskManager pods to spin up, this will only be used for standalone session clusters. For application clusters the number of replicas to spin up can be calculated using the job parallelism and the taskmanager. numberOfTaskSlots configuration

Standalone mode

All interactions with the Flink cluster is currently done via the FlinkService which is integrated with the Kubernetes native nature of the cluster. This will be forked into a FlinkNativeService and FlinkStandaloneService to enable communication with both cluster types.

...

Flink VersionNative Support (no change)Standalone Support (application)Standalone Support (session)
1.16
1.15
1.14
1.13?(✅) [3]
1.12?
1.11?
1.10???
1.9???
1.8???
1.7???
1.6???
1.5???
1.4???
1.3???
1.2???
1.1???
1???

✅: Fully supported
?: Compatible but not supported
?: Not supported

Note: 1.13 support for native mode isn't implemented yet but should be possible [3]

Reactive Mode support

With standalone mode the door is open to support reactive mode for Flink cluster deployed by the operator. However as reactive mode is currently an MVP (minimum viable produce) feature [1] and would only be limited to the application mode this FLIP will not include support for this feature.

...