如何在GCP中以集群模式运行Spark作业?

时间:2020-03-16 11:12:56

标签: apache-spark google-cloud-platform google-cloud-dataproc

在GCP中,我们要在data [proc集群上以集群模式运行spark作业。当前,我们正在使用以下命令:-

gcloud dataproc jobs submit spark --cluster xxxx-xxxx-dataproc-cluster01 --region us-west2 --xxx.xxxx.xxx.xxx.xxx.xxx.xxxx.xxxx --jars gs://xxx-xxxx-poc/cluster-compute/lib/xxxxxxxx-cluster-computation-jar-0.0.1-SNAPSHOT-allinone.jar --properties=spark:spark.submit.deployMode=cluster --properties=spark.driver.extraClassPath=/xxxx/xxxx/xxxx/ -- -c xxxxxxxx -a

但是,以上使用作业是以本地模式提交的。我们需要在集群模式下运行。

2 个答案:

答案 0 :(得分:1)

您可以通过指定以下--properties spark.submit.deployMode=cluster

在集群模式下运行它

在您的示例中,deployMode看起来不正确。

--properties=spark:spark.submit.deployMode=cluster 

看起来像spark:还是多余的。

这是提交作业的全部命令

gcloud dataproc jobs submit pyspark --cluster XXXXX --region us-central1 --properties="spark.submit.deployMode=cluster" gs://dataproc-examples/pyspark/hello-world/hello-world.py

下面是在群集模式下运行的作业的屏幕截图

Spark Job Configuration

更新

要在下面传递多个属性是dataproc作业提交

gcloud dataproc jobs submit pyspark --cluster cluster-e0a0 --region us-central1 --properties="spark.submit.deployMode=cluster","spark.driver.extraClassPath=/xxxxxx/configuration/cluster-mode/" gs://dataproc-examples/pyspark/hello-world/hello-world.py

在运行以下作业时,屏幕截图显示了deployMode为Cluster并且还设置了额外的类路径

Multiple properties

答案 1 :(得分:0)

如果要通过云外壳运行spark作业,请使用以下命令

gcloud dataproc jobs submit spark --cluster cluster-test

-类org.apache.spark.examples.xxxx --jars文件:///usr/lib/spark/exampleas/jars/spark-examples.jar --1000