BigData / Apache StreamPark Interview questions
Explain the execution flow of a Kubernetes Application mode submission from StreamPark?
Kubernetes Application mode submission has more moving parts than YARN, because StreamPark is asking Kubernetes to materialize an entire dedicated Flink cluster for one job, from container images rather than a pre-installed Flink binary.
Before submission, the target namespace and the service account used for RBAC need to already be set up on the cluster — StreamPark doesn't create Kubernetes-level RBAC policy from nothing. Docker registry credentials are configured once in Console's Docker Setting, so the Flink image reference in the job's configuration can actually be pulled.
When Start is clicked, Console builds the Kubernetes-specific parameters — image, namespace, resource requests/limits, ClusterId — and submits through Flink's own Kubernetes client integration rather than shelling out to raw kubectl. Kubernetes then schedules a JobManager pod first, which in turn requests TaskManager pods once it's up. StreamPark tracks the resulting ClusterId, and from then on uses the remote REST API plus the Kubernetes API together to report status back into Console, including a link to the job's own Flink WebUI.
More Related questions...