一、调度器
yarn的 三种调度器:
FIFO 先进先出
capacity 计算
Fair 公平 生产大部分使用的是公平调度器
1.FIFO先进先出,一个的简单调度器,适合低负载集群。(适合任务数量不多的情况下使用)。
示例:1job先提交,运行完成后,2job开始提交运行
2 .Capacity调度器,给不同队列(即用户或用户组)分配一个预期最小容量,在每个队列内部用层次化的FIFO来调度多个应用程序。(适用于有很多小的任务跑,需要占很多队列,不使用队列,会造成资源的浪费)。
示例:1job提交运行,当2job提交后,会在另一个队列进行2job的计算,1job和2job可以同时进行。
3.Fair公平调度器,针对不同的应用(也可以为用户或用户组),每个应用属于一个队列,主旨是让每个应用分配的资源大体相当。(当然可以设置权重),若是只有一个应用,那集群所有资源都是他的。 适用情况:共享大集群、队列之间有较大差别。(生产使用)
示例:1job先提交运行,2job也提交运行,从2job提交到获得资源会有一定的延迟,因为它需要等待1job释放占用的Container。当2job执行完成之后也会释放自己占用的资源,1job又获得了全部的系统资源。
二、常用命令
mapred常用命令:
mapred job
mapred job -list
#表示杀死正在运行的job
[-kill <job-id>]
#查看正在运行的job
[-list [all]]
yarn的常用命令:
-list
-kill
-kill <Application ID> Kills the application. CDH Web
-list List applications. Supports optional use
of -appTypes to filter applications based
on application type, and -appStates to
filter applications based on application
state.
注:kill要谨慎使用,在kill之前要进行确认是否确认需要kill