Flink provides the High-availability(HA) of JobManager to prevent it from being the single point of failure.
Before Flink-1.12, the Flink community only provides the Zookeeper HA out of the box.
Therefore, Ververica developed a HA service, VVPKubernetes, for Flink clusters running on Kubernetes.
The Ververica Platform starts to support Flinkkubernetes for flink distribution 1.15.2-stream3 and above since VVP-2.8.0.
For both VVP Kubernetes and Flink Kubernetes, the JobManager leader of a Flink cluster stores its information in Kubernetes ConfigMaps.
The difference is how the TaskManager gets the leader’s information.
VVP Kubernetes: the TaskManagers periodically query the Kubernetes API server for ConfigMaps. Therefore, the number of requests scales with the number of TaskManagers and puts pressure on the API server under large scale.
Flink Kubernetes: the TaskManagers only “WATCH” the ConfigMaps for changes. Therefore, in theory, there will be less pressure on the API server on large scale compared to Flink clusters using VVP Kubernetes.