Hi Mich

This is the latest error I'm stuck with. Please help me resolve this issue.

Exception in thread "main"
io.fabric8.kubernetes.client.KubernetesClientException: Operation: [create]
 for kind: [Pod]  with name: [null]  in namespace: [default]  failed.

~/spark/spark-3.2.1-bin-hadoop3.2/bin/spark-submit  \
           --verbose \
           --class org.apache.spark.examples.SparkPi \
           --master k8s://${K8S_SERVER}:443 \
           --deploy-mode cluster \
           --name sparkBQ \
           --conf spark.kubernetes.namespace=$NAMESPACE \
           --conf spark.network.timeout=300 \
           --conf spark.executor.instances=3 \
           --conf spark.kubernetes.allocation.batch.size=3 \
           --conf spark.kubernetes.allocation.batch.delay=1 \
           --conf spark.driver.cores=3 \
           --conf spark.executor.cores=3 \
           --conf spark.driver.memory=8092m \
           --conf spark.executor.memory=8092m \
           --conf spark.dynamicAllocation.enabled=true \
           --conf spark.dynamicAllocation.shuffleTracking.enabled=true \
           --conf spark.kubernetes.driver.pod.name=spark-pi-driver \
           --conf spark.kubernetes.driver.container.image=${SPARK_IMAGE} \
           --conf spark.kubernetes.executor.container.image=${SPARK_IMAGE} \
           --conf
spark.kubernetes.authenticate.driver.serviceAccountName=spark \
           --conf spark.driver.extraJavaOptions=
"-Dio.netty.tryReflectionSetAccessible=true" \
           --conf spark.executor.extraJavaOptions=
"-Dio.netty.tryReflectionSetAccessible=true"\
           --conf spark.kubernetes.file.upload.path=file:///tmp \
           local:///opt/spark/examples/jars/spark-examples_2.12-3.2.1.jar

Thanks
GK

On Thu, Feb 17, 2022 at 6:55 PM Mich Talebzadeh <mich.talebza...@gmail.com>
wrote:

