Hadoop集群的NameNode的备份
Hadoop集群中,NameNode节点存储着HDFS上所有文件和目录的元数据信息如果NameNode挂了,也就意味着整个Hadoop集群也就完了
所以,NameNode节点的备份很重要,可以从以下2个方面来备份NameNode节点
1. 在hdfs-site.xml中,配置多个name的dir到不同的磁盘分区上:
dfs.name.dir
/pvdata/hadoopdata/name/,/opt/hadoopdata/name/
2. 在另外的一台服务器上配置Secondary NameNode:它是NameNode的一个备份
Secondary NameNode会定期合并fsimage和edits日志,将edits日志文件大小控制在一个限度下
合并的时机是由2个配置参数决定的:
fs.checkpoint.period,指定连续两次检查点的最大时间间隔, 默认值是1小时。
fs.checkpoint.size定义了edits日志文件的最大值,一旦超过这个值会导致强制执行检查点(即使没到检查点的最大时间间隔)。默认值是64MB。
Secondary NameNode的配置过程如下:
[*] 在conf/masters中指定第二名称节点的主机名
[*] 在core-site.xml中指定checkpoint的目录
fs.checkpoint.dir
/opt/hadoopdata/secondname,/pvdata/hadoopdata/secondname
Determines where on the local filesystem the DFS secondary
name node should store the temporary images to merge.
If this is a comma-delimited list of directories then the image is
replicated in all of the directories for redundancy.
如果NameNode节点挂了,可以按照如下步骤来从Secondary NameNode来恢复:
[*] 在dfs.name.dir指定的位置建立一个空文件夹
[*] 从Secondary NameNode上把secondname的目录给scp到新的NameNode机器的fs.checkpoint.dir下
[*] 使用hadoop/bin/hadoop namenode -importCheckpoint来启动NameNode,主要不要执行format命令
[*] 使用hadoop fsck /user命令检查文件Block的完整性
详细的Secondary NameNode细节可参考Hadoop官方文档:
http://hadoop.apache.org/common/docs/r0.20.2/hdfs_user_guide.html#Secondary+NameNode
页:
[1]