Hadoop 2.7.7 单机伪分布式安装与配置教程(JDK 8)

1. 前提准备

  • 操作系统:CentOS 7/Ubuntu等Linux
  • JDK 1.8 已安装并配置好(java -version能正常输出)
  • 普通用户或root均可(建议用普通用户,root也没问题)

2. 下载与解压

  1. 官方下载Hadoop 2.7.72

https://archive.apache.org/dist/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz

  1. 上传到虚拟机(如**/home/wang/soft**)
  2. 解压: tar -zxvf hadoop-2.7.7.tar.gz

3. 配置环境变量

编辑 **/**etc/profile,追加如下内容(不要覆盖原有PATH):

export JAVA_HOME=/home/wang/soft/jdk

export HADOOP_HOME=/home/wang/soft/hdfs/hadoop-2.7.7

export PATH=PATH:JAVA_HOME/bin:HADOOP_HOME/bin:HADOOP_HOME/sbin

保存后执行:

source **/**etc/profile

4. 修改Hadoop配置文件

4.1 配置 JAVA_HOME

编辑:

vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh

找到export JAVA_HOME=${JAVA_HOME}

改为

export JAVA_HOME=/home/wang/soft/jdk

(路径按实际你的JDK路径填写)

4.2 配置 core-site.xml

编辑:

vi $HADOOP_HOME/etc/hadoop/core-site.xml

在 <configuration> 标签内添加:

<property>

<name>fs.defaultFS</name>

<value>hdfs://localhost:9000</value>

</property>

4.3 配置 hdfs-site.xml

编辑:

vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml

在 <configuration> 标签内添加:

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>dfs.namenode.name.dir</name>

<value>file:/home/wang/soft/hdfs/hadoop-2.7.7 /data/nameNode</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>file:/home/wang/soft/hdfs/hadoop-2.7.7 /data/dataNode</value>

</property>

5. 格式化HDFS(只需第一次)

hdfs namenode -format

看到successfully formatted即成功。

6. 启动Hadoop

start-dfs.sh

如提示找不到命令,先执行source ~/.bashrc

7. 检查进程

jps

应看到 NameNode、DataNode、SecondaryNameNode 等进程。

如果没有完全显示的话就要手动开启一下

hadoop-daemon.sh start namenode

hadoop-daemon.sh start datanode

8. Web界面访问

9. 常用命令

  • 查看HDFS根目录:

hdfs dfs -ls /

上传文件到HDFS:

hdfs dfs -put 本地文件 /目标目录

下载文件到本地:

hdfs dfs -get /hdfs文件 本地目录

10. 常见问题与解决

  • hadoop version 报错找不到bash

→ 修复PATH,确保/bin在PATH里,或用ln -s /bin/bash /usr/bin/bash

  • JAVA_HOME未配置或配置错

→ 检查hadoop-env.sh和环境变量,必须用绝对路径

  • 端口被占用

→ 改配置文件中的端口,或释放端口

  • 权限问题

→ 确保所有Hadoop相关目录有当前用户写权限

11. 关闭Hadoop

stop-dfs.sh

12. 彻底卸载(如需重来)

rm -rf /home/wang/soft/hdfs/hadoop-2.7.7

相关推荐
高兴达17 分钟前
RPC--Netty客户端实现
java·spring·rpc
重庆小透明43 分钟前
力扣刷题记录【1】146.LRU缓存
java·后端·学习·算法·leetcode·缓存
lang201509281 小时前
Reactor操作符的共享与复用
java
TTc_1 小时前
@Transactional事务注解的批量回滚机制
java·事务
码不停蹄的玄黓2 小时前
MySQL分布式ID冲突详解:场景、原因与解决方案
数据库·分布式·mysql·id冲突
wei_shuo2 小时前
飞算 JavaAI 开发助手:深度学习驱动下的 Java 全链路智能开发新范式
java·开发语言·飞算javaai
欧阳秦穆2 小时前
apoc-5.24.0-extended.jar 和 apoc-4.4.0.36-all.jar 啥区别
java·jar
王小王-1232 小时前
基于Hadoop的公共自行车数据分布式存储和计算平台的设计与实现
大数据·hive·hadoop·分布式·hadoop公共自行车·共享单车大数据分析·hadoop共享单车
岁忧2 小时前
(LeetCode 面试经典 150 题 ) 58. 最后一个单词的长度 (字符串)
java·c++·算法·leetcode·面试·go
Java初学者小白2 小时前
秋招Day14 - Redis - 应用
java·数据库·redis·缓存