> Hi Gnana,
>
> That JAR file /home/gnana_kumar123/spark/spark-3.2.1-
> bin-hadoop3.2/examples/jars/spark-examples_2.12-3.2.1.jar, is not visible
> to the GKE cluster such that all nodes can read it. I suggest that you put
> it on gs:// bucket in GCP and access it from there.
>
>
> HTH
>
>
>    view my Linkedin profile
> <https://www.linkedin.com/in/mich-talebzadeh-ph-d-5205b2/>
>
>
>  https://en.everybodywiki.com/Mich_Talebzadeh
>
>
>
> *Disclaimer:* Use it at your own risk. Any and all responsibility for any
> loss, damage or destruction of data or any other property which may arise
> from relying on this email's technical content is explicitly disclaimed.
> The author will in no case be liable for any monetary damages arising from
> such loss, damage or destruction.
>
>
>
>
> On Thu, 17 Feb 2022 at 13:05, Gnana Kumar <gnana.kumar...@gmail.com>
> wrote:
>
>> Hi There,
>>
>> I'm getting below error though I pass --class and --jars values
>> while submitting a spark job through Spark-Submit.
>> Please help.
>>
>> Exception in thread "main" org.apache.spark.SparkException: Failed to get
>> main class in JAR with error 'File file:/home/gnana_kumar123/spark/  does
>> not exist'.  Please specify one with --class.
>>         at
>> org.apache.spark.deploy.SparkSubmit.error(SparkSubmit.scala:972)
>>         at
>> org.apache.spark.deploy.SparkSubmit.prepareSubmitEnvironment(SparkSubmit.scala:486)
>>         at org.apache.spark.deploy.SparkSubmit.org
>> $apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:898)
>>         at
>> org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:180)
>>         at
>> org.apache.spark.deploy.SparkSubmit.submit(SparkSubmit.scala:203)
>>         at
>> org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:90)
>>         at
>> org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:1043)
>>         at
>> org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:1052)
>>         at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
>>
>>
>>
>> ~/spark/spark-3.2.1-bin-hadoop3.2/bin/spark-submit \
>>            --master k8s://${K8S_SERVER}:443 \
>>            --deploy-mode cluster \
>>            --name sparkBQ \
>>            --conf spark.kubernetes.namespace=$NAMESPACE \
>>            --conf spark.network.timeout=300 \
>>            --conf spark.executor.instances=3 \
>>            --conf spark.kubernetes.allocation.batch.size=3 \
>>            --conf spark.kubernetes.allocation.batch.delay=1 \
>>            --conf spark.driver.cores=3 \
>>            --conf spark.executor.cores=3 \
>>            --conf spark.driver.memory=8092m \
>>            --conf spark.executor.memory=8092m \
>>            --conf spark.dynamicAllocation.enabled=true \
>>            --conf spark.dynamicAllocation.shuffleTracking.enabled=true \
>>            --conf spark.kubernetes.driver.container.image=${SPARK_IMAGE}
>>  \
>>            --conf spark.kubernetes.executor.container.image=
>> ${SPARK_IMAGE} \
>>
>>            --conf 
>> spark.kubernetes.authenticate.driver.serviceAccountName=spark \
>>            --conf spark.driver.extraJavaOptions=
>> "-Dio.netty.tryReflectionSetAccessible=true" \
>>            --conf spark.executor.extraJavaOptions=
>> "-Dio.netty.tryReflectionSetAccessible=true" \
>>            --class org.apache.spark.examples.SparkPi \
>>
>>            --jars 
>> /home/gnana_kumar123/spark/spark-3.2.1-bin-hadoop3.2/examples/jars/spark-examples_2.12-3.2.1.jar
>>
>> Thanks
>> GK
>>
>>
>>
>> On Wed, Feb 16, 2022 at 11:11 PM Gnana Kumar <gnana.kumar...@gmail.com>
>> wrote:
>>
>>> Hi Mich
>>>
>>> Also I would like to run Spark nodes ( Master and Worker nodes in
>>> Kubernetes) and then run my Java Spark application from a JAR file.
>>>
>>> Can you please let me know how to specify the JAR file and the MAIN
>>> class.
>>>
>>> Thanks
>>> GK
>>>
>>> On Wed, Feb 16, 2022 at 10:36 PM Gnana Kumar <gnana.kumar...@gmail.com>
>>> wrote:
>>>
>>>> Hi Mich,
>>>>
>>>> I have built the image using the Dockerfile present
>>>> in spark-3.2.1-bin-hadoop3.2.tgz.
>>>>
>>>> Also I have pushed the same image to my docker hub account ie.
>>>> docker.io/gnanakumar123/spark3.2.1:latest
>>>>
>>>> I believe spark submit can pull image from docker hub when I run from
>>>> GKE's Cloud Shell. Please confirm.
>>>>
>>>> Below is the command I'm running.
>>>>
>>>> ./spark-submit \
>>>>   --master k8s://$K8S_SERVER \
>>>>   --deploy-mode cluster \
>>>>   --name spark-driver-pod \
>>>>   --class org.apache.spark.examples.SparkPi \
>>>>   --conf spark.executor.instances=2 \
>>>>   --conf spark.kubernetes.driver.container.image=
>>>> docker.io/gnanakumar123/spark3.2.1:latest \
>>>>   --conf spark.kubernetes.executor.container.image=
>>>> docker.io/gnanakumar123/spark3.2.1:latest \
>>>>   --conf spark.kubernetes.container.image=
>>>> docker.io/gnanakumar123/spark3.2.1:latest \
>>>>   --conf spark.kubernetes.driver.pod.name=spark-driver-pod \
>>>>   --conf spark.kubernetes.namespace=spark-demo \
>>>>   --conf spark.kubernetes.container.image.pullPolicy=Never \
>>>>   --conf spark.kubernetes.authenticate.driver.serviceAccountName=spark \
>>>>     $SPARK_HOME/examples/jars/spark-examples_2.12-3.2.1.jar
>>>>
>>>> Thanks
>>>> GK
>>>>
>>>>
>>>> On Mon, Feb 14, 2022 at 10:50 PM Mich Talebzadeh <
>>>> mich.talebza...@gmail.com> wrote:
>>>>
>>>>> Hi
>>>>>
>>>>>
>>>>> It is complaining about the missing driver container image. Does
>>>>> $SPARK_IMAGE point to a valid image in the GCP container registry?
>>>>>
>>>>> Example for a docker image for PySpark
>>>>>
>>>>>
>>>>> IMAGEDRIVER="eu.gcr.io/
>>>>> <PROJRECT>/spark-py:3.1.1-scala_2.12-8-jre-slim-buster-java8PlusPackages"
>>>>>
>>>>>
>>>>>         spark-submit --verbose \
>>>>>
>>>>>            --properties-file ${property_file} \
>>>>>
>>>>>            --master k8s://https://$KUBERNETES_MASTER_IP:443 \
>>>>>
>>>>>            --deploy-mode cluster \
>>>>>
>>>>>            --name sparkBQ \
>>>>>
>>>>>            --py-files $CODE_DIRECTORY_CLOUD/spark_on_gke.zip \
>>>>>
>>>>>            --conf spark.kubernetes.namespace=$NAMESPACE \
>>>>>
>>>>>            --conf spark.network.timeout=300 \
>>>>>
>>>>>            --conf spark.executor.instances=$NEXEC \
>>>>>
>>>>>            --conf spark.kubernetes.allocation.batch.size=3 \
>>>>>
>>>>>            --conf spark.kubernetes.allocation.batch.delay=1 \
>>>>>
>>>>>            --conf spark.driver.cores=3 \
>>>>>
>>>>>            --conf spark.executor.cores=3 \
>>>>>
>>>>>            --conf spark.driver.memory=8092m \
>>>>>
>>>>>            --conf spark.executor.memory=8092m \
>>>>>
>>>>>            --conf spark.dynamicAllocation.enabled=true \
>>>>>
>>>>>            --conf spark.dynamicAllocation.shuffleTracking.enabled=true
>>>>> \
>>>>>
>>>>>            --conf
>>>>> spark.kubernetes.driver.container.image=${IMAGEDRIVER} \
>>>>>
>>>>>            --conf
>>>>> spark.kubernetes.executor.container.image=${IMAGEDRIVER} \
>>>>>
>>>>>            --conf
>>>>> spark.kubernetes.authenticate.driver.serviceAccountName=spark-bq \
>>>>>
>>>>>            --conf
>>>>> spark.driver.extraJavaOptions="-Dio.netty.tryReflectionSetAccessible=true"
>>>>>  \
>>>>>
>>>>>            --conf
>>>>> spark.executor.extraJavaOptions="-Dio.netty.tryReflectionSetAccessible=true"
>>>>> \
>>>>>
>>>>>            $CODE_DIRECTORY_CLOUD/${APPLICATION}
>>>>>
>>>>> HTH
>>>>>
>>>>>
>>>>>    view my Linkedin profile
>>>>> <https://www.linkedin.com/in/mich-talebzadeh-ph-d-5205b2/>
>>>>>
>>>>>
>>>>>  https://en.everybodywiki.com/Mich_Talebzadeh
>>>>>
>>>>>
>>>>>
>>>>> *Disclaimer:* Use it at your own risk. Any and all responsibility for
>>>>> any loss, damage or destruction of data or any other property which may
>>>>> arise from relying on this email's technical content is explicitly
>>>>> disclaimed. The author will in no case be liable for any monetary damages
>>>>> arising from such loss, damage or destruction.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Mon, 14 Feb 2022 at 17:04, Gnana Kumar <gnana.kumar...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Also im using the below parameters while submitting the spark job.
>>>>>>
>>>>>> spark-submit \
>>>>>>   --master k8s://$K8S_SERVER \
>>>>>>   --deploy-mode cluster \
>>>>>>   --name $POD_NAME \
>>>>>>   --class org.apache.spark.examples.SparkPi \
>>>>>>   --conf spark.executor.instances=2 \
>>>>>>   --conf spark.kubernetes.driver.container.image=$SPARK_IMAGE \
>>>>>>   --conf spark.kubernetes.executor.container.image=$SPARK_IMAGE \
>>>>>>   --conf spark.kubernetes.container.image=$SPARK_IMAGE \
>>>>>>   --conf spark.kubernetes.driver.pod.name=$POD_NAME \
>>>>>>   --conf spark.kubernetes.namespace=spark-demo \
>>>>>>   --conf spark.kubernetes.container.image.pullPolicy=Never \
>>>>>>   --conf
>>>>>> spark.kubernetes.authenticate.driver.serviceAccountName=spark \
>>>>>>     $SPARK_HOME/examples/jars/spark-examples_2.12-3.2.1.jar
>>>>>>
>>>>>> On Mon, Feb 14, 2022 at 9:51 PM Gnana Kumar <gnana.kumar...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi There,
>>>>>>>
>>>>>>> I have been trying to run Spark 3.2.1 in Google Cloud's Kubernetes
>>>>>>> Cluster version 1.19 or 1.21
>>>>>>>
>>>>>>> But I kept on getting on following error and could not proceed.
>>>>>>>
>>>>>>> Please help me resolve this issue.
>>>>>>>
>>>>>>> 22/02/14 16:00:48 INFO SparkKubernetesClientFactory:
>>>>>>> Auto-configuring K8S client using current context from users K8S config 
>>>>>>> file
>>>>>>> Exception in thread "main" org.apache.spark.SparkException: Must
>>>>>>> specify the driver container image
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.features.BasicDriverFeatureStep.$anonfun$driverContainerImage$1(BasicDriverFeatureStep.scala:45)
>>>>>>>         at scala.Option.getOrElse(Option.scala:189)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.features.BasicDriverFeatureStep.<init>(BasicDriverFeatureStep.scala:45)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.submit.KubernetesDriverBuilder.buildFromFeatures(KubernetesDriverBuilder.scala:46)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.submit.Client.run(KubernetesClientApplication.scala:106)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.$anonfun$run$4(KubernetesClientApplication.scala:220)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.$anonfun$run$4$adapted(KubernetesClientApplication.scala:214)
>>>>>>>         at
>>>>>>> org.apache.spark.util.Utils$.tryWithResource(Utils.scala:2713)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.run(KubernetesClientApplication.scala:214)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.start(KubernetesClientApplication.scala:186)
>>>>>>>         at org.apache.spark.deploy.SparkSubmit.org
>>>>>>> $apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:955)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:180)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.SparkSubmit.submit(SparkSubmit.scala:203)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:90)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:1043)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:1052)
>>>>>>>         at
>>>>>>> org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
>>>>>>>
>>>>>>> --
>>>>>>> Thanks
>>>>>>> Gnana
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks
>>>>>> Gnana
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Thanks
>>>> Gnana
>>>>
>>>
>>>
>>> --
>>> Thanks
>>> Gnana
>>>
>>
>>
>> --
>> Thanks
>> Gnana
>>
>>
>> --
>> Thanks
>> Gnana
>>
>

-- 
Thanks
Gnana

Reply via email to