Hadoop1.2.1 分布式環(huán)境安裝

之前介紹過(guò)本地模式(偽分布式)安裝運(yùn)行Hadoop,今天介紹一下如何在分布式的環(huán)境下安裝并運(yùn)行Hadoop。


0x00 ? ?介紹

首先說(shuō)一下環(huán)境:一個(gè)NameNode節(jié)點(diǎn),一個(gè)SecondaryNameNode節(jié)點(diǎn),三個(gè)DataNode節(jié)點(diǎn)

NameNode -- hostname:namenode.athrob.com -- IP:192.168.187.128 -- 【NameNode節(jié)點(diǎn)和JobTracker節(jié)點(diǎn)】

SecondaryNameNode -- hostname:snn.athrob.com -- IP:192.168.187.129 -- 【SecondaryNameNode節(jié)點(diǎn)】

DataNode1 -- hostname:dn1.athrob.com -- IP:192.168.187.130 -- 【DataNode和TaskTracker節(jié)點(diǎn)】

DataNode2 -- hostname:dn2.athrob.com -- IP:192.168.187.131 -- 【DataNode和TaskTracker節(jié)點(diǎn)】

DataNode3 -- hostname:dn3.athrob.com -- IP:192.168.187.132 -- 【DataNode和TaskTracker節(jié)點(diǎn)】


0x01 ? ?其他準(zhǔn)備

[1]修改hostname

CentOS修改hostname需要修改兩個(gè)文件:

(1) /etc/sysconfig/network

(2) /etc/hosts

例如,我想修改我的hostname為:snn.athrob.com

一、vi打開(kāi)[1]中的這個(gè)network文件,將HOSTNAME=localhost.localdomain改為HOSTNAME=snn.athrob.com

二、編輯(2)中的這個(gè)hosts文件,將其中l(wèi)ocalhost.localdomain替換為snn.athrob.com

注:保存重啟后生效

[2]修改hosts文件,使前面的hostname和IP地址對(duì)應(yīng)起來(lái)

仍然編輯(2)中的hosts文件,添加:

192.168.187.128? namenode.athrob.com

192.168.187.129? snn.athrob.com

192.168.187.130? dn1.athrob.com

192.168.187.131? dn2.athrob.com

192.168.187.132? dn3.athrob.com

注:使用hostname訪(fǎng)問(wèn),避免使用IP地址訪(fǎng)問(wèn)。


0x02 ? ?配置ssh免密碼登錄

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

(1)在NameNode,SecondaryNameNode,DataNode1,DataNode2,DataNode3上配置如下命令:

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

(2)將NameNode上生成的公鑰copy到其他四臺(tái)機(jī)器上:

scp ~/.ssh/id_dsa.pub root@snn.athrob.com:~

注:此命令是將本機(jī)的ssh公鑰上傳到SecondaryNameNode這臺(tái)機(jī)器上。

然后,在SecondaryNameNode上,進(jìn)入root主目錄,ls一下會(huì)看到剛才copy的來(lái)的這個(gè)id_dsa.pub文件

將該文件追加到~/.ssh/authorized_keys文件中:

cat id_dsa.pub >> ~/.ssh/authorized_keys

(3)確認(rèn)免密碼登錄成功

在NameNode上輸入:ssh root@snn.athrob.com

如果能直接登錄到SecondaryNameNode這臺(tái)機(jī)器上,則說(shuō)明免密碼登錄配置成功。

從NameNode上免密碼登錄到其他DataNode節(jié)點(diǎn)上,參考上面步驟。


0x03 ? ?配置JDK

設(shè)置JAVA環(huán)境變量:

cd ~

vi .bash_profile

添加下面三行:

export JAVA_HOME=/opt/jdk1.8.0_92

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

注:其中/opt/jdk1.8.0_92為JDK目錄的路徑,其它機(jī)器配置JAVA環(huán)境變量方法一樣


0x04 ? ?配置Hadoop

假設(shè)我的Hadoop目錄為:/opt/hadoop-1.2.1

cd /opt/hadoop-1.2.1/conf

該目錄下有六個(gè)文件需要修改:

