CDH-腾讯课堂-资源管理

一、目的

在静态服务池中分配资源
使用动态资源池,配置资源,yarn中资源调度
推荐配置
在这里插入图片描述

二、资源管理overview

hadoop应用对集群资源的争抢

资源管理的目标

确保关键任务获取合理资源
协调用户组之间的资源争抢
阻止一个用户占用过多资源

资源管理的工具

使用linux的组(cgroups)

  • 用于不同组件之间的分配
  • 通过cdh的静态服务池来配置

何时使用?如果有很多非yarn的任务,比如hbase和impala或者说是邮件服务器、ftp服务器,此场景适宜于静态服务池。
在这里插入图片描述
配置项?
在这里插入图片描述
内存硬限制:绝对不能超过
内存软限制:可以超过,如果出现竞争,会把超过软限制的部分释放。硬限制一定要高于软限制的。软限制是下限。
CPU共享:
IO权重:
如何配置?通过linux的cgroups(linux的内核机制)来设置服务的上下限(比如mr和impala)
在这里插入图片描述

调度(yarn)和准入控制,通过动态资源池

调度器

解决container何时分给哪个应用。可以建立分配资源的规则,在有无竞争的情况下分配的会不同。
container是划分资源的单位

  • 3种调度器
    在这里插入图片描述
    FIFO,先到先得。
    Capacity,资源分配到pool,应用提交到queue,而pool和queue存在对应关系。每个pool内部是先进先出。
    实场中,spark给一个pool,hive给一个pool,spark任务放到sparkQueue,spark任务在sparkPool中是先进先出,但sparkQueue和hiveQueue之间是Capacity的,也就是按比例
    fair,CDH5默认的,也是生产中推荐的,这里的公平指的是按权重公平,并不是资源平均分。

在这里插入图片描述

fair

在公平调度器中,pool就是queue
默认情况下,每个用户都会对应一个queue,默认是root.用户名
在这里插入图片描述
池有层级关系,用户名的池的根池叫root。root是个根池。如下图:
root根池有2个子池,Alice和Bob,分别有15G的资源上限,但这15G是动态分配的,用的时候才分配。
在这里插入图片描述

分配规则:2种,一种只看内存;另一种都看,有一种主导资源。

1.只按内存,不考虑cpu。如下例子:
一共30G,Alice已经分了15,Bob已经分了5,2个pools分别继续需要10,此时会把剩下的10全部给Bob。所谓的公平,是按需。

在这里插入图片描述
2. 主导资源
在这里插入图片描述

最小参数

最小参数,优先级最高
比如如下3个queue,总共30,生产队列最小要20,Alice和Bob没有设置最小,demand的意思是正在运行的任务需要的资源,则首先把20分给Production。
3examples:
在这里插入图片描述
Procution没有正在运行的任务,则即使设置了最小,也不会分配
在这里插入图片描述
如果2个最小加起来超过total,则按min的比例分配
在这里插入图片描述

权重

可以替代最小资源选项,同样高度下,增加杯子的宽度,可以装更多东西。
weight默认是1
examples:
在这里插入图片描述
因为P设置了min=5,先把5给P,此时剩下25,因为B的weight是2,???

资源抢占

如果一个任务等了很长时间还没轮到,就会插队。
抢占分2种,公平和优先保证最小。

配置步骤:

先配置调度器
配置动态资源池

动态资源池配置

简称DRP,表示一组资源和一个调度策略的和。如果设置了静态服务池,则DRP不能超过静态服务池,比如在静态服务池中设置了yarn占用40%,则DRP不会超过40%
为什么配置DRP?
可以按时间来设置资源供给,比如月末任务多,会在月末增加资源供给
配置集,比如月末,生产的权重可以设为1,平时为2
可以设置应用和池的映射
placement rules,决定应用必须在哪个池跑
在这里插入图片描述
池内部的应用竞争资源也有3种规则?
在这里插入图片描述
用户的应用提交限制
限制一个用户提交的任务同一时刻运行的总个数

如何设置?
通过min、max、weights
在这里插入图片描述
配置集
在这里插入图片描述
添加DRP
公平调度器的配置
每10秒钟刷一次,所以改了不需要重启。
在这里插入图片描述

yarn的配置参数

1.在节点页面可以查看当前节点的资源被哪些服务使用

在这里插入图片描述

2.节点的资源不可能全给yarn用,所以在静态服务池中要设置上限,设置完之后,yarn的资源主要是NM,有2个参数用来给NM配内存和cores

memory-mb :NM节点中yarn任务可用的最大内存,推荐是用总的 - 非yarn任务(包括DN进程需要的)
cpu-vcores:节点物理cpu核数 - 1
在这里插入图片描述
表示一个RM(其实是container)的最小mb和cores
在这里插入图片描述
RM的增量
在这里插入图片描述

The task’s request thar are not multiples of these incremental-allocation values will be rounded up to the nearest increments
如果任务的请求不是这些增量分配值的倍数,则将四舍五入到最接近的增量

mr的map和reduce的内存,reduce建议是map的2倍
在这里插入图片描述
am的内存,这个不需要太高
在这里插入图片描述
在这里插入图片描述
堆内,不能超过map和reduce
在这里插入图片描述

example

在这里插入图片描述

默认设置

在这里插入图片描述

推荐

在这里插入图片描述

impala配置

impala没有使用yarn,所以需要单独设置资源限制

在这里插入图片描述
impala admission默认关闭
在这里插入图片描述
impala和mr同时在集群运行时
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CDH-6.3.2是由Cloudera提供的一个开源的Hadoop生态系统版本。CDH包含了许多Apache项目,如Hadoop、HBase、Hive、Impala等,并且集成了Cloudera自家开发的一些工具和服务。 要下载CDH-6.3.2,首先需要访问Cloudera官网(www.cloudera.com)。在官网上,可以找到下载页面,其中包含了各个版本的CDH。 在下载页面上,可以找到CDH-6.3.2的下载链接。点击相关链接后,会跳转到下载页面。在下载页面上,可以选择各个组件的二进制文件、文档以及示例代码等。 选择相应的组件二进制文件后,会开始下载CDH-6.3.2的安装包。下载的速度取决于网络连接的速度和服务器的负载情况。 一旦下载完成,就可以在本地进行安装。在安装之前,需要确保系统满足CDH的运行要求,如硬件配置和操作系统版本等。 CDH-6.3.2的安装过程是相对复杂和耗时的,需要仔细按照官方提供的文档进行操作。安装过程涉及到配置各个组件的参数、设置集群的配置文件以及启动服务等等。 一旦安装完成,就可以开始使用CDH-6.3.2了。CDH提供了一个Web界面,可以通过浏览器访问进行集群管理和监控。同时,也可以使用相应的命令行工具来操作和管理集群。 总结来说,要下载CDH-6.3.2,首先需要访问Cloudera官网的下载页面,选择相应的组件二进制文件进行下载。然后,按照官方文档的指引进行安装、配置和启动。最后,通过Web界面或命令行工具来管理和操作集群。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值