I'm trying to setup a Flink 1.12 deployment on a Kubernetes cluster using custom Docker images (since the official ones aren't out yet). Since the documentation states that "We generally recommend new users to deploy Flink on Kubernetes using native Kubernetes deployments", I'm trying out the native Kubernetes integration.
At the same time, I'm also trying to move to GitOps where we use a tool like Argo CD to keep Kubernetes resources in sync with declarations stored in a Git repository. From what I can tell there's no way to do GitOps with native Kubernetes deployments, since the Kubernetes resources it produces are generated dynamically and are managed via CLI rather than being suitable for storage in a Git repository. Is that correct? Would it be better in my case to just use the standalone Kubernetes deployment option and have our CD tool deploy the YAML files listed in Flink's documentation via Git? Or should I use the native Kubernetes integration to create an initial set of resources in our cluster, export those to a Git repository, and then use a GitOps workflow to modify those resources going forward rather than using the Flink CLI? In other words, I'd only use the Flink CLI to bootstrap the Git repository. Besides ease of setup, are there any other benefits to the native Kubernetes integration compared to standalone deployments? Thanks! Alex