Hadoop之YARN在單節點上執行
阿新 • • 發佈:2019-02-10
您可以通過設定幾個引數並執行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>