一、安裝Homebrew(已安裝的可以省略這一步)
Homebrew是OSX中的方便的套件管理工具。采用Homebrew安裝Hadoop非常簡(jiǎn)潔方便(中文官網(wǎng):http://brew.sh/index_zh-cn.html)
復(fù)制下面代碼在終端中運(yùn)行就可以得到安裝:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
二、安裝JDK(已安裝的可以省略這一步)
去Oracle官網(wǎng)下載對(duì)應(yīng)的JDK
三、SSH 免密碼的設(shè)置
1、安裝ssh
直接 sudo apt-get install openssh-server
2、查看ssh運(yùn)行狀態(tài)
ps -e | grep ssh
如果發(fā)現(xiàn) sshd 和 ssh-agent 即表明 ssh服務(wù)基本運(yùn)行正常
3、生成公鑰和私鑰
ssh-keygen -t rsa -P ""
4、將公鑰追加到文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
5、測(cè)試ssh localhost
如果發(fā)現(xiàn)不用輸入密碼就可以登錄那么 ssh無(wú)密碼機(jī)制就算建立成功了。
6、失敗原因之一:.ssh及其下屬子文件的權(quán)限問(wèn)題:
首選.ssh目錄權(quán)限是700, 兩個(gè)dsa 和 rsa的 私鑰權(quán)限是600,其余文件權(quán)限是644.
下面列出.ssh目錄及子文件的權(quán)限表:
drwx------??2?hadoop?hadoop?4096?2014-06-02?15:32?.
drwxr-xr-x?34?hadoop?hadoop?4096?2014-06-02?15:06?..
-rw-r--r--??1?hadoop?hadoop?2252?2014-06-02?15:32?authorized_keys
-rw-------??1?hadoop?hadoop??668?2014-06-02?15:11?id_dsa
-rw-r--r--??1?hadoop?hadoop??615?2014-06-02?15:11?id_dsa.pub
-rw-------??1?hadoop?hadoop?1675?2014-06-02?15:32?id_rsa
-rw-r--r--??1?hadoop?hadoop??407?2014-06-02?15:32?id_rsa.pub
-rw-r--r--??1?hadoop?hadoop??442?2014-06-02?15:08?known_hosts
7、.ssh的父目錄的權(quán)限問(wèn)題(我的問(wèn)題就出現(xiàn)在這里):
.ssh的父目錄文件權(quán)限應(yīng)該是755,即所屬用戶的 用戶文件 (/home下屬的一個(gè)用戶文件)。
三、安裝Hadoop
運(yùn)用brew安裝hadoop代碼如下:
$ brew install hadoop
hadoop就安裝成功了,我安裝時(shí)最新為2.7.3。
hadoop將按預(yù)定的路徑安裝(/usr/local/Cellar/hadoop/2.7.3)
查看其安裝目錄可以用brew list hadoop;
1.配置相關(guān)的環(huán)境變量
打開(kāi)終端:
輸入 vi .bash_profile
修改后最終樣子:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home
export JRE_HOME=$JAVA_HOME/jre
export HADOOP_HOME=/usr/local/Cellar/hadoop/2.7.3
export HADOOP_HOME_WARN_SUPPRESS=1
export CLASS_HOME=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:${PATH}
2.配置Hadoop相關(guān)文件
修改/usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/hadoop-env.sh 文件
進(jìn)入到 /usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop (就是Hadoop的安裝目錄下)
vi hadoop-env.sh
需要修改的地方:
# The java implementation to use.
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home"
# Extra Java runtime options.? Empty by default.
#export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true"
export HADOOP_OPTS="-Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"
# The maximum amount of heap to use, in MB. Default is 1000.
export HADOOP_HEAPSIZE=2000
#export HADOOP_NAMENODE_INIT_HEAPSIZE=""
修改/usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/core-site.xml 文件

修改/usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/hdfs-site.xml 文件

修改/usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/mapred-site.xml.template 文件

配置完成后 ?
終端運(yùn)行:
hadoop namenode -format


進(jìn)入:/usr/local/Cellar/hadoop/2.7.3/libexec/sbin
運(yùn)行 :
sh ?start-all.sh
或者:sh start-dfs.sh 和 sh start-yarn.sh


測(cè)試命令: jps

打開(kāi)以下網(wǎng)址可以測(cè)試是否成功:
Resource Manager :?http://localhost:50070

JobTracker :?http://localhost:8088

Specific?Node?Information :?http://localhost:8042
