Hadoop NameNode格式化

前言

格式化NameNode后集群的数据会全部丢失,格式化之前需做好数据备份工作。

格式化步骤

  1. 格式化之前,首先需删除Hadoop系统日志,默认路径为${HADOOP_HOME}/logs
  2. 然后删除主节点目录以及数据节点目录,默认路径分别为${hadoop.tmp.dir}/dfs/name和${hadoop.tmp.dir}/dfs/datahadoop.tmp.dir默认值是/tmp/hadoop-${user.name},可以在core-site.xml配置文件中的hadoop.tmp.dir属性设置。而上面的主节点目录和数据节点目录也可以在hdfs-site.xml配置文件中的dfs.namenode.name.dirdfs.namenode.data.dir属性中设置。(在dfs/name/current目录下的VERSION文件中记录集群的版本信息,其中clusterID是集群版本标识,每次format都会生成不同的ID。在dfs/data/current目录下的VERSION文件中记录datanode的版本相关信息,其中clusterID标识它是属于哪个集群的,namenode 和 datanode的这两个值一致时,才会认为是同一个集群。格式化后,namenode的clusterID会改变,但datanode节点目录dfs/data/current如果在格式化时仍存在,则datanode的clusterID不会变化。这种情况下,启动集群,datanode进程虽然也会启动,但与namenode确认clusterID后,发现不一致,就会自动退出了。)
  3. 格式化NameNode,命令为hdfs namenode -format。

参考资料

  1. Hadoop 集群实现重新格式化
  2. Hadoop namenode重新格式化需注意问题

你可能感兴趣的:(hadoop,hdfs,big,data)