hadoop windows7 安装

老刘

Windows 7 安装 Hadoop 完整教程:从零开始手把手教你跑通伪分布式

很多做大数据入门的朋友手头只有一台老电脑,系统还是 Windows 7,想先把 Hadoop 装上练练手。别急着换系统或买新机器,Windows 7 上照样能跑伪分布式 Hadoop。下面这套流程是我自己在多台 Win7 机器上反复验证过的,适合完全没接触过大数据的小白,每一步都写清楚,照着点鼠标、敲命令就能搞定。

一、先搞清楚:Win7 装 Hadoop 有哪些坑

Hadoop 官方主推 Linux,Windows 只是“能跑但不推荐”。Win7 本身已经停止更新,装的时候最容易踩这几个坑:

  • 权限问题:Hadoop 需要创建文件夹、写日志,UAC 开着会报 Access Denied。
  • 路径空格:安装路径千万别带空格,比如别装在 C:\Program Files 里。
  • 版本匹配:Hadoop 2.7.x 到 2.10.x 对 Win7 兼容性最好,3.x 开始对系统要求更高,建议新手直接选 2.7.7。
  • 依赖缺失:必须准备好对应版本的 winutils.exe 和 hadoop.dll,否则 NameNode 直接起不来。

只要按下面顺序做,这些坑都能提前避开。

二、准备工作:下载这些东西就够了

打开电脑,先确认这几样都准备好(全部免费):

  1. JDK 1.8
    去 Oracle 官网或国内镜像下 64 位 jdk-8u202-windows-x64.exe(更高版本也能用,但 1.8 最稳)。

  2. Hadoop 2.7.7 二进制包
    官网 apache.org 下载 hadoop-2.7.7.tar.gz(大约 200MB)。

  3. winutils 工具包
    搜索“hadoop-2.7.7 winutils”下载对应压缩包,里面必须有 winutils.exe 和 hadoop.dll。

  4. 解压工具
    7-Zip 或 WinRAR 都行,用来解压 .tar.gz。

  5. 管理员权限
    后面所有操作都右键“以管理员身份运行”命令提示符或 PowerShell。

建议把所有文件统一放到 D:\bigdata 目录下,后面路径好记,也避免系统盘空间不够。

三、第一步:安装并配置 JDK

  1. 双击 jdk 安装包,一路下一步,安装路径改成 D:\bigdata\jdk1.8(记住这个路径)。
  2. 安装完后,右键“计算机”→属性→高级系统设置→环境变量。
  3. 新建系统变量:
    • 变量名:JAVA_HOME
      变量值:D:\bigdata\jdk1.8
    • 变量名:CLASSPATH
      变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
  4. 找到系统变量里的 Path,在最后面加上:
    ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
  5. 打开命令提示符,输入 java -version,能看到 1.8 版本号就说明成功了。

四、第二步:解压 Hadoop 并放入 winutils

  1. 用 7-Zip 把 hadoop-2.7.7.tar.gz 解压两次,得到 hadoop-2.7.7 文件夹,把它整个剪切到 D:\bigdata\hadoop-2.7.7
  2. 把下载的 winutils 包解压,把里面的 bin 目录下所有文件(尤其是 winutils.exe 和 hadoop.dll)全部复制覆盖到 D:\bigdata\hadoop-2.7.7\bin 里。
  3. 再新建两个文件夹,后面配置要用:
    • D:\bigdata\hadoop-2.7.7\data\namenode
    • D:\bigdata\hadoop-2.7.7\data\datanode

路径里绝对不要有中文和空格,这是血泪教训。

五、第三步:配置环境变量

继续打开环境变量窗口:

  1. 新建系统变量:
    • 变量名:HADOOP_HOME
      变量值:D:\bigdata\hadoop-2.7.7
  2. 在 Path 最后面追加:
    ;%HADOOP_HOME%\bin;%HADOOP_HOME%\sbin
  3. 新建变量:
    • 变量名:HADOOP_CONF_DIR
      变量值:%HADOOP_HOME%\etc\hadoop

