• HDFS集群:NameNode(Master),DataNode(Slave),SecondaryNameNode。
  • YARN集群:ResourceManger(Master),NodeManger(Slave)。

    YARN集群搭建

  • 配置环境变量 yarn-env. sh
    1
    2
    cd etc/hadoop/
    echo "export JAVA_HOME=$JAVA_HOME" >> hadoop-env.sh #将JAVA_HOME的环境变量写入hadoop-env
  • 配置计算框架mapred-site.xml
    用于指定MapReduce的运行框架,可选yarn/local/classic。
    1
    2
    cp mapred-site.xml.template mapred-site.xml  #复制模板文件为配置文件
    vim mapred-site.xml #编辑mapred-site文件

在mapred-site.xml的configuration中添加:

1
2
3
4
5
<!-- 指定使用 YARN 运行 MapReduce 程序,默认为 local -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

  • 配置YARN系统 yarn-site.xml
    编辑配置文件vim yarn-site.xml,在configuration中添加:
    1
    2
    3
    4
    5
    <!-- NodeManager上运行的附属服务,也可以理解为 reduce 获取数据的方式 -->
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>

    YARN集群测试

    1
    2
    3
    start-dfs.sh #启动HDFS集群
    start-yarn.sh #或者使用yarn-daemon.sh start resourcemanager nodemanager来手动启动单个结点
    jps #查看java进程
    YARN
    之后再浏览器中访问http://localhost:8088 即可查看YARN集群的运行状态。
    WebUI