Hadoop Yarn環境配置

抄一個可行的Hadoop Yarn環境配置。用的官方的2.2.0版本。html

http://www.jdon.com/bigdata/yarn.htmlnode

 

Hadoop 2.2新特性apache

將Mapreduce框架升級到Apache YARN,YARN將Map reduce工做區分爲兩個:JobTracker組件:實現資源管理和任務JOB;計劃/監視組件:劃分到單獨應用中。 使用MapReduce的2.0,開發人員如今能夠直接Hadoop內部基於構建應用程序。Hadoop2.2也已經在微軟widnows上支持。瀏覽器

YARN帶來了:bash

1.HDFS的高可靠性
2.HDFS snapshots快照
3.支持HDFS中的 NFSv3 文件系統。架構

Yarn/map reduce2.0架構圖:框架

hadoop mapreduce yarn架構圖

其中灰綠的箭頭是Mapreduce處理流程,黑色虛線是任務Job提交,由客戶端提交給RM,由各個節點發出資源請求到RM獲取,固然他們也將各自的狀態反饋到到RM。oop

安裝Hadoop 2.2

http://mirror.metrocast.net/apache/hadoop/common/stable2/下載。百度雲盤下載ui

解壓到/home/hduser/yarn目錄,假設hadoop是用戶名。.net

$ tar -xvzf hadoop-2.2.0.tar.gz
$ mv hadoop-2.2.0 /home/hadoop/yarn/hadoop-2.2.0
$ cd /home/hadoop/yarn
$ sudo chown -R hadoop:hadoop hadoop-2.2.0
$ sudo chmod -R 755 hadoop-2.2.0

在~/.bashrc設置環境,將下面加入:

export HADOOP_HOME=$HOME/Programs/Hadoop/hadoop-2.2.0
export HADOOP_MAPRED_HOME=$HOME/Programs/Hadoop/hadoop-2.2.0
export HADOOP_COMMON_HOME=$HOME/Programs/Hadoop/hadoop-2.2.0
export HADOOP_HDFS_HOME=$HOME/Programs/Hadoop/hadoop-2.2.0
export YARN_HOME=$HOME/Programs/Hadoop/hadoop-2.2.0
export HADOOP_CONF_DIR=$HOME/Programs/Hadoop/hadoop-2.2.0/etc/hadoop

$ source ~/.bashrc

建立Hadoop數據目錄:

$ mkdir -p $HOME/yarn/yarn_data/hdfs/namenode

$ mkdir -p $HOME/yarn/yarn_data/hdfs/datanode

配置:

$ cd $YARN_HOME
$ vi etc/hadoop/yarn-site.xml
編輯 yarn-site.xml

加入下面喊在yarn-site.xml:

#etc/hadoop/yarn-site.xml .
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>

 

單個集羣節點設置:

$ vi etc/hadoop/core-site.xml
加入下面內容在配置
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>

$ vi etc/hadoop/hdfs-site.xml
加入下面內容
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name> <value>file:/home/hadoop/yarn/yarn_data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name> <value>file:/home/hadoop/yarn/yarn_data/hdfs/datanode</value>
</property>

$ vi etc/hadoop/mapred-site.xml
若是這個文件不存在,建立,拷貝粘貼下面的配置。

<?xml version="1.0"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

格式化namenode(Onetime Process)
$ bin/hadoop namenode -format

啓動HDFS處理和Map-Reduce 處理:


# HDFS(NameNode & DataNode)部分:
$ sbin/hadoop-daemon.sh start namenode
$ sbin/hadoop-daemon.sh start datanode

# MR(Resource Manager, Node Manager & Job History Server).部分:
$ sbin/yarn-daemon.sh start resourcemanager
$ sbin/yarn-daemon.sh start nodemanager
$ sbin/mr-jobhistory-daemon.sh start historyserver

確認安裝:

$ jps
# 應該輸出:
22844 Jps
28711 DataNode
29281 JobHistoryServer
28887 ResourceManager
29022 NodeManager
28180 NameNode

運行wordcount單詞計數案例:

$ mkdir input
$ cat > input/file
This is word count example
using hadoop 2.2.0

將目錄加入hadoop:

$ bin/hadoop hdfs -copyFromLocal input /input

在HADOOP_HOME運行wordcount案例::
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.2.0.jar wordcount /input /output
檢查輸出:
$ bin/hadoop dfs -cat /out/*
This 2
Another 1
is 2
line 1
one 2

檢查WebUI,瀏覽器打開端口:http://localhost:50070

yarn ui

能夠在http://localhost:8088檢查應用程序的狀態:

hadoop 2.2

相關文章
相關標籤/搜索