[英]Spark Worker and Executors Cores
I have a Spark Cluster running in YARN mode on top of HDFS. 我在HDFS上有一个以YARN模式运行的Spark群集。 I launched one worker with 2 cores and 2g of memory.
我启动了一个具有2个内核和2g内存的工作程序。 Then I submitted a job with dynamic configuration of 1 executor with 3 cores.
然后,我提交了具有1个具有3个核心的执行程序的动态配置的作业。 Still, my job is able to run.
不过,我的工作仍然可以执行。 Can somebody explain the difference between the number of cores with which the worker is launched and the ones requested for the executors.
有人可以解释一下启动该工作程序的内核数量与为执行程序请求的内核数量之间的区别。 My understanding was since the executors run inside the workers they cannot acquire more resources than those available for the worker.
我的理解是,由于执行者在工人内部运行,因此他们获得的资源无法超过工人可用的资源。
Check for parameter yarn.nodemanager.resource.cpu-vcores in yarn-site.xml. 检查yarn-site.xml中的参数yarn.nodemanager.resource.cpu-vcores。
yarn.nodemanager.resource.cpu-vcores controls the maximum sum of cores used by the containers on each node. yarn.nodemanager.resource.cpu-vcores控制每个节点上的容器使用的最大核心总数。
->Spark launches n number of executors inside worker nodes. ->火花在工作节点内启动n个执行程序。 ->Spark uses number of cores and executor-memory parameter for launching executors at time of application submit to spark cluster.
-> Spark在提交到Spark集群时使用内核数和executor-memory参数来启动执行程序。 ->In spark submit we can not specify number of cores for a worker node.
->在spark提交中,我们无法为工作节点指定核心数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.