如何在CM中启用YARN的使用率报告

时间:2022-05-06
本文章向大家介绍如何在CM中启用YARN的使用率报告,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢

1.文档编写目的


CDH的高级功能"群集利用率报告"(Cluster Utilization Report)是整个多租户方案体系里的一部分,可以用来查看租户的资源使用情况,并可以通过Cloudera Manager的API导出资源使用报表。

默认群集利用率报告YARN是没有开启的,参考下图:

本文主要介绍如何开启YARN的容器资源使用收集功能。

  • 内容概述

1.如何配置YARN的容器使用情况度量收集

2.容器使用情况度量收集测试

3.总结

  • 测试环境

1.CDH5.13.1集群

2.采用root用户操作

3.集群未启用Kerberos

2.如何配置YARN的容器使用情况度量收集


1.首先在YARN服务中开启容器使用情况度量收集

对于“容器使用情况MapReduce作业用户”输入cmjobuser,点击“保存更改”。

2.这个时候CM会自动在HDFS中创建用于收集YARN容器使用情况的目录,/tmp/cmYarnContainerMetrics,用户属组为cmjobuser:hadoop,权限为770

3.回到CM主页发现YARN服务需要重启,然后无法获取用于运行MapReduce作业的用户,这里是cmjobuser。

4.在所有节点上创建cmjobuser这个用户,设置一下UID为1001,只要大于1000即可。

[root@ip-172-31-6-148 shell]# sh ssh_do_all.sh node.list "useradd -u 1001 cmjobuser"
[root@ip-172-31-6-148 shell]# sh ssh_do_all.sh node.list "id cmjobuser"

(可左右滑动)

创建这个用户需要注意UID必须大于1000,否则无法执行MapReduce任务,如下YARN的配置:

另外注意该用户不能在YARN的banned.users里,如下YARN的配置

5.重启YARN服务

等待重启完毕

可以发现YARN的警告已经消失了

6.查看YARN的利用率页面,显示正常

3.容器使用情况度量收集测试


1.随便运行一些Hive和MapReduce作业

2.等待CM执行用于聚合的MapReduce作业

这里注意资源池。实际并不会马上看到这个用于计算YARN容器资源使用的MapReduce作业,最多等待1小时。

3.再次回到集群利用率报告里的YARN,已经有数据显示。

4.总结


1.CM默认不开启YARN的资源使用率报告。

2.如果要开启,首先需要在各台机器创建一个UID大于1000的普通用户。还需要保证该用户不在YARN服务的banned.users里,否则都会导致无法运行MapReduce作业从而搜集YARN的使用率。

3.在开启该功能时,CM会在HDFS中自动创建两个目录,如果没有创建或者创建失败,可以通过CM再次创建,如下图

4.你也可以手动创建该目录,但需要注意目录权限

[root@ip-172-31-6-148 ~]# sudo -u hdfs hdfs dfs -ls  /tmp/cmYarnContainerMetricsAggregate
Found 2 items
drwxr-xr-x   - cmjobuser cmjobuser          0 2018-01-24 08:08 /tmp/cmYarnContainerMetricsAggregate/2018012407
-rw-r--r--   3 hdfs      cmjobuser         10 2018-01-24 08:08 /tmp/cmYarnContainerMetricsAggregate/cm_checkpoint
[root@ip-172-31-6-148 ~]# sudo -u hdfs hdfs dfs -ls  /tmp/cmYarnContainerMetrics
Found 1 items
drwxr-xr-x   - yarn hadoop          0 2018-01-24 08:08 /tmp/cmYarnContainerMetrics/2018012408
[root@ip-172-31-6-148 ~]# hdfs dfs -ls /tmp/ |grep cmYarnContainer
drwxrwx---   - cmjobuser hadoop              0 2018-01-24 08:08 /tmp/cmYarnContainerMetrics
drwx------   - cmjobuser cmjobuser           0 2018-01-24 08:08 /tmp/cmYarnContainerMetricsAggregate

(可左右滑动)

5.确保运行该MapReduce作业的cmjobuser能在YARN上有资源池运行作业。

  • 如果你在CM中专门指定了一个池,如下配置

则需要确保CM的动态资源池配置的放置规则中有如下策略:

  • 否则你需要在YARN中创建你在CM中指定的这个队列。

注:Fayson在测试过程中,CM并没有专门指定队列,所以在运行任务的时候默认使用的是第二条放置策略,即:使用池 root.users.username ,如果该池不存在则加以创建。

6.CM自动两次执行用于计算YARN容器资源使用的聚合MapReduce作业,间隔为1小时。

参考:

https://www.cloudera.com/documentation/enterprise/latest/topics/admin_cluster_util_report.html#concept_pkb_nwn_2v

提示:代码块部分可以左右滑动查看噢 为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操