资源管理
更新时间:2024-07-17
YARN管理
1.进入MapReduce集群列表界面,点击集群名称进入详情界面。
2.选择侧边导航资源管理进入资源管理界面。资源管理包括Yarn资源队列管理、HDFS存储资源管理。
在资源管理页面的Yarn页面,每个队列拥有一个名为root的默认资源池。在列表页可以选择不同的调度类型。调度类型分为两种:Capacity Scheduler和FAIR Scheduler。
表一 调度类型说明
调度类型 | 类型说明 |
---|---|
Capacity Schedule | 多个组织共享一个Hadoop集群,每个组织可以分配到全部集群资源的一部分。每个组织被配置一个专门的队列,每个队列被配置为可以使用一定的集群资源。队列可以进一步按层次划分,这样每个组织内的不同用户能够共享该组织队列所分配的资源。在一个队列内,使用FIFO调度策略对应用进行调整。 |
FAIR Scheduler | 该调度方式旨在为所有运行的应用公平分配资源。下面解释资源是如何在队列之间公平共享的。想象两个用户A和B,分别拥有自己的队列。A启动一个作业,在B没有需求时A会分配到全部可用资源;当A的作业仍在运行时B启动一个作业,一段时间后,A和B的作业都将使用一半的集群资源。这时,如果B启动第二个作业且其他作业仍在运行,那么第二个作业将与B的其他作业(这里是B的第一个作业)公平的共享B所对应队列的资源。由于这里最终A有一个作业,B有两个作业,所以最终的资源分配是:B的每个作业将占用四分之一的集群资源,合计为一半的资源,而A的作业占用一半的资源。这就是资源在用户之间的公平共享。 |
表二 资源池字段说明
配置参数项 | Hadoop YARN对应参数项 | 说明 |
---|---|---|
名称 | - | 指资源池队列的名称,注意同一层级的资源池名称不能重复(必填) |
资源份额 | yarn.scheduler.capacity..capacity | 指该资源池队列占用资源份额,取值范围为0-100(必填) |
最大资源份额 | yarn.scheduler.capacity..maximum-capacity | 资源池限制的最大值,指队列占用资源的最大百分比 |
单个用户限制比例 | yarn.scheduler.capacity..user-limit-factor | 允许用户获取的队列资源,取值范围0-1.0(默认情况下值为1.0,确保单个用户不超过队列配置的资源) |
最大内存 | yarn.scheduler.capacity..maximum-allocation-mb | Resource Manager分配给单个容器的最大内存 |
最大虚核数 | yarn.scheduler.capacity..maximum-allocation-vcores | Resource Manager分配给单个容器的最大虚拟内核 |
最大应用数 | yarn.scheduler.capacity..maximum-applications | 队列允许处于运行和挂起状态的最大应用数 |
Application Master最大资源占比 | yarn.scheduler.capacity..maximum-am-resource-percent | 可运行application master的最大资源百分比 |
状态 | yarn.scheduler.capacity..state | 队列的运行状态。如果队列处于STOPPED状态,则新的application将不能提交给该队列以及其子队列 |
创建子队列
对创建好的资源池可以实现编辑、删除、创建子队列的操作。
- 在资源管理yarn队列管理中点击资源池操作列的创建子队列按钮,进入创建界面。
- 根据系统指引填写相关配置。注意:每个节点下的子队列的权重和必须等于100%。
表二 子队列配置说明
配置参数项 | Hadoop YARN对应参数项 | 说明 |
---|---|---|
子队列名称 | - | 指资源池队列的名称,注意同一层级的资源池名称不能重复(必填) |
权重 | weight | 资源池队列占用的资源份额权重 |
单个用户限制比例 | yarn.scheduler.capacity..user-limit-factor | 允许用户获取的队列资源,取值范围0-1.0(默认情况下值为1.0,确保单个用户不超过队列配置的资源) |
用户最低资源保证 | - | 每个用户最低可用资源 |
最大资源份额 | yarn.scheduler.capacity..maximum-capacity | 资源池限制的最大值,指队列占用资源的最大百分比 |
最大分配内存 | yarn.scheduler.capacity..maximum-allocation-mb | Resource Manager分配给单个容器的最大内存 |
最大分配虚核 | yarn.scheduler.capacity..maximum-allocation-vcores | Resource Manager分配给单个容器的最大虚拟内核 |
最大应用数 | yarn.scheduler.capacity..maximum-applications | 队列允许处于运行和挂起状态的最大应用数 |
Application Master 最大占比 | maxAMShare | 运行application master的资源份额占比(注:当该值为-1时,表示禁用该特性,AMShare不做检查) |
队列运行状态 | - | 分为running和stopped |
HDFS管理
在侧边导航选择资源管理-HDFS存储资源管理,可查看已创建的test用户对应的空间目录以及配额等内容,可以查看到当前用户使用的情况。
- 点击创建目录,选择租户并且按要求填写路径后确定目录创建成功。
- 选择对应目录操作项修改配额按钮,即可修改用户的配额。系统每隔10分钟自动同步配置到集群。也可以点击同步配置到集群进行同步。同步后无需重启HDFS服务即可生效。
- Namespace配额:用户目录下能存在的目录数和文件数的配额,默认值200
- 存储空间配额:用户目录存储空间大小,默认值2000M
- 点击删除按钮可对目录进行删除,弹窗再次确认后即可删除成功。