Young's blog Young's blog
首页
Spring
  • 前端文章1

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Young

首页
Spring
  • 前端文章1

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Hadoop

    • 第一章 大数据技术之大数据概论
    • 第二章大数据技术之 Hadoop概念讲解
    • 第三章Hadoop 运行环境搭建
    • 第四章Hadoop之HDFS详解以及工作机制介绍
    • 第五章MapReduce编程框架
    • 第六章Hadoop 数据压缩
    • 第七章大数据技术之 Hadoop(Yarn)
    • 第八章Hadoop(生产调优手册)
    • Hadoop HA 高可用
    • Hadoop单节点伪分布式安装
    • hadoop 3.x 在windows10下编译
    • hadoop 踩坑记 DataNode 启动失败(ClusterID不一致):Initialization failed for Block pool
      • 问题描述
      • 问题分析
      • 解决方法:
        • 方法一:
        • 方法二:
  • kafka

  • Flume

  • hive

  • scala

  • spark

  • 大数据
  • Hadoop
andanyang
2022-06-30
目录

hadoop 踩坑记 DataNode 启动失败(ClusterID不一致):Initialization failed for Block pool

ERROR org.apache.hadoop.hdfs.server.datanode.DataNode:
Initialization failed for Block pool <registering>
(Datanode Uuid 1098277a-8189-4b88-9a9b-31dbb7cdd27f) service to hadoop162/192.168.1.162:8020. Exiting.
java.io.IOException: All specified directories have failed to load.
1
2
3
4

# 问题描述

开机启动集群时,发现有节点的 DataNode 没有启动。

确认配置信息没问题后,观察节点的中的 datanode 日志(配置文件中指定)发现:Initialization failed for Block pool

# 问题分析

在第一次格式化 dfs 后,启动并使用了 hadoop,后来又重新执行了格式化命令(hdfs namenode -format),这时 NameNode 的 clusterID 会重新生成,而 DataNode 的 clusterID 保持不变。

每次 namenode format 会重新创建一个 namenodeId,而 data 目录包含了上次 format 时的 id,namenode format 清空了 NameNode 下的数据,但是没有清空 datanode 下的数据,导致启动时失败,所要做的就是每次 fotmat 前,清空 data 下的所有目录。

# 解决方法:

# 方法一:

停掉集群,删除问题节点的 data 目录下的所有内容。即 hdfs-site.xml 文件中配置的 dfs.data.dir 目录(我的目录:/opt/hadoopdata)。重新格式化 NameNode。

# 方法二:

停掉集群,然后将出现问题的 DataNode 节点目录/opt/hadoopdata/dfs/data/current/下的 VERSION 中 clusterID 的修改为与 NameNode 中/opt/hadoopdata/dfs/name/current/下的 VERSION 中 clusterID 一致即可。

其实只需要把 data/current/VERSION 中的 clusterID 改为和 name/current/VERSION 中的 clusterID 一致。

编辑 (opens new window)
上次更新: 2024/04/19, 08:52:45
hadoop 3.x 在windows10下编译
kafka3.0入门

← hadoop 3.x 在windows10下编译 kafka3.0入门→

最近更新
01
idea 热部署插件 JRebel 安装及破解,不生效问题解决
04-10
02
spark中代码的执行位置(Driver or Executer)
12-12
03
大数据技术之 SparkStreaming
12-12
更多文章>
Theme by Vdoing | Copyright © 2019-2024 Young | MIT License
浙ICP备20002744号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式