美文网首页spark||flink||scala
Yarn 动态资源池配置

Yarn 动态资源池配置

作者: Wille_Li | 来源:发表于2018-03-07 18:31 被阅读0次

1. 配置动态资源池目的

2. 操作步骤

2.1 开启 HDFS 权限检查(默认是开启的)

HDFS权限

2.2 给集群创建新用户, 以 bi_dev 为例。

// 创建用户组
# groupadd bi_dev
// 创建用户
# useradd -s /bin/sh -g bi_dev -d /usr/bi_dev -m bi_dev
// 设置密码
# passwd bi_dev

// hdfs 创建用户目录
# sudo -u hdfs hdfs dfs -mkdir /user/bi_dev
// 修改用户权限
# sudo -u hdfs hdfs dfs -chown bi_dev:bi_dev /user/bi_dev

3. 运行MapReduce程序 WordCount

# echo "Hello World, hello Belle." > file0
# echo "Hello Wille, hello BB." > file1
# hdfs dfs -mkdir -p /user/bi_dev/wordcount/input
# hdfs dfs -put file* /user/bi_dev/wordcount/input 
# hadoop jar /usr/local/cloudera/parcels/CDH/jars/hadoop-examples.jar wordcount wordcount/input wordcount/output
# hdfs dfs -getmerge wordcount/output output.txt
# cat output.txt
Belle.  1
hello   2
BB.     1
Wille,  1
Hello   2
World,  1

4. 开启资源管理器 ACL , 并设置相应的ACL(Admin ACL)

ACL配置
  • 选中启动REsourceManager ACL
  • 设置管理ACL用户和用户组
    其中yarn.acl.enable默认值为true。而对于yarn.admin.acl默认值为*,意味着所有人都可以管理Resource Manager (比如运行yarn rmadmin)、管理已提交 (比如取消 kill) 的任务。

格式:用户1,用户2,用户3 用户组1,用户组2,用户组3
PS:用户和用户组之间必须有个空格

5. 关闭未声明资源池的自动生成

未声明的池
  • 默认情况下,"Allow Undeclared Pools"可选项是选中的,需要关闭。否则如果用户指定一个尚未声明的资源池时,比如prod,YARN将会自动生成一个prod资源池。配置文件修改后需要重新启动YARN服务,重新部署客户端配置。

6. 配置“若用户提交任务不指定特定的queue,就使用 default 资源池”

默认队列配置

7. 进去动态资源池配置页面

动态资源池配置入口 动态资源池配置操作界面

7.1 资源池( 资源分配界面)。

主要配置项:
权重(%):动态权重,资源不是静态的,去其他池相关的资源共享
最大最小CPU、内存
正在运行的应用程序最大数量
计划策略
创建资源池


创建资源池

7.2 配置计划策略(对单独资源池控制)

配置计划策略

7.3 提交访问控制(对单独资源池控制)

提交访问控制

7.4 管理访问控制 (对单独资源池控制)

管理访问控制

7.5 验证访问控制

新建
用户: yan.jy
用户组:wms
初始化wordCount数据,见步骤3
在执行 hadoop 命令内加入资源池控制,如下图

验证资源池控制

8. 计划模式(资源池配置集)

可以根据不同时段使用不同的资源池配置。


计划模式

配置了计划模式,资源池会有多套配置,如下图:


配置集

计划规则主要控制配置有效时间段,创建计划规则如下图:


计划规则

9. 放置规则

主要作用:控制任务(Job、Task)使用资源池规则,即任务会根据以下规则放到对应资源池执行。


放置规则

10. 用户限制

主要作用:控制单个用户最大应用程序并发度。


image.png

相关文章

网友评论

    本文标题:Yarn 动态资源池配置

    本文链接:https://www.haomeiwen.com/subject/eyyjfftx.html