我可以在集群模式下 运行 dataproc 作业吗

Can I run dataproc jobs in cluster mode

刚开始熟悉 GCP dataproc。当我使用 gcloud dataproc jobs submit pyspark 时,我注意到作业是通过 spark.submit.deployMode=client 提交的。 spark.submit.deployMode=cluster 是我们的选择吗?

是的,您可以通过指定 --properties spark.submit.deployMode=cluster。请注意,驱动程序输出将在 yarn userlogs 中(您可以从控制台在 Stackdriver Logging 中访问它们)。默认情况下,我们 运行 在客户端模式下将驱动程序输出流式传输给您。

Found here 隐藏在 Google:

的操作方法中

By default, Dataproc runs Spark jobs in client mode, and streams the driver output for viewing as explained, below. However, if the user if the user creates the Dataproc cluster by setting cluster properties to --properties: spark:spark.submit.deployMode=cluster or submits the job in cluster mode by setting job properties to --properties spark.submit.deployMode=cluster, driver output is listed in YARN userlogs, which can be accessed in Logging.

但是,使用集群模式部署和在集群模式下提交作业之间的区别并不完全清楚。我必须 运行 一个实验,但我可能认为如果您在客户端模式下启动集群,我会看到执行程序日志被流式传输到控制台输出(与驱动程序日志一起收集)。如果您以集群模式启动它,则只能在作业控制台中查看驱动程序日志。如果您以集群模式部署作业,则不会向作业控制台发送任何内容,您必须从 DataProc 将 YARN 容器日志转储到的任何位置获取日志(同样,必须配置的内容)