前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >YARN学习笔记

YARN学习笔记

作者头像
Meet相识
发布2018-09-12 16:25:37
8760
发布2018-09-12 16:25:37
举报
文章被收录于专栏:技术专栏技术专栏

YARN产生背景

Hadoop1.x时:

  • MapReduce: Master/Slave架构,1个JobTracker带多个TaskTracker

JobTracker:

负责资源管理和作业调度

TaskTracker:

  • 定期向JT汇报本节点的健康状况、资源使用情况、作业执行情况;
  • 接收来自JT的命令: 启动任务/杀死任务

YARN:

不同计算框架可以共享同一个HDFS集群上的数据,享受整体的资源调度

XXX ON YARN的好处:

与其他计算机框架共享集群资源,按资源需要分配,进而提高集群资源的利用率

XXX: Spark/Storm/Flink

image.png

image.png

YARN 架构

  1. ResourceManager: RM
  • 整个集群同一时间提供服务的RM只有一个,负责集群资源的统一管理和调度
  • 提交一个作业、杀死一个作业
  • 处理客户端的请求:
  • 监控我们的NM,一旦某个NM挂了,那么该NM上运行的任务需要告诉我们的AM来如何进行处理
  1. NodeManager: NM
  • 整个集群中有多个,负责自己本身节点资源管理和使用
  • 定时向RM汇报本节点的资源使用情况
  • 接收并处理来自RM的各种命令: 启动Container
  • 处理来自AM的命令
  • 单个节点的资源管理
  1. ApplicationMaster: AM
  • 每个应用程序对应一个: MR、Spark,负责应用程序的管理
  • 为应用程序向RM申请资源(core、memory),分配给内部task
  • 需要与NM通信: 启动/停止task,task是运行在container里面,AM也是运行在containe
  1. Container
  • 封装了CPU、Memory等资源的一个容器
  • 是一个任务运行环境的抽象
  1. Client
  • 提交作业
  • 查询作业的运行进度
  • 杀死作业

image.png

YARN 执行流程

image.png

  1. 用户向YARN提交一个作业(例如Spark/Storm作业)
  2. ResourceManager会给作业分配第一个Continer,假设运行在图中第二个NodeManager
  3. ResourceManager与对应NodeManager进行通信,要求启动对应的Continer用来启动应用程序,ApplicationMaster
  4. ApplicationMaster启动后,与ResourceManager进行注册
  5. ApplicationMaster向ResourceManager申请Core,Memory,然后在对应的NodeManager上开始启动任务
  6. 在每个NodeManager上启动相应的continer,并把task运行在Continer

YARN 环境搭建

1.etc/hadoop/mapred-site.xml:

代码语言:javascript
复制
<property> 
    <name>mapreduce.framework.name</name> 
    <value>yarn</value> 
</property>

2.etc/hadoop/yarn-site.xml:

代码语言:javascript
复制
     <property>
           <name>yarn.nodemanager.aux-services</name>       
          <value>mapreduce_shuffle</value> 
    </property>

3.启动YARN相关的进程

sbin/start-yarn.sh

4.验证

jps

http://host:8088

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.12.04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • YARN产生背景
    • Hadoop1.x时:
      • JobTracker:
        • TaskTracker:
          • YARN:
            • XXX ON YARN的好处:
            • YARN 架构
            • YARN 执行流程
            • YARN 环境搭建
            相关产品与服务
            容器服务
            腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档