<p>I have a spark application and want to deploy this on a Kubernetes cluster.
Following the below documentation I have managed to create an empty Kubernetes cluster, generated docker image using the <code>Dockerfile</code> provided under <code>kubernetes/dockerfiles/spark/Dockerfile</code> and deployed this on the cluster using <code>spark-submit</code> in a Dev environment.
<a href="https://spark.apache.org/docs/latest/running-on-kubernetes.html" rel="nofollow noreferrer">https://spark.apache.org/docs/latest/running-on-kubernetes.html</a></p>
<p>However, in a 'proper' environment we have a managed Kubernetes cluster (bespoke unlike EKS etc.) and will have to provide pod configuration files to get deployed.</p>
<p>I believe you can supply Pod template file as an argument to the <code>spark-submit</code> command.
<a href="https://spark.apache.org/docs/latest/running-on-kubernetes.html#pod-template" rel="nofollow noreferrer">https://spark.apache.org/docs/latest/running-on-kubernetes.html#pod-template</a></p>
<p>How can I do this without <code>spark-submit</code>? And are there any example yaml files?</p>
<p>PS: we have limited access to this cluster, e.g. we can install Helm charts but not operator or controller.</p>

adesai
<p>You could try to use k8s Spark CRD <a href="https://github.com/GoogleCloudPlatform/spark-on-k8s-operator" rel="nofollow noreferrer">https://github.com/GoogleCloudPlatform/spark-on-k8s-operator</a> and provide a pod configuration through it.</p>
