Spark 在 Yarn 上运行 Spark 应用程序

Posted @SmartSi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark 在 Yarn 上运行 Spark 应用程序相关的知识,希望对你有一定的参考价值。

在 Yarn 上运行 Spark 提供了与其他 Hadoop 组件最紧密的集成,也是在已有 Hadoop 集群上使用 Spark 的最简单的方法。为了在 Yarn 上运行 Spark 应用程序,Spark 提供了两种部署模式:Client 模式和 Cluster 模式。Client 模式的 Driver 在客户端运行,而 Cluster 模式的 Driver 在 Yarn 的 Application Master 上运行。

对于具有任何交互式组件的程序(例如,spark-shell,pyspark)都必须使用 Client 模式。Client 模式在构建 Spark 应用程序时也很有用,因为任何调试输出都是立即可见的。Cluster 模式适用于生产作业,因为整个应用在集群上运行,这样做更容易保留日志文件(包括来自 Driver 的日志文件)以供日后的异常检查。

1. 部署模式

在 YARN 中,每个应用程序实例都有一个 ApplicationMaster 进程,该进程是为该应用程序启动的第一个容器。应用程序负责从 ResourceManager 上请求资源。一旦分配了资源,应用程序将指示 NodeManagers 启动容器。ApplicationMasters 消除了对活跃客户端的依赖:启动应用程序的进程可以终止,并且从在集群上由 YARN 管理的进程继续协作运行。

有关指定部署模式的选项,请参阅Spark 应用程序部署工具 spark-submit

1.1 Client 部署模式

在 Client 模式下,Spark Driver 在提交作业的主机上运行。Ap

以上是关于Spark 在 Yarn 上运行 Spark 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Spark基础:Spark on Yarn(上)

3天掌握Spark-- Spark on YARN

对于运行在 YARN 上的 spark 应用,哪种部署方式更好——客户端还是集群

Spark on Yarn 流程

Spark记录-Spark On YARN内存分配(转载)

应用程序_(状态:接受)的应用程序报告永远不会结束 Spark 提交(在 YARN 上使用 Spark 1.2.0)