在Windows单机环境下搭建Hadoop环境,Apache官网提供的是借助cygwin搭建的方法(详见这里)。本文提供的是一种不借助cygwin的方式,具体步骤如下:
一、下载安装包
由于hadoop依赖于jdk,所以需要先安装jdk,具体下载地址如下:
jdk自行安装,将下载的hadoop tar包解压(在我这里解压时需要管理员权限)后得到如下图所示的文件目录:
二、安装配置
1.windows环境变量配置
右键单击我的电脑 –>属性 –>高级环境变量配置 –>高级选项卡 –>环境变量 –> 单击新建HADOOP_HOME,如下图,
2.接着编辑环境变量path,将hadoop的bin目录加入到后面;
三、配置Hadoop
1.编辑“D:\Programs\hadoop-2.7.2\etc\hadoop”
下的core-site.xml
文件,将下列文本粘贴进去,并保存;
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
2.编辑“D:\Programs\hadoop-2.7.2\etc\hadoop”
目录下的mapred-site.xml
(没有就将mapred-site.xml.template重命名为mapred-site.xml)文件,粘贴一下内容并保存;
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
3.编辑“D:\Programs\hadoop-2.7.2\etc\hadoop”目录下的hdfs-site.xml文件,粘贴以下内容并保存。请自行创建data目录,在这里我是在HADOOP_HOME目录下创建了此目录;
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/D:/Programs/hadoop-2.7.2/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/D:/Programs/hadoop-2.7.2/data/datanode</value>
</property>
</configuration>
4.编辑“D:\Programs\hadoop-2.7.2\etc\hadoop”目录下的yarn-site.xml文件,粘贴以下内容并保存;
<configuration>
<!-- Site specific YARN configuration properties -->
<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>
5.编辑“D:\Programs\hadoop-2.7.2\etc\hadoop”目录下的hadoop-env.cmd文件,将JAVA_HOME用 @rem注释掉,编辑为JAVA_HOME的路径,然后保存;
@rem The java implementation to use. Required.
@rem set JAVA_HOME=%JAVA_HOME%
set JAVA_HOME=D:\Programs\Java\jdk1.8.0_65
四、替换文件
1.下载hadooponwindows文件,下载地址在[这里],将下载下来的bin目录(包含以下.dll和.exe文件)文件替换原来hadoop目录下的bin目录;
五、运行环境
1.运行cmd窗口,执行“hdfs namenode -format”;
2.运行cmd窗口,切换到hadoop的sbin目录,执行“start-all.cmd”,它将会启动以下进程
- Namenode
- Datanode
- YARN resourcemanager
- YARN nodemanager
结果如下图所示:
3.运行JPS,查看运行的服务;
六、WEB控制台
1.资源管理GUI:http://localhost:8088/;
2.节点管理GUI:http://localhost:50070/;
七、操作HDFS
根据你core-site.xml的配置,接下来你就可以通过:hdfs://localhost:9000来对hdfs进行操作了。
1.创建目录
C:\WINDOWS\system32>hadoop fs -mkdir hdfs://localhost:9000/user/
C:\WINDOWS\system32>hadoop fs -mkdir hdfs://localhost:9000/user/input
2.写入数据
C:\WINDOWS\system32>hadoop fs -put D:\wordcount.md hdfs://localhost:9000/user/input
3.查看文件
C:\WINDOWS\system32>hadoop fs -ls hdfs://localhost:9000/user/input
Found 2 items
-rw-r--r-- 1 iwwenbo supergroup 4836 2016-05-27 16:31 hdfs://localhost:9000/user/input/shdx数据目录.md
-rw-r--r-- 1 iwwenbo supergroup 20 2016-05-27 16:41 hdfs://localhost:9000/user/input/wordcount.md
参考文章:
- http://toodey.com/2015/08/10/hadoop-installation-on-windows-without-cygwin-in-10-mints/;
- http://stackoverflow.com/questions/34871814/failed-to-start-namenode-in-hadoop;
最新评论
网飞没问题, 迪士尼+有解决方案么?
pp助手是安卓手机用的,根本下载用不来苹果
已解决
这样的话数据库里的结构为{"attachment":{"content":"xxx"}}, 要怎么才能变成{"content":"xxx"},从而使结构保持一致?
赞! make test不过的坑都写到的,谢谢楼主~
谢谢你
用了root用户还是一直502是怎么回事呢
student id 是空的