一、準備:
1、修改主機名:
vi /etc/sysconfig/network内容如下:
NETWORKING=yes
HOSTNAME=myHadoop
2、修改主機名和IP的映射關系,即hosts檔案:
vi /etc/hosts
192.168.127.150 myHadoop
3、關閉防火牆:
3.1、檢視防火牆狀态
service iptables status
3.2、關閉防火牆
service iptables stop
3.3、檢視防火牆開機啟動狀态
chkconfig iptables --list
3.4、關閉防火牆開機啟動
chkconfig iptables off
4、重新開機Linux:
reboot/shutdown -r now
二、安裝JDK:
1、解壓:
tar -zxvf jdk-7u55-linux-i586.tar.gz -C /opt/tool
2、将java添加到環境變量中:
sudo vi /etc/profile
#在檔案最後添加
export JAVA_HOME=/opt/tool/jdk-7u_65-i585
export PATH=$PATH:$JAVA_HOME/bin
#重新整理配置
source /etc/profile
#驗證:java -version
java version "1.7.0_65"
Java(TM) SE Runtime Environment (build 1.7.0_65-b17)
Java HotSpot(TM) Client VM (build 24.65-b04, mixed mode)
三、安裝hadoop2.4.1:
tar -zxvf hadoop-2.4.1.tar.gz -C /opt/tool
2、将hadoop添加到環境變量中
sudo vi /etc/profile
export HADOOP_HOME=/opt/tool/hadoop-2.4.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#驗證:hadoop version
Hadoop 2.4.1
Subversion http://svn.apache.org/repos/asf/hadoop/common -r 1604318
Compiled by jenkins on 2014-06-21T05:43Z
Compiled with protoc 2.5.0
From source with checksum bb7ac0a3c73dc131f4844b873c74b630
This command was run using /opt/tool/hadoop-2.4.1/share/hadoop/common/hadoop-common-2.4.1.jar
3、配置hadoop:
3.1:hadoop-env.sh
vim hadoop-env.sh
#第27行
3.2:core-site.xml
<!-- 指定HADOOP所使用的檔案系統URI,HDFS的老大(NameNode)的位址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoopnode0:9000</value>
</property>
<!-- 指定hadoop運作時産生檔案的存儲目錄 -->
<name>hadoop.tmp.dir</name>
<value>/opt/tool/hadoop-2.4.1/tmp</value>
3.3:hdfs-site.xml hdfs-default.xml (3)
<!-- 指定HDFS副本的數量 -->
<name>dfs.replication</name>
<value>1</value>
3.4:mapred-site.xml (mv mapred-site.xml.template mapred-site.xml)
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<!-- 指定mr運作在yarn上 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
3.5:yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的位址 -->
<name>yarn.resourcemanager.hostname</name>
<value>hadoopnode0</value>
</property>
<!-- reducer擷取資料的方式 -->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
3.6:格式化namenode
(是對namenode進行初始化,隻有在第一次安裝時執行格式化,切記切記,否則資料丢失。)
hdfs namenode -format (或者hadoop namenode -format)
3.7:啟動hadoop:
#先啟動HDFS:start-dfs.sh,啟動了一下程序:
NameNode
SecondaryNameNode
DataNode
#再啟動YARN:start-yarn.sh,啟動了一下程序:
NodeManager
ResourceManager
3.8:驗證是否啟動成功
使用jps指令驗證
22303 NameNode
22216 Jps
27643 SecondaryNameNode
25566 NodeManager
25603 ResourceManager
27812 DataNode
http://192.168.1.201:50070 (HDFS管理界面)
http://192.168.1.201:8088 (MR管理界面)
4、NameNode:
是整個檔案系統的管理節點。它維護着整個檔案系統的檔案目錄樹,
檔案/目錄的中繼資料資訊和每個檔案對應的資料庫清單。接收使用者的操作請求。
中繼資料資訊儲存在fsimage和edit中,fsimage儲存的是合并後的中繼資料資訊,而edit儲存的是實時的中繼資料資訊。
5、DataNode:
提供真實檔案資料的存儲服務。檔案存儲時,是以block為機關進行存儲的。
檔案塊(block):最基本的存儲機關。對于檔案内容而言,一個檔案的長度大小是size,
那麼從檔案的0偏移開始,按照固定的大小,順序對檔案進行劃分并編号,劃分好的每一個塊
稱為一個block。HDFS預設block大小為128MB,以一個256MB檔案為例,可以分割為2個Block。
6、SecondaryNameNode :
用來合并fsimage和edit。
本文轉自lzf0530377451CTO部落格,原文連結: http://blog.51cto.com/8757576/1827475,如需轉載請自行聯系原作者