美文网首页
Yarn与MapReduce

Yarn与MapReduce

作者: Yagami_ | 来源:发表于2018-07-19 17:12 被阅读0次

    --YARN 资源调度框架

    YARN架构

    1个ResourceManager + N个NodeManager

    ResourceManager的职责
    一个集群active状态的RM只有一个 负责整个集群的资源管理和调度

    1)处理客户端的请求

    2)启动/监控ApplicationMaster 一个作业对一个AM

    3)监控NM

    4)系统的资源分配和调度

    NodeManger:整个集群中有N个,负责单个节点的资源管理和使用 以及task的运行情况

    1)定期向RM汇报本节点的资源使用请求和各个Container的运行状态

    2)接收并处理RM的Container启停的各种命令

    3)单个节点的资源管理和任务管理

    ApplicationMaster ; 每个作业对应一个,负责应用程序的管理

    1. 数据切分

    2)为应用程序向RM申请资源(Container),并分配给内部任务

    3)与NM通信以启停task ,task运行在Container中

    4)task的监控与容错

    Container: 对任务运行情况的描述 : cpu,memory ,环境变量

    YARN执行流程

    1)用户向YARN提交作业

    2)RM为该作业分配第一个Container(AM)

    3)RM会与对应的NM通信,要求NM在这个Container上启动应用程序的AM

    4)AM首先向RM注册 然后AM将为各个任务申请资源 并监控运行情况

    5)AM采用轮询的方式通过RPC协议向RM申请和领取资源

    6)AM申请到资源后 便和相应的NM通信 要求NM启动任务

    1. NM启动我们作业对应的task

    YARN 环境搭建

    配置文件
    hadoop目录下
    vi etc/hadoop/mapred-site.xml

    <configuration>
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>
    </configuration>

    vi etc/hadoop/yarn-site.xml

    <configuration>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    </configuration>

    开启yarn
    cd sbin
    ./start-yarn.sh

    停止
    cd sbin
    ./stop-yarn.sh

    web接口模式访问yarn
    http://ip:8088/cluster

    提交mapreduce作业到yarn上运行
    创建一个文件 hello.txt
    上传一个文件
    hadoop fs -put hello.txt /ip/wc
    进入hadoop根目录下/share/hadoop/mapreduce/
    运行jar包 wordcount统计单词出现的次数 空格拆分
    hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.7.0.jar wordcount /ip/wc/hello.txt /output/wc
    打开yarn的web页面可以发现 有一个任务被提交
    hadoop fs -ls /output/wc 可以看到有的文件part-r-00000

    hadoop fs -cat /output/wc/part-r-00000 就可以看到统计后的结果

    相关文章

      网友评论

          本文标题:Yarn与MapReduce

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