網(wǎng)上和很多書上都有不少的hadoop在linux系統(tǒng)下的安裝教程,但是嘗試過的讀者會(huì)發(fā)現(xiàn),就算是按照這些教程一步步的操作,還是會(huì)在某個(gè)地方出錯(cuò),主要原因是版本問題。尤其是書上的版本一般都較老,所以并不建議對(duì)著書上的教程來操作,但是可以作為參考。下面給出我自己親身實(shí)踐的安裝過程,盡量把我知道的原理也寫出來,這樣就算有些步驟出現(xiàn)問題,知道了原因也是很容易解決的,就怕出現(xiàn)問題了,還不知道問題出在哪?
下面的代碼都是在ubuntu的命令窗口(terminal)中輸入:
1.工具準(zhǔn)備:
1.1 更新apt-get:在命令行窗口中使用apt-get安裝軟件很方便;
1.2 安裝vim:配置文件。
根據(jù)輸出結(jié)果,需要輸入“Y”來繼續(xù)。
2.創(chuàng)建hadoop用戶:
2.1增加hadoop用戶:創(chuàng)建 hadoop 用戶,并使用 /bin/bash 作為 shell
sudo useradd -m hadoop -s /bin/bash
2.2設(shè)置密碼,按提示輸入兩次密碼:
2.3為 hadoop 用戶增加管理員權(quán)限:
3.安裝SSH、配置SSH無密碼登陸
集群、單節(jié)點(diǎn)模式都需要用到 SSH 登陸(類似于遠(yuǎn)程登陸,你可以登錄某臺(tái) Linux 主機(jī),并且在上面運(yùn)行命令),Ubuntu 默認(rèn)已安裝了 SSH client,此外還需要安裝 SSH server:
sudo apt-get install openssh-server
安裝后,可以使用如下命令登陸本機(jī):
4.安裝java環(huán)境
4.1安裝jdk:
sudo apt-get install openjdk-8-jre openjdk-8-jdk
4.2配置JAVA_HOME
dpkg -L openjdk-8-jdk | grep '/bin/javac'
該命令會(huì)輸出一個(gè)路徑,除去路徑末尾的 “/bin/javac”,剩下的就是正確的路徑了。如輸出路徑為 /usr/lib/jvm/java-8-openjdk/bin/javac,則我們需要的路徑為 /usr/lib/jvm/java-8-openjdk。
如果這里輸出錯(cuò)誤,那我們?cè)趺粗繨AVA_HOME的地址呢?很簡單,輸入:
輸出:usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar
則前面的usr/lib/jvm/java-8-openjdk就是JAVA_HOME的地址。
然后,使用命令 sudo gedit /etc/profile 打開 /etc/profile 文件:
然后在文件末尾添加如下三行:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
然后ctrl+s保存。然后執(zhí)行如下代碼,使更改生效:
如果JAVA_HOME還是沒有更改過來,可能是文件沒有生效,運(yùn)行
再查看JAVA_HOME,可以發(fā)現(xiàn)是我們?cè)谖募性O(shè)置的路徑。
如果上面設(shè)置正確的話,$JAVA_HOME/bin/java -version 會(huì)輸出 java 的版本信息,且和 java -version 的輸出結(jié)果一樣,如下圖所示,則配置成功:
5.安裝Hadoop
5.1hadoop程序下載:http://mirror.bit.edu.cn/apache/hadoop/common/
建議選擇下載 “stable” 下的 hadoop-2.x.y.tar.gz 。
5.2 hadoop安裝
輸入命令:
sudo tar -zxf ~/Downloads/hadoop-2.7.2.tar.gz -C /usr/local
cd /usr/local/
sudo mv ./hadoop-2.7.2/ ./hadoop
sudo chown -R hadoop ./hadoop
Hadoop 解壓后即可使用。輸入如下命令來檢查 Hadoop 是否可用,成功則會(huì)顯示 Hadoop 版本信息:
cd /usr/local/hadoop
./bin/hadoop version
5.3 hadoop單擊配置
Hadoop 默認(rèn)模式為非分布式模式,無需進(jìn)行其他配置即可運(yùn)行。非分布式即單 Java 進(jìn)程,方便進(jìn)行調(diào)試。
配置尚未完成,由于近期較忙,過兩天閑下來了再配置。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接