Spark streaming 和 Spark 应用程序可以 运行 在同一个 YARN 集群中吗?
Can Spark streaming and Spark applications be run within the same YARN cluster?
大家好,新年快乐 ;) !
我正在使用 Apache Spark、HDFS 和 Elastichsearch 构建一个 lambda 架构。
在下图中,这是我正在尝试做的事情:
到目前为止,我已经在 java 中为我的 spark streaming 和 spark 应用程序编写了源代码。我在 spark 文档中读到 spark 在 Mesos 或 YARN clutser 中可以是 运行。如图所示,我已经有一个 hadoop 集群。是否可以 运行 我的 spark streaming 和 spark 应用程序在同一个 hadoop 集群中?如果是,是否有任何特定的配置要做(例如节点数、RAM...)。或者我是否必须为 Spark Streaming 添加专门的 hadoop 集群?
希望我的解释清楚。
亚西尔
有可能。您将流式处理和批处理应用程序提交到同一个 yarn 集群。但是在这两个作业之间共享集群资源可能有点棘手(根据我的理解)。
所以我建议您查看 Spark Jobserver 以提交您的申请。 Spark-jobserver 当您想维护多个 spark 上下文时,让您的生活更轻松。两个应用程序所需的所有配置都集中在一处。
您不需要为 运行 spark streaming 构建单独的集群。
将 spark.master
属性 更改为 conf/spark-defaults.conf
文件中的 yarn-client
或 yarn-cluster
。如此指定时,提交的spark应用程序将由YARN的ApplicationMaster处理,并由NodeManagers执行。
另外修改 cores 和 memory 的这些属性以使 Spark 与 Yarn 保持一致。
在spark-defaults.conf
spark.executors.memory
spark.executors.cores
spark.executors.instances
在yarn-site.xml
yarn.nodemanager.resource.memory-mb
yarn.nodemanager.resource.cpu-vcores
否则可能导致死锁或集群资源利用不当。
运行 Spark on Yarn 集群资源管理参考here
大家好,新年快乐 ;) !
我正在使用 Apache Spark、HDFS 和 Elastichsearch 构建一个 lambda 架构。
在下图中,这是我正在尝试做的事情:
到目前为止,我已经在 java 中为我的 spark streaming 和 spark 应用程序编写了源代码。我在 spark 文档中读到 spark 在 Mesos 或 YARN clutser 中可以是 运行。如图所示,我已经有一个 hadoop 集群。是否可以 运行 我的 spark streaming 和 spark 应用程序在同一个 hadoop 集群中?如果是,是否有任何特定的配置要做(例如节点数、RAM...)。或者我是否必须为 Spark Streaming 添加专门的 hadoop 集群?
希望我的解释清楚。
亚西尔
有可能。您将流式处理和批处理应用程序提交到同一个 yarn 集群。但是在这两个作业之间共享集群资源可能有点棘手(根据我的理解)。
所以我建议您查看 Spark Jobserver 以提交您的申请。 Spark-jobserver 当您想维护多个 spark 上下文时,让您的生活更轻松。两个应用程序所需的所有配置都集中在一处。
您不需要为 运行 spark streaming 构建单独的集群。
将 spark.master
属性 更改为 conf/spark-defaults.conf
文件中的 yarn-client
或 yarn-cluster
。如此指定时,提交的spark应用程序将由YARN的ApplicationMaster处理,并由NodeManagers执行。
另外修改 cores 和 memory 的这些属性以使 Spark 与 Yarn 保持一致。
在spark-defaults.conf
spark.executors.memory
spark.executors.cores
spark.executors.instances
在yarn-site.xml
yarn.nodemanager.resource.memory-mb
yarn.nodemanager.resource.cpu-vcores
否则可能导致死锁或集群资源利用不当。
运行 Spark on Yarn 集群资源管理参考here