ITPub博客

首页 > 大数据 > Hadoop > yarn学习

yarn学习

原创 Hadoop 作者:l_x_p_火力全开 时间:2018-10-15 10:09:08 0 删除 编辑

1.yarn架构

2.yarn执行流程

  1. 用户向Yarn的RM提交应用程序,其中包括
    ApplicationMaster程序,启动ApplicationMaster命令等

    2.RM首先为该app程序分配第一个container容器,并与对应的NM通信,要求NM在这个Container中启动应用程序的application master

    3.App master首先向Apps manager注册,这样的话,我们就可以通过web 8088,查看应用程序的运行状态,且监控它的运行状态

    4.ApplicationMaster向Resource Scheduler申请和领取资源

    5.一旦ApplicationMaster申请到资源后,便与对应的NM通信,要求它启动任务

    6.NM节点启动container容器,运行task任务

    7.各个容器的任务,通过rpc向app master汇报自己的状态和进度,以让APP master随时掌握各个任务的运行状态,从而在任务失败时 重启任务。
    那么用户可以通过web界面实时查看应用的当前运行状态

    8.app运行完成后,app master向 apps manager注销并关闭

3.调优

 0)Container调优


定义:

Container:容器  Yarn的资源的抽象,
封装了某个节点的多维度资源,如内存 cpu,磁盘,网络
当AM向RM申请资源时,RM为AM返回的资源就是使用container来标识

1)例如:

48G内存:
25%给Linux  
75%给大数据进程 : 36G内存
DN:  4G 设置:hadoop-env.sh 重启生效

NM:  2G    设置:yarn-env.sh 重启生效

还剩: 36-4-2=30G 是给容器的

一大瓶装的29L
小瓶的规格29L 1瓶 1个container
小瓶的规格8L  3瓶 3个container 33.3
小瓶的规格3L  10瓶 10个container 10

内存:

yarn.nodemanager.resource.memory-mb   30G--总内存
yarn.scheduler.minimum-allocation-mb  2G--最小内存(生产上)
yarn.scheduler.maximum-allocation-mb  30G--最大内存(一般==总内存)

2) 数据本地化:DN和NM在一个节点上

3)Vcore(虚拟core):

如:根据设置core:VCore=1:2 比例 把物理内存虚拟化出2*Core个Vcore




4.yarn调度器

    

    1).FIFO:先进先出

    

    2).Capacity:计算

    3).Fair:公平(生产上使用)




来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31558266/viewspace-2216342/,如需转载,请注明出处,否则将追究法律责任。

上一篇: JVM解析
下一篇: HDFS
请登录后发表评论 登录
全部评论
Young people trying to learn big data

注册时间:2018-10-15

  • 博文量
    8
  • 访问量
    3780