为什么mapreduce尝试因“调度程序抢占容器”而被杀死?

问题描述 投票:0回答:2

我刚刚注意到Hadoop上的许多Pig工作因以下原因而被杀死:Container preempted by scheduler

有人可以解释一下导致这种情况的原因,以及我是否应该(并且能够)对此做些什么?

谢谢!

hadoop apache-pig
2个回答
3
投票

如果您拥有公平的调度程序并启用了许多不同的队列,则优先级较高的应用程序可以终止您的作业(以抢占方式)。

Hortonworks有更详细的解释

https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.2/bk_yarn_resource_mgt/content/preemption.html

你应该做些什么吗?取决于您的申请是否在其SLA范围内并且在预期范围内执行。一般的良好做法是检查您的工作优先级和分配给它的队列。


1
投票

如果许多业务部门正在使用您的Hadoop集群。然后Admins为它们决定队列,每个队列都有自己的优先级(管理员也决定)。如果在调度程序级别启用了抢占,则优先级较高的应用程序不必等待,因为较低优先级的应用程序占用了可用容量。因此,在这种情况下,较低的专有任务必须释放资源,如果群集不可用则允许运行优先级较高的应用程序。

© www.soinside.com 2019 - 2024. All rights reserved.