hadoop-env.sh、core-site.xml、hdfs-site.xml、masters、slaves、mapred-site.xml

(1)hadoop-env.sh

修改JAVA_HOME的路徑

找到JAVA_HOME,修改如下:

export JAVA_HOME=/opt/jdk1.8.0_92

(2)core-site.xml

配置NameNode和Hadoop的工作目錄:

core-site.xml

(3)hdfs-site.xml

配置Block的副本數(shù):(默認(rèn)為3,不能大于DataNode的個(gè)數(shù))

hdfs-site.xml

(4)masters

配置SecondaryNameNode:

將local改為:snn.athrob.com

(5)slaves

配置DataNode:

dn1.athrob.com

dn2.athrob.com

dn3.athrob.com

(6)mapred-site.xml

配置JobTracker:

mapred-site.xml

注:NameNode和SecondaryNameNode不能配置為同一臺(tái)機(jī)器。TaskTracker不用配置,因?yàn)門(mén)askTracker存在DataNode上。

從NameNode上復(fù)制Hadoop這6個(gè)配置文件到相應(yīng)其他節(jié)點(diǎn)上的Hadoop配置目錄

為了省事,也可以直接copy整個(gè)配置目錄

scp /opt/hadoop-1.2.1/conf/* root@snn.athrob.com:/opt/hadoop-1.2.1/conf/


0x05 ? ?啟動(dòng)Hadoop

在NameNode上,進(jìn)入Hadoop目錄下的bin目錄下:

(1)啟動(dòng)前格式化NameNode

./hadoop namenode -format

(2)啟動(dòng)NameNode,SecondaryNameNode,DataNode,JobTracker,TaskTracker

./start-all.sh


0x06 ? ?JobTracker或者其他節(jié)點(diǎn)起不來(lái)

說(shuō)明:有的時(shí)候雖然說(shuō)我們?cè)贜ameNode上執(zhí)行了./start-all.sh,也看到輸出NameNode、SecondaryNameNode、DataNode、JobTracker、TaskTracker啟動(dòng)了。但是jps查看的時(shí)候,就是沒(méi)有相應(yīng)的進(jìn)程!

這個(gè)時(shí)候請(qǐng)關(guān)閉Linux的防火墻再重新啟動(dòng)hadoop,應(yīng)該就可以了!

service iptables ?stop

或ufw disable


下次準(zhǔn)備介紹,在Windows環(huán)境下,使用Eclipse編譯Hadoop中的eclipse插件。


不足之處,請(qǐng)批評(píng)指正。

如有問(wèn)題,請(qǐng)私信聯(lián)系。

謝謝!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 簡(jiǎn)述 hadoop 集群一共有4種部署模式,詳見(jiàn)《hadoop 生態(tài)圈介紹》。HA聯(lián)邦模式解決了單純HA模式的性能...
    mtide閱讀 13,496評(píng)論 8 20
  • 1 目的將hadoop 2.7.1 安裝到 166、167、168 三臺(tái)機(jī)器上2 提供環(huán)境練習(xí)環(huán)境192.168....
    灼灼2015閱讀 3,653評(píng)論 4 40
  • 簡(jiǎn)述 hadoop 集群一共有4種部署模式,詳見(jiàn)《hadoop 生態(tài)圈介紹》。HA模式的集群里面會(huì)部署兩臺(tái)NN(最...
    mtide閱讀 7,556評(píng)論 0 10
  • *左心 涇源的早晨很冷 但也很清馨 有泛紅笑臉來(lái)自東方 光芒耀眼 時(shí)隔三年或者四年 輕步林業(yè)局大院 徑曲而陌生 樹(shù)...
    5b8fd3f74fc5閱讀 184評(píng)論 0 0
  • 喜歡的事情就會(huì)努力的去做好。2016年4月,我加入了一個(gè)喜歡的組織一一一女子合唱團(tuán)。 每次站在演出的舞臺(tái)上,我都會(huì)...
    點(diǎn)點(diǎn)李閱讀 287評(píng)論 0 0

友情鏈接更多精彩內(nèi)容