基本的軟硬體設定:
x86台式機,window7 64位系統 vb虛擬機器(x86的台式機至少是4G記憶體,才能開3台虛機) centos6.4作業系統 hadoop-1.1.2.tar.gz
jdk-6u24-linux-i586.bin
一、root下的配置
a) 修改主機名稱:vi /etc/sysconfig/network
Master,slave1,slave2
b) 解析Ip: vi /etc/hosts
192.168.8.100 master
192.168.8.101 slave1
192.168.8.102 slave2
c) 調試網路:
採用橋接器串連網路,配置網路。
修改後記得調用 service network restart
確保三台虛擬機器能夠相互ping通。
d) 關閉防火牆
查看:service iptables status
關閉:service iptables stop
查看防火牆有無自啟動:
Chkconfig –-list | grepiptables
關閉自啟動:
Chkconfig iptables off
二、yao使用者下的配置
a) 建立使用者yao,設定密碼,進入使用者
useradd yao
passwd 123456
b) master建立公私秘鑰
ssh-keygen –t rsa
1)將id_rsa.pub複製給authorized_keys
Cp id_rsa.pub authorized_keys
2)將master中的authorized_keys複製給slave1的/home下
scp id_rsa.pub root@192.168.8.101:/home
3)將master拷貝過來的authorized_keys複製到slave1本身所創的authorized_keys下,同理slave2的也是。最後達到任一個authorized_keys中都包含所有機組的公開金鑰。
4)將hadoop拷貝複製到對應的機子中/home/yao/Documents/
在root下配置環境變數:vi /etc/profile
export HADOOP_HOME=/home/yao/Documents/hadoop
export HADOOP_HOME_WARN_SUPPRESS=1
export PATH=.:$PATH:$HADOOP_HOME
註:su + 使用者名稱實現切換使用者。
5)安裝jdk,解壓時需要授權;
Chmod u+x jdk。。。
解壓。
配置環境變數:vi /etc/profile
6)修改/hadoop/conf下的設定檔
修改core-site.xml
修改hdfs-site.xml
修改mapred-site.xml
7)修改hadoop/conf/hadoop-evn.xml檔案,這裡指定jdk的路徑。
export JAVA_HOME=/usr/local/jdk
8)修改/hadoop/conf/masters 和slaves,對應協商虛擬機器的名稱,讓hadoop知道主機和datanode;
Masters: Master
Slavers: Slave1 Slave2
三、拷貝hadoop
上述master中的hadoop配置基本完成了,由於namenode節點上的hadoop配置是相同的,所以現在將master上的hadoop分別拷貝到slave1和slave2上。
命令:
Scp -r ./hadoop yao@slave1:/home/yao/
Scp -r ./hadoop yao@slave2:/home/yao/
拷貝完成後,在master機器上hadoop目錄下執行:
格式化:Bin/hadoop namenode -format
下一步,執行啟動:
Bin/start-all.sh
在slave1中,輸入jps:
類似的在slave2中,輸入jps,也能得到同樣的結果:
總結:
配置這種全分布式的hadoop叢集,分為幾個步驟:
1)配置Hosts檔案
2)建立Hadoop運行帳號
3)配置ssh免密碼連入
4)下載並解壓hadoop安裝包
5)配置namenode,修改site檔案
6)配置hadoop-env.sh
7)配置masters,和slaves檔案
8)向個節點複製hadoop
9)格式化namenode
10)啟動hadoop
11)用jps檢驗各後台進程是否成功啟動
註:不能眼高手低,從裝機開始,每一步都會遇到各種各樣的問題需要解決。這是個熟悉指令和hadoop檔案機制的過程。
偽分布式
偽分布式的搭建是非常簡單的,因為它是單一的節點,上述步驟只需要:
1)建立Hadoop運行帳號
2)配置ssh免密碼連入(單一節點,只要將id_rsa.pub複製到authorized_keys中就能實現自身免密碼)
3)下載並解壓hadoop安裝包
4)下載jdk,並解壓安裝
5)修改site檔案
6)配置hadoop-env.sh
7)格式化namenode
8)啟動hadoop
9)用jps檢驗各後台進程是否成功啟動
OK,基本上理解hadoop搭建的過程,偽分布和全分布都是很簡單的。