1. 环境准备
更新系统软件包并安装基础工具,确保系统处于最新状态:
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential openssh-server
安装Java(Hadoop依赖Java环境,推荐OpenJDK 8):
sudo apt install -y openjdk-8-jdk
java -version # 验证安装(需显示Java版本信息)
2. 下载并解压Hadoop
从Apache Hadoop官网下载稳定版本(如3.3.4),解压至指定目录(如/usr/local):
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
tar -xzvf hadoop-3.3.4.tar.gz -C /usr/local/
3. 配置Hadoop环境变量
编辑~/.bashrc(或/etc/profile),添加Hadoop路径配置:
export HADOOP_HOME=/usr/local/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置生效:
source ~/.bashrc
4. 配置HDFS核心文件
进入Hadoop配置目录($HADOOP_HOME/etc/hadoop),修改以下文件:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value> <!-- 单机模式为localhost -->
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> <!-- 单机模式设为1,集群模式需调整为≥3 -->
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop-3.3.4/data/namenode</value> <!-- NameNode数据目录 -->
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop-3.3.4/data/datanode</value> <!-- DataNode数据目录 -->
</property>
</configuration>
5. 创建HDFS数据目录
手动创建NameNode和DataNode的存储目录,并设置所有权:
sudo mkdir -p /usr/local/hadoop-3.3.4/data/namenode
sudo mkdir -p /usr/local/hadoop-3.3.4/data/datanode
sudo chown -R $USER:$USER /usr/local/hadoop-3.3.4/data # 将目录所有者设为当前用户
6. 格式化NameNode
首次启动前需格式化NameNode(初始化HDFS元数据):
hdfs namenode -format
7. 启动HDFS服务
启动HDFS分布式文件系统(包含NameNode、DataNode等组件):
start-dfs.sh
8. 验证HDFS状态
jps命令检查进程是否启动(应看到NameNode、DataNode等进程);http://localhost:50070(显示HDFS状态页面即表示成功)。9. 可选:配置SSH免密登录(集群模式必需)
若搭建多节点集群,需配置NameNode与其他DataNode之间的SSH免密登录:
ssh-keygen -t rsa -P '' # 生成密钥对(直接回车)
ssh-copy-id user@datanode_ip # 复制公钥到DataNode(替换user和IP)
注意事项:
dfs.replication设为1,集群模式下需调整为≥3(保证数据冗余);