环境
主机:Windows 10
Hadoop:2.7.5
Java:1.9
步骤
1. 确认Java已经安装,并已经添加到环境变量中,测试方法:cmd中输入java -version
,显示如下:
2. 下载 hadoop binary,解压后修改以下配置文件:
1)hadoop-2.7.1/etc/hadoop/hadoop-env.cmd,把JAVA_HOME
的值修改为本机上jdk的路径,注意路径上不能有空格,jdk装在Program File
文件夹下的同学可以这么写:
set JAVA_HOME=C:\PROGRA~1\Java\jdk-9.0.1
此时在hadoop根目录下的bin文件夹下,你可以输入hadoop version
查看你的hadoop版本了。
2)hadoop-2.7.5/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
3)hadoop-2.7.5/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
4)hadoop-2.7.1/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/d:/software/hadoop-2.7.5/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/d:/software/hadoop-2.7.5/data/datanode</value>
</property>
</configuration>
注意把/d:/software/hadoop-2.7.5
替换成你的hadoop根目录
5)hadoop-2.7.5/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
3. 启动hadoop
1)在bin
目录下输入hadoop namenode -format
,应该能看到这样的结果:
2)在
sbin
目录下输入start-all
,会有多个cmd窗口被创建,此时输入jps
,应当看到如下结果:我有时会遇到DataNode创建失败的情况,删除根目录下data/datanode文件夹在
start-all
解决问题。
3)在浏览器中输入localhost:50070
应当能看到如下网页:
4)输入localhost:8088
页面如下:
4. 停止hadoop
在bin
目录下输入stop-all
Wordcount运行
Hadoop基于HDFS(Hadoop Distributed File System)这一文件系统管理文件,使用指令hadoop fs -op <args>
可以对HDFS进行操作。
1)我们先在HDFS中创建一个输入文件夹:
# hdfs dfsadmin -safemode leave
hadoop fs -mkdir /input
当你发现直接-mkdir失败时,加上第一条就OK了。你可以通过hadoop fs -ls /
查看HDFS根目录下的文件,应当已经包含了/input
文件夹。你可以用hdfs fs -rmr /input
删除这一文件夹。
2)在本地创建两个文本文件,上传到/input
文件夹:
hadoop fs -put *.txt /input
这样我们输入就准备好了,确认一下:
3)运行示例jar包:
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /input /output
一开始报错createSymbolicError
,解决方案:运行->gpedit.msc->计算机配置->Windows设置->安全设置->本地策略->用户权限分配->创建符号链接,添加你的用户名。然后重启电脑,再运行就ok了。附上成功的截图:
输出文件在output/part-r-00000,通过命令hadoop fs -cat /output/part-r-00000
查看内容