我有一个包含5个节点的YARN集群,其中4个是工作节点。
当我运行Spark作业时,我设置了" - num-executors 4",但是当我从Spark应用程序页面检查时,仍然只有3个活动执行程序,这意味着一个节点不执行什么,是什么原因?
答案 0 :(得分:1)
我遇到了完全相同的问题。我相信原因与YARN的内存管理有关(我不会假装理解!),但解决它的是在配置文件中设置maximizeResourceAllocation
(如此处所述) http://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/emr-spark-configure.html)
在阿姆斯特丹举行的Spark峰会上,很多人都提到,即使设置了这个设置,他们偶尔会发现并非所有核心都被使用,所以为了确保使用所有核心我用{{1}开始工作其中X是我的执行程序可用的核心数。
我希望这会对你有所帮助。