sudo apt update && sudo apt upgrade -y
,确保系统软件包为最新版本。sudo apt install openjdk-8-jdk
,通过java -version
验证安装(需显示Java版本信息)。~/.bashrc
文件,添加export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
(路径根据实际Java安装位置调整),然后运行source ~/.bashrc
使配置生效。wget
命令获取安装包(例如wget https://downloads.apache.org/hadoop/core/hadoop-3.3.1/hadoop-3.3.1.tar.gz
)。/usr/local/
),执行tar -xzvf hadoop-3.3.1.tar.gz -C /usr/local/
。~/.bashrc
,添加export HADOOP_HOME=/usr/local/hadoop-3.3.1
(Hadoop安装路径)和export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
(将Hadoop命令加入系统路径),运行source ~/.bashrc
使配置生效。进入Hadoop配置目录($HADOOP_HOME/etc/hadoop
),修改以下关键文件:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value> <!-- 单机模式下为localhost,集群需替换为NameNode IP/主机名 -->
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> <!-- 副本数:单机1,集群建议3 -->
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/yourusername/hadoop_data/namenode</value> <!-- NameNode元数据存储路径 -->
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/yourusername/hadoop_data/datanode</value> <!-- DataNode数据存储路径 -->
</property>
</configuration>
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value> <!-- 启用MapReduce Shuffle服务 -->
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
export JAVA_HOME=${JAVA_HOME}
行,修改为export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
(与之前设置的JAVA_HOME一致)。hdfs namenode -format
(注意:生产环境需谨慎,频繁格式化会损坏数据)。start-dfs.sh
命令,启动NameNode和DataNode服务。jps
命令查看进程,若看到NameNode
和DataNode
(单机模式),说明启动成功。http://localhost:9000
(或http://NameNode_IP:9000
),查看HDFS文件系统状态。hdfs dfs -mkdir -p /user/yourusername
(-p
递归创建父目录)。hdfs dfs -put ~/localfile.txt /user/yourusername/
(将本地文件上传至HDFS)。hdfs dfs -ls /user/yourusername/
(列出指定目录下的文件)。hdfs dfs -get /user/yourusername/localfile.txt ~/download/
(将HDFS文件下载至本地)。hdfs dfs -rm -r /user/yourusername/olddir
(-r
递归删除目录)。chmod -R 755 /path/to/hadoop_data
修改目录权限(允许当前用户访问),或在hdfs-site.xml
中设置dfs.permissions.enabled=false
(临时关闭权限检查,生产环境不推荐)。netstat -tulnp | grep 9000
),修改core-site.xml
中的fs.defaultFS
端口(如改为9001)。~/.bashrc
中的JAVA_HOME
路径正确,并执行source ~/.bashrc
重新加载环境变量。通过以上步骤,即可完成HDFS与Ubuntu的集成,并实现基本的HDFS文件操作。根据实际需求,可进一步调整配置(如副本数、块大小、YARN集成等)以优化性能。