一、安装Homebrew(已安装的可以省略这一步)
Homebrew是OSX中的方便的套件管理工具。采用Homebrew安装Hadoop非常简洁方便(中文官网:http://brew.sh/index_zh-cn.html)
复制下面代码在终端中运行就可以得到安装:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
二、安装JDK(已安装的可以省略这一步)
去Oracle官网下载对应的JDK
三、SSH 免密码的设置
1、安装ssh
直接 sudo apt-get install openssh-server
2、查看ssh运行状态
ps -e | grep ssh
如果发现 sshd 和 ssh-agent 即表明 ssh服务基本运行正常
3、生成公钥和私钥
ssh-keygen -t rsa -P ""
4、将公钥追加到文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
5、测试ssh localhost
如果发现不用输入密码就可以登录那么 ssh无密码机制就算建立成功了。
6、失败原因之一:.ssh及其下属子文件的权限问题:
首选.ssh目录权限是700, 两个dsa 和 rsa的 私钥权限是600,其余文件权限是644.
下面列出.ssh目录及子文件的权限表:
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的父目录的权限问题(我的问题就出现在这里):
.ssh的父目录文件权限应该是755,即所属用户的 用户文件 (/home下属的一个用户文件)。
三、安装Hadoop
运用brew安装hadoop代码如下:
$ brew install hadoop
hadoop就安装成功了,我安装时最新为2.7.3。
hadoop将按预定的路径安装(/usr/local/Cellar/hadoop/2.7.3)
查看其安装目录可以用brew list hadoop;
1.配置相关的环境变量
打开终端:
输入 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相关文件
修改/usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/hadoop-env.sh 文件
进入到 /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 文件
配置完成后
终端运行: hadoop namenode -format
运行成功效果图
进入:/usr/local/Cellar/hadoop/2.7.3/libexec/sbin
运行 :
sh start-all.sh
或者:sh start-dfs.sh 和 sh start-yarn.sh
测试命令: jps
成功的效果图
打开以下网址可以测试是否成功:
Resource Manager : http://localhost:50070
正常打开的样子
JobTracker : http://localhost:8088
正常打开的样子
Specific Node Information : http://localhost:8042
正常打开的样子