当前位置: 首页 > news >正文

Hadoop集群启动从节点没有DataNode

一、问题背景

之前启动hadoop集群的时候都没有问题,今天启动hadoop集群的时候,从节点的DataNode没有启动起来。

二、解决思路

遇见节点起不来的情况,可以去看看当前节点的日志文件

我进入当前从节点的hadoop安装目录的Logs文件下去查看日志,发现日志报了错误(查看了日志如果发现有很多at的情况,那就说明是有问题了,不用去管那一大长串at,我们只需要找到at之前的第一句就好了,那一句才是问题的关键)

我查看日志文件的时候,出现如下错误:

 WARN org.apache.hadoop.hdfs.server.common.Storage: Failed to add storage directory [DISK]file:/home/hadoop/software/hadooptmp/dfs/data
org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /home/hadoop/software/hadooptmp/dfs/data is in an inconsistent state: Can't format the storage directory because the current directory is not empty.

 问题大体说的就是我的存放数据的目录不能添加文件,说当前目录不为空。

三、解决办法:

1. 在集群的主节点用root身份,进入tmp 目录

用root用户登录之后

cd /tmp

之后 ll   查看tmp目录下的内容

 会看见以hadoop开头的一些文件(我的这里有三个文件,可能你的和我的不太一样,但是没关系),把以hadoop开头的文件全部删除

删除的目的是因为,接下来要从新格式化hadoop集群,这些文件是之前格式化文件的时候产生的,如果不删除这些文件,直接从新格式化hadoop集群的话,之后可能会出现一些问题,有冲突的情况,所以这里要先把这些文件删除了。

2. 删除hadoop的日志文件

(1)删除hadoop存储数据的文件下的所有内容,每台主机都要分别删除

如果不知道自己hadoop存储数据的目录在哪里,可以到hadoop安装目录下的/etc/hadoop/core-site.xml 文件下查看

 

(2)分别在集群的每台主机,进入hadoop安装目录的logs文件,将logs下边的所有文件全部删除。

 注意:这里hadoop集群的每台主机都要去删除

3. 格式化hadoop

hadoop  namenode -format

4. 启动Hadoop集群

start-all.sh

5. 之后jps查看,问题就解决了


以上就是我解决问题的步骤了,希望可以帮助到你,如果有什么不清楚的地方请留言

http://www.lryc.cn/news/27041.html

相关文章:

  • FIFO IP Core
  • 从FPGA说起的深度学习(四)
  • pytorch入门7--自动求导和神经网络
  • QT 之wayland 事件处理分析基于qt5wayland5.14.2
  • 【this 和 super 的区别】
  • K8s:Monokle Desktop 一个集Yaml资源编写、项目管理、集群管理的 K8s IDE
  • 自动化测试实战篇(8),jmeter并发测试登录接口,模拟从100到1000个用户同时登录测试服务器压力
  • ATTCK v12版本战术实战研究—持久化(二)
  • python函数式编程
  • 3.linux下安装mysql
  • 17、MySQL分库分表,原理实战
  • 【C++的OpenCV】第九课-OpenCV图像常用操作(六):图像形态学-阈值的概念、功能及操作(threshold()函数))
  • [Java代码审计]—MCMS
  • 《程序员面试金典(第6版)》面试题 01.08. 零矩阵
  • 初识 Python
  • 常用sql语句分享
  • 极狐GitLab DevSecOps 为企业许可证安全合规保驾护航
  • 后端程序员的前端基础-前端三剑客之HTML
  • VS2019加载解决方案时不能自动打开之前的文档(回忆消失)
  • ConcurrentHashMap-Java八股面试(五)
  • 互联网衰退期,测试工程师35岁的路该怎么走...
  • Windows Cannot Initialize Data Bindings 问题的解决方法
  • Leetcode每日一题 1487. 保证文件名唯一
  • Linux常用命令——lsusb命令
  • Python——我愿称之为最简单的语言
  • java.io.IOException: Broken pipe
  • Python——列表排序和赋值
  • python+pytest接口自动化(7)-cookie绕过登录(保持登录状态)
  • 【连接池】什么是HikariCP?HikariCP 解决了哪些问题?为什么要使用 HikariCP?
  • Tapdata Cloud 基础课:新功能详解之「微信告警」,更及时的告警通知渠道