hdfs默认数据存放路径
1. 默认存放路径:{hadoop.tmp.dir} = /tmp/hadoop-${user.name}
即:$> /tmp/hadoop-hyxy,
注意:/tmp是临时存放文件的路径,但是有时候系统重启,或者数据量太大的时候,系统会
删除里面某些数据,因此一般会修改路径到当前用户目录下:
即:$> /home/hyxy/tmp/hadoop
理解格式化:
理解格式化的含义{创建dfs/name/fsimage和edit文件,针对namenode的守护进程}
开启namenode进程会失败:
失败的原因是:我们在core-site.xml修改了tmp路径:【/home/hyxy/tmp/hadoop】,
启动namenode服务的时候,系统找不到原来的路径:/${hadoop.tmp.dir}/dfs/name,
解决方法:
a.重新格式化,但,原有的HDFS的数据全部删除掉
b.复制{/tmp/hadoop-hyxy/dfs/name}至{/home/hyxy/tmp/hadoop/dfs}的路径下,问题解决。
2.查看系统日志
{$HADOOP_HOME/logs}:
如果服务没起来,可以查看日志文件,要是不想查看日志信息,可以hdfs namenode /datanode;
也 可以查看出错的信息。
3.分别设置dfs的相关目录{name , data , namesecondary},(在hdfs-default.xml查找源码)
并在hdfs-site.xml添加:
name:
dfs.namenode.name.dir
file://${hadoop.tmp.dir}/dfs/name
#专门针对name的路径设置,不放在默认的路径下,可以指定我们的默认物理磁盘
确定本地文件系统上DFS名称节点的位置
应该存储名称表(fsimage)。 如果这是一个以逗号分隔的列表
的目录,然后名称表被复制到所有的目录中,以实现冗余。
data:
dfs.datanode.data.dir
file://${hadoop.tmp.dir}/dfs/data
确定本地文件系统上DFS数据节点的位置
应该存储它的块。 如果这是逗号分隔的
目录列表,然后数据将被存储在所有命名
目录,通常在不同的设备上。 目录应该被标记
与HDFS对应的存储类型([SSD] / [磁盘] / [存档] / [RAM_DISK])
存储政策。 如果目录不存在,则默认存储类型为DISK
没有明确标记的存储类型。 不存在的目录将
如果本地文件系统权限允许,则创建它。
namesecondary
dfs.namenode.checkpoint.dir
file://${hadoop.tmp.dir}/dfs/namesecondary
确定本地文件系统上DFS辅助名称节点应该存储要合并的临时像 的位置。 如果这是一个以逗号分隔的目录列表,则图像将 复制到所有目录中以实现冗余。
上述红色字体:是修改name,data,namenodesecondary三个的路径。