hadoop队列管理(指定queue跑程序)

本文介绍了Hadoop升级至CDH5后,队列管理变为资源池分配的方式。在Hadoop 2.0中,采用平级队列组织,允许管理员将用户分配到多个队列并进行管理。为了有效分配资源,需要借助作业调度器。线上环境通常设置多个队列,如default, queue1, queue2和queue3。通过在代码中配置`mapred.job.queue.name`,可以指定队列运行程序。此外,配置`mapred.acls.enabled`等属性来控制提交作业和管理作业的权限。每个队列的资源量和其他信息则在其他配置文件中定义。" 132990910,20038166,2017年物联网中的Linux内核开发进展,"['物联网', 'Linux', '运维']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

hadoop 升级到cdh5后,队列管理被取消,而是统一用资源池分配。 





hadoop2.0版本,Hadoop采用了平级队列组织方式,,管理员可将用户分到若干个扁平队列中,在每个队列中,可指定一个或几个队列管理员管理这些用户,比如杀死任意用户的作业,修改任意用户作业的优先级。

但这还不够,需要将资源划分到这几个队列中,并按照一定的策略完成资源分配,这就需要Hadoop作业调度器的支持。

总之,在Hadoop中,队列的组织是队列管理和资源分配的基础。


线上环境,设置成三个队列,分别是default,queue1,queue2,queue3。

在编写代码时,设定

Configuration

刷新 Hadoop 队列的配置或状态主要涉及 YARN 容量调度器(Capacity Scheduler)的相关操作。在修改了队列配置文件(如 `capacity-scheduler.xml`)后,需要通过命令刷新队列,使新的配置生效。 刷新队列的命令如下: ```bash ${HADOOP_HOME}/bin/yarn rmadmin -refreshQueues ``` 如果 `HADOOP_HOME/bin` 已经添加到系统路径中,也可以直接使用以下命令: ```bash yarn rmadmin -refreshQueues ``` 需要注意的是,该命令必须在 YARN 集群的主节点上执行,并且命令末尾的 `s` 不能省略,否则会导致命令执行失败[^3]。 此外,在配置文件中定义队列时,可以设置访问控制、资源配额等参数。例如,通过以下配置可以控制用户提交到队列的任务的最大优先级: ```xml <property> <name>yarn.scheduler.capacity.root.default.acl_application_max_priority</name> <value>*</value> </property> ``` 该配置允许所有用户提交任务到 `default` 队列,并使用任意优先级。类似的配置可以应用于其他队列,如 `xtask`、`ea`、`ea_dev`、`ea_prod` 等[^4]。 在刷新队列之前,请确保已经正确配置了 `capacity-scheduler.xml` 文件,并且所有节点的配置保持一致。如果使用了其他调度器(如 `CapacityTaskScheduler`),还需要检查 `mapred-site.xml` 中的调度器配置是否正确。例如: ```xml <property> <name>mapred.jobtracker.taskScheduler</name> <value>org.apache.hadoop.mapred.CapacityTaskScheduler</value> </property> <property> <name>mapred.queue.names</name> <value>default,hive,pig</value> </property> ``` 上述配置指定了使用 `CapacityTaskScheduler`,并定义了三个可用队列:`default`、`hive` 和 `pig`[^2]。 刷新队列后,可以通过 YARN 的 Web UI 或相关命令查看队列状态,确保配置更新已生效。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值