当namenode启动时,它从映像文件fsimage读取hdfs状态,然后应用编辑日志文件中的编辑。如果我没记错的话,名称node start up意味着当我们编写start-all.sh时。所以在这个启动时间,我认为它读取fsimage,编辑日志并合并它们。但它实际上是从哪个文件夹或哪个位置读取这两个内容的呢?
jgzswidk1#
下面是您可以找到编辑和图像文件的位置。。/应用程序/hadoop/tmp/dfs/name/current[核心站点.xml]
<property><name>hadoop.tmp.dir</name><value>/app/hadoop/tmp</value>
我相信这会对你有帮助。。
zlwx9yxi2#
启动守护程序时,namenode将检查名为core-site.xml文件位于hadoop conf文件夹中。在我的系统中,它位于usr/lib/hadoop/conf,这是hadoop的安装目录。在配置文件中你可以看到,
<configuration> <property> <name>hadoop.tmp.dir</name> <value>/var/lib/hadoop-0.20/cache/${user.name}</value> </property> </configuration>
在这段代码中/var/lib/hadoop-0.20/cache/是fsimage、fstime和edits log的位置。如果namenode在某个特定时间发生故障,fsimage数据将临时存储在secondynamenode中,namenode恢复后,临时数据将存储在fsimage中。
t9eec4r03#
在hadoop-1.x中,start-all.sh脚本在内部执行两个操作 start-dfs.sh 以及 start-mapred.sh . start-dfs.sh将启动hdfs所需的所有守护程序,即:datanode、namenode、secondary namenode检查点操作(将编辑日志应用于fsimage)发生在namenode启动期间,可以通过调整参数在namenode运行期间配置此活动 hdfs-site.xml --> dfs.namenode.checkpoint.period .在namenode启动期间,namenode守护进程从中指定的目录加载fsimage hdfs-site.xml -> dfs.name.dir. 应该重写此属性,否则它将采用默认值( file:///tmp/dfs/name/ )编辑日志的位置可以通过检查 hdfs-site.xml -> dfs.name.edits.dir . dfs.name.edits.dir的默认值是${dfs.name.dir}。以上属性名在hadoop-2.0中已更改
start-dfs.sh
start-mapred.sh
hdfs-site.xml --> dfs.namenode.checkpoint.period
hdfs-site.xml -> dfs.name.dir.
file:///tmp/dfs/name/
hdfs-site.xml -> dfs.name.edits.dir
3条答案
按热度按时间jgzswidk1#
下面是您可以找到编辑和图像文件的位置。。
/应用程序/hadoop/tmp/dfs/name/current
[核心站点.xml]
我相信这会对你有帮助。。
zlwx9yxi2#
启动守护程序时,namenode将检查名为
core-site.xml文件
位于hadoop conf文件夹中。在我的系统中,它位于usr/lib/hadoop/conf,这是hadoop的安装目录。
在配置文件中你可以看到,
在这段代码中/var/lib/hadoop-0.20/cache/是fsimage、fstime和edits log的位置。
如果namenode在某个特定时间发生故障,fsimage数据将临时存储在secondynamenode中,namenode恢复后,临时数据将存储在fsimage中。
t9eec4r03#
在hadoop-1.x中,start-all.sh脚本在内部执行两个操作
start-dfs.sh
以及start-mapred.sh
. start-dfs.sh将启动hdfs所需的所有守护程序,即:datanode、namenode、secondary namenode检查点操作(将编辑日志应用于fsimage)发生在namenode启动期间,可以通过调整参数在namenode运行期间配置此活动
hdfs-site.xml --> dfs.namenode.checkpoint.period
.在namenode启动期间,namenode守护进程从中指定的目录加载fsimage
hdfs-site.xml -> dfs.name.dir.
应该重写此属性,否则它将采用默认值(file:///tmp/dfs/name/
)编辑日志的位置可以通过检查
hdfs-site.xml -> dfs.name.edits.dir
. dfs.name.edits.dir的默认值是${dfs.name.dir}。以上属性名在hadoop-2.0中已更改