经过:
下面的几个 关键 点:
1) 主要的依赖网页文件:
--//注意 里面的hadoop的版本是 2.7.3的,所以 你自己需要在所有文件夹里 涉及到2.7.3的位置,都自己改为 3.0.0
https://blog.peiyingchi.com/2017/03/29/install-hadoop-on-Mac-Sierra/
2)--// 因为 环境变量 对hadoop 只写到。
所以
sbin/start-dfs.sh
sbin/start-yarn.sh
前面的sbin 不能省去,在运行 start 或 stop 命令前 必须带 (缺省的环境path,不用写)+sbin + start or stop
3)
Since Hadoop 3.0.0 - Alpha 1 there was a Change in the port configuration:
http://localhost:50070
was moved to
http://localhost:9870
see https://issues.apache.org/jira/browse/HDFS-9427
其他端口的变化 :
4)
注意: 以后要使用hadoop_start之前还是要运行source ~/.profiles才可以哟
运行一个Word Count 例子
1hadoop jar /usr/local/Cellar/hadoop/2.7.3/libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar pi 2 5
然后可以通过Web端进行监控。
Resource Manager: http://localhost:50070
JobTracker: http://localhost:8088
Specific Node Information: http://localhost:8042
通过他们可以访问 HDFS filesystem, 也可以取得结果输出文件.
建立用户空间
1
hadoop fs -ls /# 查看已有user
2
hdfs dfs -mkdir /user hdfs dfs -mkdir /user/$(whoami)# 这里是用户
3
hdfs dfs -put ~/Documents/Hadoop/demo/Ethics.md /user/yingchi# 上传local文件
运行wordcount,命令如下:
注意:运行实例时,当前目录设置为 /usr/local/Cellar/hadoop/2.7.0/
1bin/hadoop jar libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /user/yingchi/Ethics.md /user/yingchi/out
运行完成后,在/yingchi目录下生成名为out的目录,其内容如下所示:
1
Found 2 items
2
-rw-r--r-- 1 PeiYingchi supergroup 0 2016-11-13 21:49 /user/yingchi/out/_SUCCESS
3
-rw-r--r-- 1 PeiYingchi supergroup 15719 2016-11-13 21:49 /user/yingchi/out/part-r-00000
4) -- // 注意 这里 按1)的操作的话 ,下面还有一处要修改 (因为 教程里是 jdk 8,而我自己瞎弄 安装了 jdk 9 )
因为 安装jdk9 又按教程 来装(尤其是 对 hadoop-env。sh的原 教程写法就是错的)
出现了如下的问题:
最终的解决方案 :是
I had the same issue with JDK 9. The fix for me was to add this line in hadoop-env.sh
export HADOOP_OPTS="--add-modules java.activation"
Thats because java.activation package is deprecated in Java 9.