保存后重新打开一个管理员命令提示符,输入 hadoop version,能显示 Hadoop 2.7.7 就说明环境变量 OK。

六、第四步:修改 Hadoop 配置文件(最关键)

所有配置文件都在 D:\bigdata\hadoop-2.7.7\etc\hadoop 目录下,用记事本打开即可(建议用 Notepad++,避免编码问题)。

1. 修改 hadoop-env.cmd

找到这一行:

set JAVA_HOME=%JAVA_HOME%

改成绝对路径(注意斜杠方向):

set JAVA_HOME=D:\bigdata\jdk1.8

2. 修改 core-site.xml

<configuration></configuration> 之间的内容替换成:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>D:\bigdata\hadoop-2.7.7\data\tmp</value>
    </property>
</configuration>

3. 修改 hdfs-site.xml

替换成:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>D:\bigdata\hadoop-2.7.7\data\namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>D:\bigdata\hadoop-2.7.7\data\datanode</value>
    </property>
</configuration>

4. 修改 mapred-site.xml

先把 mapred-site.xml.template 复制一份改名为 mapred-site.xml,然后写入:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

5. 修改 yarn-site.xml

写入:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
</configuration>

保存所有文件,配置就完成了。

七、第五步:格式化并启动 Hadoop

  1. 以管理员身份打开命令提示符,依次执行:

    cd /d D:\bigdata\hadoop-2.7.7
    hdfs namenode -format

    看到 “successfully formatted” 就对了。只做一次,以后别再格式化,否则数据全没。

  2. 启动 HDFS 和 YARN:

    start-dfs.cmd
    start-yarn.cmd

    会弹出 4 个黑色窗口(NameNode、DataNode、ResourceManager、NodeManager),不要关。

  3. 验证是否成功:

    • 浏览器打开 http://localhost:50070 ,能看到 NameNode 界面。
    • 打开 http://localhost:8088 ,能看到 YARN 资源管理界面。
    • 命令行输入 jps,应该能看到 NameNode、DataNode、ResourceManager、NodeManager、Jps 这几个进程。

到这里,伪分布式 Hadoop 已经在你的 Windows 7 上跑起来了。

八、常见报错快速解决

  • “Error: JAVA_HOME is incorrectly set”
    回到 hadoop-env.cmd,把路径改成绝对路径,并且用反斜杠 \

  • NameNode 起不来,提示权限不足
    右键 winutils.exe → 属性 → 兼容性 → 勾选“以管理员身份运行此程序”。

  • 端口被占用
    netstat -ano | findstr 9000 查占用进程,然后任务管理器结束它。

  • DataNode 启动后马上消失
    多半是 namenode 和 datanode 的 clusterID 不一致。删掉 data 目录下所有内容,重新 format 一次即可。

  • 浏览器打不开 50070
    检查防火墙有没有拦,或者把 hosts 文件加上 127.0.0.1 localhost

九、装完后可以马上做的几件事

  1. 用命令上传测试文件:

    hdfs dfs -mkdir /test
    hdfs dfs -put D:\test.txt /test
    hdfs dfs -ls /
  2. 跑官方自带的 WordCount 例子,感受一下 MapReduce。

  3. 如果觉得命令行麻烦,可以再装个 Eclipse 或 IDEA,配上 Hadoop 插件,直接在 IDE 里写代码调试。

Win7 机器性能有限,建议只用来学习,真正跑业务还是迁到 Linux 虚拟机或云服务器更合适。按上面步骤做完,基本两小时内就能看到绿色的 NameNode 页面。把每一步路径、命令都核对一遍,成功率会非常高。

文章版权声明:文章内容均来源于各大短视频平台搜集以及修改和删减新增,如有侵权或者违规,请联系站长进行删除,如需转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
验证码
评论列表 (暂无评论,1人围观)

还没有评论,来说两句吧...

目录[+]