集群崩溃的处理方法

搞崩集群

hadoop102

hadoop103

hadoop104

此时HDFS Web端的文件是不可以下载的,因为三个副本都删除了。

错误示范

最先想到的是格式化集群

[ranan@hadoop102 hadoop-3.1.3]$ hdfs namenode -format

提示需要先停掉集群,正常情况下先把yarn停掉

[ranan@hadoop103 hadoop-3.1.3]$ sbin/stop-yarn.sh
[ranan@hadoop102 hadoop-3.1.3]$ sbin/stop-dfs.sh

启动集群,发现集群正常启动,但是NameNode没了

[ranan@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh

查看目录,发现删除了DataNode中的name

那就格式NameNode,之前并没有成功格式化。

[ranan@hadoop102 hadoop-3.1.3]$ hdfs namenode -format

格式化之后,发现name文件夹有了,进去查看版本号。发现两次的版本号不一样。

[ranan@hadoop102 hadoop-3.1.3]$ cd data/dfs/name/current
[ranan@hadoop102 current]$ cat VERSION

此时进入HDFS网页,发现进不去了

查看发现namenode还是没有启动

那该怎么办?

正确处理方法

1 回到hadoop的家目录

2 杀死进程

[ranan@hadoop102 hadoop-3.1.3]$ sbin/stop-dfs.sh

3 删除每个集群的data和logs

[ranan@hadoop102 hadoop-3.1.3]$ rm -rf data logs
[ranan@hadoop103 hadoop-3.1.3]$ rm -rf data logs
[ranan@hadoop104 hadoop-3.1.3]$ rm -rf data logs

4 格式化

[ranan@hadoop102 hadoop-3.1.3]$ hdfs namenode -format

5 启动集群

[ranan@hadoop102 hadoop-3.1.3]$ hdfs namenode -format

重启成功,但是数据都被清空了

总结

1.先停HDFS服务

2.清除所有节点的历史data和logs

3.格式化NameNode

4.重新启动

原因分析

格式化 NameNode,会产生新的集群 id,导致 NameNode 和 DataNode 的集群 id 不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化 NameNode 的话,一定要先停止 namenode 和 datanode 进程,并且要删除所有机器的 data 和 logs 目录,然后再进行格式化。

namenode,datanode都有自己的版本号。namenode和datanode是一一绑定的。

格式化以后的namenode是匹配不上没有格式化以前的datanode。

版本要能匹配的上

Hadoop入门 集群崩溃的处理方法的更多相关文章

  1. Hadoop入门 集群常用知识与常用脚本总结

    目录 集群常用知识与常用脚本总结 集群启动/停止方式 1 各个模块分开启动/停止(常用) 2 各个服务组件逐一启动/停止 编写Hadoop集群常用脚本 1 Hadoop集群启停脚本myhadoop.s ...

  2. Hadoop入门 集群时间同步

    集群时间同步 如果服务器在公网环境(能连接外网),可以不采用集群时间同步.因为服务器会定期和公网时间进行校准. 如果服务器在内网环境,必须要配置集群时间同步,否则时间久了,会产生时间偏差,导致集群执行 ...

  3. hadoop集群崩溃,因为tmp下/tmp/hadoop-hadoop/dfs/name文件误删除

    hadoop执行start-all后,显示正常启动. starting namenode, logging to /opt/hadoop-0.20.2-cdh3u0/logs/hadoop-hadoo ...

  4. hadoop+spark集群搭建入门

    忽略元数据末尾 回到原数据开始处 Hadoop+spark集群搭建 说明: 本文档主要讲述hadoop+spark的集群搭建,linux环境是centos,本文档集群搭建使用两个节点作为集群环境:一个 ...

  5. 使用Docker在本地搭建Hadoop分布式集群

    学习Hadoop集群环境搭建是Hadoop入门必经之路.搭建分布式集群通常有两个办法: 要么找多台机器来部署(常常找不到机器) 或者在本地开多个虚拟机(开销很大,对宿主机器性能要求高,光是安装多个虚拟 ...

  6. 超快速使用docker在本地搭建hadoop分布式集群

    超快速使用docker在本地搭建hadoop分布式集群 超快速使用docker在本地搭建hadoop分布式集群 学习hadoop集群环境搭建是hadoop入门的必经之路.搭建分布式集群通常有两个办法: ...

  7. Hadoop基础-Hadoop的集群管理之服役和退役

    Hadoop基础-Hadoop的集群管理之服役和退役 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在实际生产环境中,如果是上千万规模的集群,难免一个一个月会有那么几台服务器出点故 ...

  8. 一脸懵逼学习Hadoop分布式集群HA模式部署(七台机器跑集群)

    1)集群规划:主机名        IP      安装的软件                     运行的进程master    192.168.199.130   jdk.hadoop      ...

  9. 基于zookeeper的高可用Hadoop HA集群安装

    (1)hadoop2.7.1源码编译 http://aperise.iteye.com/blog/2246856 (2)hadoop2.7.1安装准备 http://aperise.iteye.com ...

随机推荐

  1. Ubuntu14.04安装ia32-libs报错

    安装编译环境的时候报错 sudo apt-get install ia32-libs Reading package lists... Done Building dependency tree Re ...

  2. cf 11D A Simple Task(状压DP)

    题意: N个点构成的无向图,M条边描述这个无向图. 问这个无向图中共有多少个环. (1 ≤ n ≤ 19, 0 ≤ m) 思路: 例子: 4 6 1 2 1 3 1 4 2 3 2 4 3 4 答案: ...

  3. cf Learn from Life (简单贪心)

    有N个人站在一楼.一个电梯最多承载K个人. 每个人都有一个想去的楼层.f[1]....f[N]. f[i]属于[2,2000] 从a层到b层需花费abs(a-b)秒. 问电梯送完所有人然后回到一楼至少 ...

  4. es6实现继承详解

    ES6中通过class关键字,定义类 class Parent { constructor(name,age){ this.name = name; this.age = age; } speakSo ...

  5. RabbitMQ的安装及入门使(Windows)

    1.安装Erlang所以在安装rabbitMQ之前,需要先安装Erlang .点击下载Erlang 执行下载下来的Erlang,全部点击"下一步"就行.安装完成设置一下环境变量. ...

  6. linux 入门系列-基础性知识

    1:初探linux-基于centos7 运维和服务器硬件组合 两种登录方式:(1)-------root:管理员登录权限较高,不建议初学者使用格式: [root@centos7 jinlong]# ( ...

  7. c++学习笔记(四)

    动态内存分配 使用new分配内存 1.指针的用处是在运行阶段分配未命名的内存以储存值. 2.在此情况下,只能通过指针来访问内存. int *ptr_int=new int;//在内存阶段为一个int值 ...

  8. php 图像和水印

    生成图像 $img = imagecreate(400,400); imagecolorallocate($img,255,255,255); imageellipse($img,200,200,50 ...

  9. ubuntu更換清華軟件源

    打开软件源的编辑sudo gedit /etc/apt/sources.list 软件源: Ubuntu--更改国内镜像源(阿里.网易.清华.中科大) 打開軟件源文件進行修改: 使用 sudo vim ...

  10. R数据分析:跟随top期刊手把手教你做一个临床预测模型

    临床预测模型也是大家比较感兴趣的,今天就带着大家看一篇临床预测模型的文章,并且用一个例子给大家过一遍做法. 这篇文章来自护理领域顶级期刊的文章,文章名在下面 Ballesta-Castillejos ...