HDFS在Ubuntu上的数据存储路径设置步骤
1. 准备工作
- 确保Ubuntu系统已安装Java JDK 8+(Hadoop依赖Java环境);
- 已完成Hadoop安装(解压至指定目录,如
/usr/local/hadoop-3.3.1); - 配置好Hadoop环境变量(
$HADOOP_HOME指向Hadoop安装目录,并添加至PATH)。
2. 修改core-site.xml(设置HDFS基础路径)
core-site.xml是Hadoop核心配置文件,需配置HDFS默认文件系统URI和临时目录(用于存储NameNode元数据的临时文件)。
路径:$HADOOP_HOME/etc/hadoop/core-site.xml
配置内容:
<configuration>
<property>
<name>fs.defaultFSname>
<value>hdfs://localhost:9000value>
property>
<property>
<name>hadoop.tmp.dirname>
<value>/usr/local/hadoop-3.3.1/data/tmpvalue>
property>
configuration>
说明:hadoop.tmp.dir是HDFS临时文件的根目录,后续NameNode和DataNode的存储路径会基于此目录。
3. 修改hdfs-site.xml(设置NameNode和DataNode存储路径)
hdfs-site.xml是HDFS特定配置文件,需配置NameNode元数据存储路径和DataNode数据存储路径。
路径:$HADOOP_HOME/etc/hadoop/hdfs-site.xml
配置内容:
<configuration>
<property>
<name>dfs.namenode.name.dirname>
<value>file:///usr/local/hadoop-3.3.1/data/namenodevalue>
property>
<property>
<name>dfs.datanode.data.dirname>
<value>file:///usr/local/hadoop-3.3.1/data/datanodevalue>
property>
<property>
<name>dfs.replicationname>
<value>1value>
property>
configuration>
说明:
dfs.namenode.name.dir:存储NameNode的元数据(如fsimage、edit文件),若配置多个路径,元数据会同步到所有路径(冗余备份);dfs.datanode.data.dir:存储DataNode的实际数据块,可配置多个磁盘路径(如/data1,/data2),提升存储容量和读写性能。
4. 创建存储目录
使用mkdir -p命令创建上述配置的目录,并设置正确的权限(Hadoop进程需对目录有读写权限):
sudo mkdir -p /usr/local/hadoop-3.3.1/data/{tmp,namenode,datanode}
sudo chown -R $USER:$USER /usr/local/hadoop-3.3.1/data # 将目录所有者改为当前用户(避免权限问题)
5. 格式化NameNode(首次配置需执行)
格式化NameNode会初始化HDFS元数据(创建fsimage、edit文件),注意:格式化会删除原有HDFS数据,仅首次配置或元数据损坏时执行:
hdfs namenode -format
6. 启动HDFS服务并验证
启动HDFS服务,检查NameNode和DataNode进程是否正常运行:
$HADOOP_HOME/sbin/start-dfs.sh # 启动HDFS服务
jps # 查看进程:应存在NameNode、DataNode进程
7. 验证存储路径
- 查看NameNode元数据路径:进入
dfs/name目录(如/usr/local/hadoop-3.3.1/data/tmp/dfs/name),应存在fsimage、edit文件; - 查看DataNode数据路径:进入
dfs/data目录(如/usr/local/hadoop-3.3.1/data/tmp/dfs/data),应存在current目录(存储数据块); - Web界面验证:访问
http://localhost:50070(Hadoop 3.x版本为http://localhost:9870),查看“NameNode”和“DataNode”信息,确认存储路径是否正确。
注意事项
- 若需修改已有集群的存储路径,需先停止HDFS服务(
stop-dfs.sh),修改配置文件后重新格式化NameNode(hdfs namenode -format),再启动服务(start-dfs.sh); - DataNode的
dfs.datanode.data.dir可配置多个路径(如file:///data1,/data2),数据会轮询存储在不同目录,解决单磁盘空间不足问题; - 确保存储路径所在磁盘有足够空间(建议预留20%以上空间,避免数据写入失败)。
以上就是关于“HDFS在Ubuntu上的数据存储路径怎么设置”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm