YARN标签调度策略_第1页
YARN标签调度策略_第2页
YARN标签调度策略_第3页
YARN标签调度策略_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1. YARN的节点标签11综述节点标签是一个把具有相似特性的节点划分到一个组的方法,应用可以指定运行在具有特定 标签的节点上。节点分区(分组):一个节点只能有一个分区,因此一个集群可以通过节点分区换分成的若干个不相交的子 集群。默认,节点数与DEFAULT分区(partition”)。用户需要指定不同的队列使用每一个分区的多少资源。有两种节点分区:Exclusive独占式):容器会分配给具有明确匹配分区名的节点(例如:请求partition = ”x” 的应用,容器将会分配给patition= x”的节点;请求DEFAULT partition的应用,容 器将分配给DEFAULT parti

2、tion节点)。Non-exclusive (非独占式):如果一个分区是非独占的,它会共享空闲资源给请求默认 分区的容器。用户可以指定被每一个队列可以访问的标签集,一个应用仅能够使用这些节点标签的子集,这些标签必须 可以被包含这个应用的队列所访问。12特性节点标签支持下面的特性:每一个节点被分配一个标签,因此一个集群可以被划分为几个不相交的分 区。集群划分:每一个节点被分配一个标签,因此一个集群可以被划分为几个不相交的分区。队列上节点标签的ACL权限控制:用户可以在每一个队列上设置可访问的标签,因此特定的队列只 能访问对应标签的一些节点。在资源请求中指定需要的节点标签,因此只有当节点具有相同标

3、签的时候才会被分配资源。如果没有 指定节点标签,相同的资源请求将只会分配到属于默认分区的节点。可操作性:节点标签和节点标签的映射可以通过重启RM来回复。更新节点标签:在RM运行的时候管理员可以更新节点上的标签和队列上的标签。13配置1.3.1.设置ResourceManager开启节点标签功能:在yarn-site.xml中设置下面的属性:PropertyValueyarn.node-labels.fs-store.root-dirhdfs:/namenode:port/path/to/store/node-labels/yarn.node-labels.enabledtrue注意:确保yar

4、n.node-labels.fs-store.root-dir指定的路径存在,并且RM有权限访问。如果用户想要把节点标签存储到本地文件系统中(取代HDFS),可以这样指定: HYPERLINK home/yarn/node-label file:/home/yarn/node-label给YARN添加或修改节点标签列表节点到标签的映射添加集群节点标签列表:添加节点标签:yarn rmadmin -addToClusterNodeLabels label_1(exclusive=true/false),label_2(exclusive=true/false)如果不指定 (exclusive.)

5、”, execlusive默认为 true给节点添加标签:执彳亍 yarn rmadmin -replaceLabelsOnNode “node1:port=label1 node2=label2” 把label1添加到节点node1上,把label2添加到节点node2上,如果不指定port,会 把标签添加到该节点上的所有NodeManagers (一个节点可以在同的端口上运行多个 NodeManagers)。给调度器配置节点标签Capacity Scheduler 配置:PropertyValueyarn.scheduler.capacity. capacity设置队列可以使用默认分区节点

6、资源的百分比。每一个父属性 的直接子属性的默认容量总和必须等于100yarn.scheduler.capacity.accessible-node-labels管理员需要指定每一个队列可以访问的标签集,多个标签用逗 号分隔,例如、hbase,storm,意思是队列可以访问hbase 和storm标签。所有的队列都可以访问没有打标签的节点, 用户不必指定。如果用户没有指定该属性,它会继承父队列的 该属性。如果用户想要明确的指定一个队列仅能够访问没有打 标签的节点,只需要给该属性一个空值即可。yarn.scheduler.capacity.accessible-node-labels.capaci

7、ty设置队列可以访问属于某个标签的节点资源的百分比。每一个父属性的所有直接子属性的容量总和必须等于100yarn.scheduler.capacity.accessible-node-labels.maximu类似于 yarn.scheduler.capacity.maximum-capacity,它是每一个队列所占标签的最大容量。默认是1PropertyValuem-capacity00.yarn.scheduler.capacity. , default-node-label-expression以“hbase”为例,意思是:如果应用在提交给队列时在资源请 求中没有指定节点标签,它会使用“

8、hbase”作为默认节点标签 表达式。默认,这个值是空的,因此应用会从没有打标签的节 点活的 containers。1.3.4.节点标签配置示例假设我们有下面的队列结构:root/ I engineer sales marketing在集群中我们有5个节点(hostname=h1,h2,h3,h4,h5),他们每一个有24G memory, 24 vcores,他们中有一个有GPU (假设是h5),因此管理员给h5打上GPU标签。假设用户有一个如下的容量调度器配置(这里使用key=value格式,便于阅读):yarn.scheduler.capacity.root.queues=enginee

9、ring,marketing,salesyarn.scheduler.capacity.root.engineering.capacity=33yarn.scheduler.capacity.root.marketing.capacity=34yarn.scheduler.capacity.root.sales.capacity=33yarn.scheduler.capacity.root.engineering.accessible-node-labels=GPU yarn.scheduler.capacity.root.marketing.accessible-node-labels=GP

10、Uyarn.scheduler.capacity.root.engineering.accessible-node-labels.GPU.capa city=50yarn.scheduler.capacity.root.marketing.accessible-node-labels.GPU.capaci ty=50yarn.scheduler.capacity.root.engineering.default-node-label-expression=G PU你可以看到root.engineering/marketing/sales.capacity=33,因此他们每一个都有未分区资源的

11、1/3,因此他们可以使用 h1h4 的 1/3 的资源,即:24*4*(1/3)= (32G mem, 32 v-cores)。并且只有engineering/marketing两个队列有权限访问GPU分区(看 root.accessible-node-labels)。engineering/marketing两个都可以保证战友GPU分区的1/2的资源,因此他们可以使用h5的1/2 的资源,即 24 * 0.5 = (12G mem, 12 v-cores)。注意:在完成了 Capacityscheduler的配置之后,执行yarn rmadmin -refreshQueues来时改变生 效。

12、到RM的WEB UI的scheduler界面检查你是否设置成功。1.3.5.为应用指定节点标签应用可以使用下面的Java APIs来为请求指定节点标签:ApplicationSubmissionContext.setNodeLabelExpression(.为应用的容器设置节点标签表 达式。ResourceRequest.setNodeLabelExpression(.)为个体资源请求设置节点标签表达式。这可 以覆盖ApplicationSubmissionContext中的节点标签表达式。ApplicationSubmissionContext 中指定 setAMContainerResourceRequest.setNodeLabelExpression为 AM 的容器设置请求节点标 签。1.4.监控1.4.1.通过web UI监控Nodes 页面:http:/RM-Address:port/cluster/nodes可以看到每一个节点的标签Node iabeis页面:http:/RM-Address:port/cluster/nodelabels可以看到标

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论