sudo apt update && sudo apt upgrade -y,确保系统软件包为最新版本。sudo apt install -y build-essential openssh-server,安装编译工具和SSH服务(用于节点间通信)。sudo apt install openjdk-8-jdk安装OpenJDK 8(Hadoop 3.x兼容版本)。java -version,应显示Java版本信息。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/,将Hadoop解压至/usr/local/目录。~/.bashrc(用户级)或/etc/profile(系统级),添加以下内容:export HADOOP_HOME=/usr/local/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bashrc(或source /etc/profile)。进入$HADOOP_HOME/etc/hadoop目录,修改以下配置文件:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value> <!-- NameNode地址 -->
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> <!-- 单机模式设为1,集群模式需调整为副本数 -->
</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>
sudo mkdir -p /usr/local/hadoop-3.3.4/data/namenode
sudo mkdir -p /usr/local/hadoop-3.3.4/data/datanode
hadoop或当前登录用户),避免权限问题:sudo chown -R $USER:$USER /usr/local/hadoop-3.3.4/data
首次启动前必须格式化NameNode(初始化元数据):
hdfs namenode -format
注意:格式化会清除已有元数据,仅首次启动时执行。
运行以下命令启动HDFS集群:
start-dfs.sh
启动后,可通过jps命令查看进程:应存在NameNode、DataNode、SecondaryNameNode三个进程。
http://localhost:50070(Hadoop 3.x版本可能为http://localhost:9870),查看HDFS状态。hdfs dfs -ls /hdfs dfs -mkdir -p /user/testhdfs dfs -put ~/localfile.txt /user/test/hdfs dfs -get /user/test/remotefile.txt ~/localfile.txt。xmllint --noout core-site.xml验证。~/.bashrc修改后运行了source ~/.bashrc,可通过echo $HADOOP_HOME验证变量值。$HADOOP_HOME/logs/hadoop-*-namenode-*.log),常见原因包括元数据损坏(需恢复备份)或端口冲突(修改core-site.xml中的端口)。dfs.datanode.data.dir目录是否存在且有写入权限,或格式化NameNode后重启服务。