有一些参数决定了yarn可以通过容器分配的内存和cpu的最大值、最小值和总数
例如:
yarn.nodemanager.resource.memory-mb
yarn.scheduler.maximum-allocation-mb
yarn.scheduler.minimum-allocation-mb
yarn.nodemanager.resource.cpu-vcores
Yarn.调度程序.最大分配-vcore
Yarn.调度器.最小分配-vcore
还有一些Spark侧参数似乎可以控制类似的分配:
spark.executor.instances
spark.executor.memory
spark.executor.cores
等等
当两组参数根据对方设定的界限都不可行时会发生什么。例如:如果yarn.scheduler.maximum-allocation-mb被设置为1G,而spark.executor.memory被设置为2G,会怎么样?对于其他参数,也可以想象出类似的冲突和不可行性。
在这种情况下会发生什么?以及,建议如何设置这些参数?
1条答案
按热度按时间sgtfey8w1#
When running Spark on YARN, each Spark executor runs as a YARN container
以spark.executor.memory为例:
设置参数的建议取决于您的硬件资源和此计算机上运行的其他服务。您可以先尝试使用默认值,然后通过监视计算机资源进行调整