1. 程式人生 > >Hadoop之YARN在單節點上執行

Hadoop之YARN在單節點上執行

您可以通過設定幾個引數並執行ResourceManager守護程序和NodeManager守護程序,以偽分佈模式在YARN上執行MapReduce作業。
在基於偽分散式的基礎上,格式化完HDFS系統之後,配置引數如下:

1.配置YARN的環境

  $ vi etc/hadoop/yarn-env.sh

將這句適當修改為自己的Java路徑

    export JAVA_HOME=/usr/java/jdk1.8.0_144

2.配置Mapreduce基於YARN執行

  $ vi etc/hadoop/mapred-site.xml
<configuration>
    <property
>
<name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>

3.配置YARN的核心配置檔案

  $ vi etc/hadoop/yarn-site.xml
<configuration>

    <property>
        <name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>sunyuqiang.com</value> </property> </configuration>

yarn.resourcemanager.hostname為resourcemanager主機地址,單節點可以不配置這個,配置的話要填與當前計算機IP繫結的域名,localhost或者127.0.0.1樓主沒試過。
4.配置Mapreduce的環境

  $ vi etc/hadoop/mapred-env.sh
    export JAVA_HOME=/usr/java/jdk1.8.0_144

5.配置主從(master/slaves)主機地址
主節點:

  $ vi etc/hadoop/master

內容:

    sunyuqiang.com

從節點:

  $ vi etc/hadoop/slaves

內容:

    sunyuqiang.com

6.啟動ResourceManager守護程序和NodeManager守護程序:

  $ sbin/start-yarn.sh

檢視相關程序是否啟動:jps,如果能看到ResourceManager,NodeManager,就說明啟動正常。

瀏覽ResourceManager的Web介面;

http://localhost:8088/    預設的
http://sunyuqiang.com:8088/    繫結域名的

7.執行Mapreduce作業

$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.4.jar wordcount /user/root/mapreduce/wordcount/input /user/root/mapreduce/wordcount/ output

檢視結果:

  $ bin/hadoop dfs -text /user/root/mapredurce/wordcount/output/*

8.執行完成後,關閉守護程序

  $ sbin/stop-yarn.sh

補充:

YARN系統的歷史伺服器(HistoryServer)啟動

  $ sbin/mr-jobhistory-daemon.sh start historyserver

jps檢視程序是否啟動

YARN系統的聚集日誌(Aggregation Log)配置與啟動
1.配置YARN的核心配置檔案

  $ vi etc/hadoop/yarn-site.xml

新增內容:

<!--聚集日誌啟用-->
<property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<!--日誌儲存時間-->
<property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
</property>

2.重啟YARN以及歷史伺服器

YARN系統的垃圾回收
配置YARN的核心配置檔案

  $ vi etc/hadoop/yarn-site.xml

新增內容:

<!--檔案儲存時間-->
<property>
    <name>fs.trash.interval</name>
    <value>604800</value>
</property>