- 首先理解什么是namenode格式化
格式化namenode即使配置文件生效,并格式化hdfs文件系统。 - 重新格式化意味着集群所有的数据都会被删除,格式化之前要做好数据的备份。
- 格式化过程
(1)删除主节点(namenode节点),包括:hadoop的临时存储目录tmp;namenode存储永久性元数据目录tmp/dfs/name;hadoop日志文件log目录中的文件(而不是log目录!!!)
(2)删除从节点(datanode),包括:同上
删除上述的原因是每一次重新格式化都会重建上述目录或内容,如果这些目录或内容存在将不会重建,导致集群数据不一致。比如:tmp/dfs/name/current目录下的VERSION文件中的clusterID、namespaceID,如果有一个节点上的dfs/name目录忘记删除,hadoop格式化时就不会重建该目录,因此这个节点形成的clusterID、namespaceID就与其他节点不一样,最终导致hadoop启动失败。
(3)格式化:Hadoop namenode -format - 如果每个开机都要先格式化一下namenode才能启动集群,那么问题很可能出在了tmp目录上,每次开机tmp都会被清空,我们在hdfs-site.xml中可以把tmp目录换个路径。
Hadoop namenode重新格式化需要注意的问题
最新推荐文章于 2024-12-05 11:17:01 发布