由于课程需要,又不想在Ubuntu里安装hadoop,所以在选择在Windows里安装hadoop,这里简要说一下我遇到的坑。
1、关于winutils: 除了Hadoop安装包和JDK外,还要下载的一个第三方工具是名为winutils的一套类库, 下载地址:
https://github.com/steveloughran/winutils
注意比如你hadoop下载的是3.0.0版本, 那么这个类库你也要用3.0.0的. 下载完了把里面所有的.dll等文件和winutils.exe都覆盖到hadoop-3.0.0目录的bin子目录下去,还要将winutils.exe复制到C:\Windows\System32目录下。最终如下图:
这个时候,我好奇的点了点winutils.exe,发现它居然弹出一条错误。
首先我想着可能是因为我还没有完全配置好hadoop,后面就想着把所有的步骤完成后再搜搜看看(然而后面却忘却了,小伙伴们碰到问题一定要及时解决)。后面我就老老实实去配置好java和hadoop的环境变量,然后又把D:\bigData\hadoop-3.0.0\etc\hadoop\里的:
hadoop-env.cmd,
core-site.xml,
hdfs-site.xml,
mapred-site.xml,
yarn-site.xml等也配置好了。
参考配置链接:
http://t.csdn.cn/Wyxpk
注意配置好后自己还得创建如下一些文件。
最后开开心心的去cmd中在hadoop-3.0.0安装目录下的bin目录hdfs namenode -format格式化(为了不出意外,还是用管理员身份打开吧)。
后面又依次进行如下的一些命令:
hadoop namenode -format #一定先要格式化hdfs!!!!!
cd ..
cd sbin
start-dfs.cmd #先启动dfs
start-yarn.cmd #再启动yarn
正常结果就是如下形式四个cmd窗口出来:
但是我的就是四个窗口出来了,但是除了Apache Hdoop Distibution -yarn resourcemanager 正常显示外,其他几个窗口都只显示Apache Hdoop Distibution,里面还出现各种错误提示。想了半天,突然想起之前点击winutils.exe出现的错误,于是搜索后,下载了一个DirectX修复工具 ,打开工具直接点击检测并修复,等待修复完成即可。重启电脑,后面把第一次格式化后产生的一些文件删除后,再次格式化,重新start-all.cmd ,成功!四个窗口没问题!访问http://localhost:8088/和http://localhost:9870/都没问题!完美!