實現真正的分佈式的hadoop,並不是僞分佈式的。
一、系統與配置
共準備2臺機器搭建Hadoop集羣。基於Ubuntu14.04,jdk1.6.0_45,Hadoop1.0.3版本,虛擬機使用VMware10.0
192.168.1.10 NameNode master (master)
192.168.1.20 DateNode slave1(Slave)
我的用戶名就hadoop
接下來需要安裝一些常用的軟件:vim,ssh
view source print ?
1.
sudo apt-get update
2.
sudo apt-get install vim
3.
sudo apt-get install ssh
首先修改本機IP
然後輸入以下命令,修改hosts
view source print ?
1.
sudo vim /etc/hosts
接下來設置ssh,實現無密碼登陸,輸入以下命令,生成祕鑰
view source print ?
1.
ssh-keygen -t rsa -P
""
一直按回車就會生成祕鑰,然後 在.ssh目錄中會生成id_rsa 和id_rsa.pub兩個文件,這兩個文件分別是SSH的私鑰和公鑰。
生成authorized_keys文件:cat id_rsa.pub >> authorized_keys實現無密碼登陸本地localhost的ssh中,
二、安裝hadoop和jdk
解壓hadoop的壓縮包,我的安裝目錄是/home/hadoop(這是用戶名)/hadoop(這是文件夾)/
view source print ?
1.
tar -zxvf hadoop1.
0.3
.ta
解壓縮jdk的壓縮包,命令類似上面,不過是將文件該名稱,這裏就不列出來了 然後下來是修改環境變量
view source print ?
1.
sudo vim /etc/profile
2.
export JAVA_HOME = /home/hadoop/hadoop/jdk1.
.0_45
3.
export PATH = $JAVA_HOME/bin:$PATH
4.
export HADOOP_HOME = /home/hadoop/hadoop/hadoop-
1.0
.
5.
export PATH = $JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
別忘了執行 source /etc/profile,讓路徑立馬生效
最後配置hadoop下的conf文件夾中的文件 修改hadoop-env.sh
修改core-site.xm
修改hdfs-site.xml
修改mapred-site.xml
修改masters,和slaves文件,在masters中只寫master也就是上面提到的192.168.1.0 ,slaves中填寫master和slave。
然後格式化namenode,在hadoop-1.0.3文件中寫入下面命令
view source print ?
1.
bin/hadoop namenode -format
對了這裏一直沒有提到slave的配置,其實特別簡單,關閉當前的虛擬機,複製一份剛纔的虛擬機文件,然後重親起名,再次打開,修改用戶名和ip就好了,我的Ubuntu名字是一樣,只要不在一個盤裏就行。
最後在master(用戶名,也就是主節點的ubuntu)中輸入以下命令,同樣也是在hadoop-1.0.3的文件中
view source print ?
1.
bin/start-all.sh
然後輸入JPS查看java進程,如果出現以下5個進程,就表示成功(不包括jps)
可以查看網頁
已經有兩個節點,到此整個hadoop分佈式的部署就完成了。
本文來自:Linux教程網