使用纱线资源管理器的困惑

Confusion using Yarn Resource Manager

我正在尝试 运行 Amazon AWS 中的一个简单的 pyspark 作业,它被配置为通过 spark-default.conf 文件使用 Yarn。我对 Yarn 部署代码有点困惑。

我看到一些示例代码如下:

conf = SparkConf()
conf.setMaster('yarn-client')
conf.setAppName('spark-yarn')
sc = SparkContext(conf=conf)

而且我不确定在指定 'yarn-client' 的情况下我应该如何执行 spark 作业。我通常这样做:

$spark-submit --deploy-mode client spark-job.py

但是

有什么区别
$spark-submit --deploy-mode client spark-job.py

$spark-submit spark-job.py

我如何识别查看 spark 日志的作业 运行 是客户端模式还是集群模式还是 yarn-client?

默认--deploy-mode是客户端。 因此,以下两个 spark-submit 都将在客户端模式下 运行。

$spark-submit --deploy-mode client spark-job.py

$spark-submit spark-job.py

如果您指定--master yarn,现在它将运行 in yarn in client mode。

注意: --master 集群的 master URL(例如对于独立集群 spark://23.195.26.187:7077) 模式类型 *独立 *纱 *金币 *Kubernetes

--deploy-mode:是否将你的驱动程序部署在工作节点(集群)或本地作为外部客户端(客户端)(默认:客户端) *客户 *集群