Hadoop介紹
Hadoop是Apache基金會下的項目,它能夠處理非常大的數據集在分布式計算環境,它可以運行在三種模式下:
獨立式
Hadoop運行所有的東西在無后臺的單獨的JVM中,這種模式適合在開發階段測試與Debug MapReduce程序偽分布式
Hadoop做為后臺應用運行在本地機器,模擬小集群全分布式
Hadoop做為后臺應用運行真實的集群電腦中
Hadoop 安裝步驟
關于mac上安裝Hadoop偽分布式可以參考Mac OS X Yosemite安裝Hadoop 2.6記錄和如何在MacOSX上安裝Hadoop(how to install hadoop on mac os x)。在這些文章中基本的配置及其安裝方法都已經寫的比較清楚了,但是我在按照步驟安裝時仍然遇到了不少的坑,下面來做一些介紹。
軟件環境介紹
軟件環境:
* OS X Yosemite 10.10.5
* Java 1.6.0
使用brew
命令安裝的是Hadoop的最新版本,需要的java最低版本是1.7.0,所以第一個坑在于java的升級。
1、Java在mac下升級
mac下java的安裝有兩種方式。
下載java更新包在本地安裝
通過brew cask來安裝
1、使用安裝包安裝
mac中自帶的java版本號為1.6.0,link的路徑為/usr/bin
,系統默認java安裝路徑為:
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
使用dmg包安裝后java的路徑為:
/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
這兩個包并不沖突,在這種情況下Terminal中的java命令還是系統默認的,需要對新安裝的做軟鏈。參考:MAC OSX安裝多個版本的JAVA(jdk jre通用)。
安裝Java
2、使用brew cask 安裝
$ brew update && brew upgrade brew-cask && brew cleanup && brew cask cleanup$ brew cask install java
$ brew cask install java
正常情況下執行著兩個命令會安裝成功,但是brew update
會出現問題。會出現The following untracked working tree files would be overwritten by merge
錯誤,這時使用:
$ cd /usr/local
$ git fetch origin
$ git reset --hard origin/master
如果你沒有在管理員或sudo模式下,你也可以在第一個命令中chown
$ sudo chown -R whoami /usr/local
$ cd /usr/local
$ git reset --hard origin/master
3、測試是否安裝成功
$ java -version
如果版本信息返回的是java version "1.8.0_74"
式的安裝信息表明安裝成功。
2、ssh connection refuserd
生成ssh后,使用ssh localhost
來測試ssh
是否成功。給出提醒如下:
ssh: connect to host localhost port 22: Connection refused
這是因為mac電腦的共享配置未打開,在System preferences ->Sharing
中打開如下配置:
此時在此使用ssh localhost
命令來測試返回Last login: Mon Mar 21 09:58:12 2016
,表明已經成功。
3、啟動Hadoop
從/usr/local/Cellar/hadoop/2.7.1/sbin
路徑進入Hadoop的目錄執行啟動腳本:
./start-dfs.sh //啟動HDFS
./stop-dfs.sh //停止HDFS
log如下:
Starting namenodes on [localhost]
localhost: starting namenode, logging to /usr/local/Cellar/hadoop/2.7.1/libexec/logs/hadoop-tony-namenode-tonys-MacBook-Pro-2.local.out
localhost: starting datanode, logging to /usr/local/Cellar/hadoop/2.7.1/libexec/logs/hadoop-tony-datanode-tonys-MacBook-Pro-2.local.out
Starting secondary namenodes [0.0.0.0]
在log中會顯示警告WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
d的提醒,是關于 Hadoop 本地庫的, Hadoop本地庫是為了提高效率或者某些不能用Java實現的功能組件庫。可以參考Mac OSX 下 Hadoop 使用本地庫提高效率來做處理。
此時在瀏覽器中打開Resource Manager: http://localhost:50070
可以看到如下頁面
執行如下啟動腳本腳本:
./start-yarn.sh //啟動yarn,一個MapReduce框架
./stop-yarn.sh //停止yarn
此時在瀏覽器中打開JobTracker: http://localhost:8088
、Specific Node Information: http://localhost:8042
可以分別看到如下界面:
作者:木夜溯
鏈接:http://www.lxweimin.com/p/d19ce17234b7
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。</pre>