Spark 作业不使用集群上的工作节点
Spark job not using the worker nodes on the cluster
我在 3 个节点的集群上设置了 spark,一个是我的 namenode-master(名为 h1),另外两个是我的 datanode-worker(名为 h2 和 h3)。当我向 运行 主机上的 spark 作业发出命令时,似乎该作业没有分发给工人,而只是在主机上完成。我给 运行 spark 作业的命令是
bin/spark-submit --class org.dataalgorithms.chap07.spark.FindAssociationRules /home/ubuntu/project_spark/data-algorithms-1.0.0.jar ./in/xaa
我之所以认为它只是 运行ning 在 master 上,是因为当我继续使用 Spark 应用程序 GUI 时,我只在执行程序列表中看到 master h1。我想我也应该在这里看到 h2 和 h3 我的工作节点吗?
SparkUI
如果我错了请纠正我。我是新手所以请原谅我的无知。
您尚未指定部署作业的模式。您需要指定 --deploy-mode 以将作业部署到集群,还需要指定 --master 可以是 YARN/Mesos。
此外,当您指定 YARN 时,您需要确保您正在使用的资源,如 executor-memory、executor-cores 和 num-executors 由集群管理器管理,即 YARN。 YARN 为您提供不同的调度程序来分配资源。因此,您需要检查您配置的调度程序类型。
在此处阅读有关调度程序的信息
https://blog.cloudera.com/blog/2016/01/untangling-apache-hadoop-yarn-part-3/
spark-submit --num-executors 50 --executor-memory 4G --executor-cores 4 --master yarn --deploy-mode cluster
感谢您的所有帮助和建议。我尝试了其中的许多,但最终出现了一些或其他错误。对我有帮助的是用我的常规命令指定 --master spark://IP:PORT 。所以我的新执行命令看起来像这样
bin/spark-submit --class org.dataalgorithms.chap07.spark.FindAssociationRules --master spark://IP:PORT /home/ubuntu/project_spark/data-algorithms-1.0.0.jar ./in/xaa
这在真正的分布式集群模式下启动了我的 spark 作业
我在 3 个节点的集群上设置了 spark,一个是我的 namenode-master(名为 h1),另外两个是我的 datanode-worker(名为 h2 和 h3)。当我向 运行 主机上的 spark 作业发出命令时,似乎该作业没有分发给工人,而只是在主机上完成。我给 运行 spark 作业的命令是
bin/spark-submit --class org.dataalgorithms.chap07.spark.FindAssociationRules /home/ubuntu/project_spark/data-algorithms-1.0.0.jar ./in/xaa
我之所以认为它只是 运行ning 在 master 上,是因为当我继续使用 Spark 应用程序 GUI 时,我只在执行程序列表中看到 master h1。我想我也应该在这里看到 h2 和 h3 我的工作节点吗? SparkUI
如果我错了请纠正我。我是新手所以请原谅我的无知。
您尚未指定部署作业的模式。您需要指定 --deploy-mode 以将作业部署到集群,还需要指定 --master 可以是 YARN/Mesos。
此外,当您指定 YARN 时,您需要确保您正在使用的资源,如 executor-memory、executor-cores 和 num-executors 由集群管理器管理,即 YARN。 YARN 为您提供不同的调度程序来分配资源。因此,您需要检查您配置的调度程序类型。
在此处阅读有关调度程序的信息
https://blog.cloudera.com/blog/2016/01/untangling-apache-hadoop-yarn-part-3/
spark-submit --num-executors 50 --executor-memory 4G --executor-cores 4 --master yarn --deploy-mode cluster
感谢您的所有帮助和建议。我尝试了其中的许多,但最终出现了一些或其他错误。对我有帮助的是用我的常规命令指定 --master spark://IP:PORT 。所以我的新执行命令看起来像这样
bin/spark-submit --class org.dataalgorithms.chap07.spark.FindAssociationRules --master spark://IP:PORT /home/ubuntu/project_spark/data-algorithms-1.0.0.jar ./in/xaa
这在真正的分布式集群模式下启动了我的 spark 作业