選擇 Hadoop 版本對HBase部署很關(guān)鍵。下表顯示不同HBase支持的Hadoop版本信息?;贖Base版本,應(yīng)該選擇合適的Hadoop版本。
創(chuàng)新互聯(lián)長期為1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為五蓮企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè),五蓮網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
HBase-0.92.x | HBase-0.94.x | HBase-0.96 | |
---|---|---|---|
Hadoop-0.20.205 | S | X | X |
Hadoop-0.22.x | S | X | X |
Hadoop-1.0.x | S | S | S |
Hadoop-1.2.x | NT | S | S |
Hadoop-0.23.x | X | S | NT |
Hadoop-2.x | X | S | S |
S = supported and tested,支持
X = not supported,不支持
NT = not tested enough.可以運(yùn)行但測試不充分
一.準(zhǔn)備工作
1.選擇合適的配套軟件。本文所使用的軟件包分別為
hadoop-1.2.1-bin.tar.gz
hbase-0.94.10.tar.gz
jdk-6u20-linux-i586.bin
zookeeper-3.4.6.tar.gz
2.環(huán)境準(zhǔn)備,本實(shí)驗(yàn)是已三臺機(jī)器做一個集群,1個master,2個slave。
1)每臺機(jī)器上安裝openssl,rsync
2)每臺機(jī)器上建立用戶hadoop,并且在/etc/sysconfig/network修改主機(jī)名,
和在/etc/hosts里加入如下映射
192.168.10.1 master
192.168.10.2 slave1
192.168.10.3 slave2
注: DNS映射的這3主機(jī)不能有其它的dns映射名。否則 建好集群準(zhǔn)備建表的hbase會非常奇葩的報錯
導(dǎo)致 建表和寫入
3) 安裝JDK
創(chuàng)建文件夾/usr/java ,將jdk-6u20-linux-i586.bin移到此文件夾后執(zhí)行
將java路徑加入 /etc/profile
export JAVA_HOME=/usr/java/jdk1.6.0_45
export JRE_HOME=/usr/java/jdk1.6.0_45/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
二 . 安裝hadoop
1.master 與兩臺slave機(jī)間相互建立ssh無密碼登錄(出于安全考慮最好是通過hadoop用戶來建立)
1)首先所有機(jī)切換到hadoop 用戶 輸入
ssh-keygen -t rsa
這樣就會在hadoop用戶主目錄下生成 ~/.ssh/ 一對公私匙 id_rsa id_rsa.pub
2) 然后在master機(jī)上將id_rsa.pub的內(nèi)容追加到同一目錄的授權(quán)key authorized_keys文件里(沒有就創(chuàng)建一 個)
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
這樣就實(shí)現(xiàn)了 ssh 無密碼自登陸,可以試試 命令 ssh localhost 登錄 看是否需要密碼
3) 將文件 id_rsa.pub通過scp命令傳到slave1 和2 里面
scp id_rsa.pub hadoop@192.168.10.2:~
scp id_rsa.pub hadoop@192.168.10.3:~
然后一樣的將里面的內(nèi)容追加到keyauthorized_keys里
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
這樣maser機(jī)就能夠無密碼的登錄這兩臺slave了
4)照上面的做法,依次將slave1和slave2的id_rsa.pub內(nèi)容追加到 master上的authorized_keys里
達(dá)到master與slave相互之間無密碼ssh登錄。
5) 注意 一定要用主機(jī)名相互登錄一次。否則后面啟動hadoop時候會出現(xiàn) ssh報錯 導(dǎo)致啟動失敗
2.將hadoop壓縮包解壓,并放到/usr/local/hadoop目錄下,添加一個目錄tmp ,
并將整個目錄的所有者改為hadoop
tar zxvf hadoop-1.2.1-bin.tar.gz
mv hadoop-1.2.1/ /usr/local/hadoop
mkdir /usr/local/hadoop/tmp
chown -R hadoop:hadoop /usr/local/hadoop
3.修改hadoop的配置文件,一般想讓hadoop正常啟動起來,最少需要配置修改4個配置文件
分別是
1) 修改配置文件 /usr/local/hadoop/conf/hadoop-env.sh
在文件的末尾處加上
export JAVA_HOME=/usr/java/jdk1.6.0_45
2) 修改配置文件 /usr/local/hadoop/conf/core-site.xml 內(nèi)容如下
3) 修改配置文件/usr/local/hadoop/conf/hdfs-site.xml 內(nèi)容如下
4.修改配置文件/usr/local/hadoop/conf/mapred-site.xml
5.在/etc/profile中里添加hadoop的路徑
export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$PATH
使之生效
source /etc/profile
這樣master的hadoop已經(jīng)安裝好了
6.使用scp將 文件夾/usr/local/hadoop 傳到兩臺slave機(jī)上相同的路徑
scp -r /usr/local/hadoop root@192.168.10.2:/usr/local
scp -r /usr/local/hadoop root@192.168.10.3:/usr/local
修改所有者
chown -R hadoop:hadoop /usr/local/hadoop
在 /etc/profile 添加如下變量
export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$PATH
使之生效
source /etc/profile
三。 啟動分布式文件系統(tǒng)hadoop
首先 ,在第一次啟動時要在master上 ,su切換到hadoop用戶執(zhí)行以下命令
hadoop namenode -format
出現(xiàn) sucessfully formatted 就說明格式化成功了
然后用hadoop用戶 運(yùn)行腳本文件 start-all.sh 即可啟動
四。 驗(yàn)證hadoop
啟動后 使用命令jsp 來查看進(jìn)程。
一般來說 正常的master下會有如下幾個進(jìn)程
JobTracker
NameNode
SecondaryNameNode
正常的slave下有以下2個
JobTracker
NameNode
這樣hadoop就安裝成功了