自己搭建的集群,启动hadoop时slave节点的datanode没有启起来怎么办?
自己搭建的集群,启动hadoop 集群是,发现slave节点的datanode没有启动,查了资料发现是因为我在启动集群前,执行了这个命令:
hadoop namenode -format
这个指令会重新格式化namenode的信息,这样可能会导致master节点的VERSION信息跟datanode的信息对不上,导致指令无法同步。
查看VERION信息:
master 的 namenode 信息:
> cd /usr/local/src/hadoop-2.6.1/dfs/name/current
> cat VERSION
#Tue Aug 18 01:43:38 EDT 2020
namespaceID=1008709700
clusterID=CID-c3345186-922b-4010-bb38-cdc135bc1afe
cTime=0
storageType=NAME_NODE
blockpoolID=BP-266453957-192.168.56.10-1597729418207
layoutVersion=-60
slave 的 datanode信息
> cd /usr/local/src/hadoop-2.6.1/dfs/data/current
> cat VERSION
#Sat Aug 24 04:47:43 EDT 2019
storageID=DS-40ea875f-c037-49d3-b6e9-da8e9ff1d4eb
clusterID=CID-adbba37c-a4d3-4b60-8d1b-3ac22ee863df
cTime=0
datanodeUuid=d7f1a2f9-4604-4bf1-a1c7-90d553fb62b8
storageType=DATA_NODE
layoutVersion=-56
可以看到,namenode 和 datanode 的 clusterID 不一样,可以认为两者所在的集群是一样的。
这时有一个解决办法,在我这个场景下测试过有效:
第一步:停止集群:
> ./hadoop-2.6.1/sbin/stop-all.sh
第二步:删除logs文件夹和tmp文件夹
> rm -rf /hadoop-2.6.1/logs
> rm -rf /hadoop-2.6.1/tmp
第三步:查看VERSION文件是否存在,如果存在的话,把它删除:
> cd /hadoop-2.6.1/dfs/name/current
> ls -l
如果有VERSION文件,直接删除:
> rm -f VERSION
第四步:所有slave节点删除VERSION文件
> cd /usr/local/src/hadoop-2.6.1/dfs/data/current
> rm -f VERSION
第五步:格式化namenode
>  namenode -format
这一步如果不执行的话,直接启动集群会导致master节点没有namenode
第六步:启动集群
> ./hadoop-2.6.1/sbin/start-all.sh
第七步:查看是否各个进程都启起来了:
master:
> jps
16595 Jps
16216 RunJar
15595 NameNode
15917 ResourceManager
slave :
> jps
8369 NodeManager
8492 Jps
8271 DataNode
第8步,查看master和slave节点的VERSION
master:
> cat VERSION
#Tue Aug 18 01:59:54 EDT 2020
namespaceID=2000705856
clusterID=CID-5e8393c4-8eec-4f49-8be2-5935c1e215d7
cTime=0
storageType=NAME_NODE
blockpoolID=BP-1566447260-192.168.56.10-1597730394165
layoutVersion=-60
> cat VERSION
#Tue Aug 18 02:01:23 EDT 2020
storageID=DS-d47a197e-c210-4dac-bc78-dfd1c4338bb2
clusterID=CID-5e8393c4-8eec-4f49-8be2-5935c1e215d7
cTime=0
datanodeUuid=1c8cea38-f6ad-415b-bf53-8e47bd7bacf8
storageType=DATA_NODE
layoutVersion=-56
这样就可以了
自己搭建的集群,启动hadoop时slave节点的datanode没有启起来怎么办?的更多相关文章
- kubeadm搭建kubernetes集群之三:加入node节点
		
在上一章<kubeadm搭建kubernetes集群之二:创建master节点>的实战中,我们把kubernetes的master节点搭建好了,本章我们将加入node节点,使得整个环境可以 ...
 - Linux下搭建tomcat集群全记录(转)
		
本文将讲述如何在Linux下搭建tomcat集群,以及搭建过程中可能的遇到的问题和解决方法.为简单起见,本文演示搭建的集群只有两个tomact节点外加一个apache组成,三者将安装在同一机器上:ap ...
 - Linux下搭建tomcat集群全记录
		
(转) Linux下搭建tomcat集群全记录 2011-10-12 10:23 6133人阅读 评论(1) 收藏 举报 tomcatlinuxapacheinterceptorsession集群 1 ...
 - 搭建Elasticsearch集群常见问题
		
一.ES安装方法: Linux用户登录(bae),我们用的是5.3版本的包.从官网下载: curl -L -O https://artifacts.elastic.co/downloads/elast ...
 - 基于Dokcer搭建Redis集群搭建(主从集群)
		
最近陆陆续续有不少园友加我好友咨询 redis 集群搭建的问题,我觉得之前写的这篇 <基于Docker的Redis集群搭建> 文章一定是有问题了,所以我花了几分钟浏览之前的文章总结了下面几 ...
 - Hadoop集群搭建:用三台云服务器搭建HA集群(过程记录和分享)
		
该文主要记录了自己用云服务器搭建集群的过程,也分享一些自己遇到的问题和解决方法.里面可能提及一些自己的理解,可能不够准确,希望大家能够指正我,谢谢. 1.什么是HA集群 HA :High Availa ...
 - Hadoop ha CDH5.15.1-hadoop集群启动后,集群容量不正确,莫慌,这是正常的表现!
		
Hadoop ha CDH5.15.1-hadoop集群启动后,集群容量不正确,莫慌,这是正常的表现! 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.集群启动顺序 1>. ...
 - Hadoop ha CDH5.15.1-hadoop集群启动后,两个namenode都是standby模式
		
Hadoop ha CDH5.15.1-hadoop集群启动后,两个namenode都是standby模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一说起周五,想必大家都特别 ...
 - Hadoop的HA集群启动和停止流程
		
假设我们有3台虚拟机,主机名分别是hadoop01.hadoop02和hadoop03. 这3台虚拟机的Hadoop的HA集群部署计划如下: 3台虚拟机的Hadoop的HA集群部署计划 hadoop0 ...
 
随机推荐
- 在npm发布自己造的轮子
			
提到封装组件,发布到npm,很多同学都会觉得很神秘.但其实,npm包无非就是我们平时写的比较独立且可复用的模块.当然,想要发布,除了基础组件的编写外,还要进行一些包装.下文通过一个简单的案例,和大家一 ...
 - PHP wordwrap() 函数
			
实例 按照指定长度对字符串进行折行处理: <?php高佣联盟 www.cgewang.com$str = "An example of a long word is: Supercal ...
 - Virtuoso 中 display.drf、techfile.tf、tech.db 之间的关系,以及 Packet 在它们之间的作用
			
https://www.cnblogs.com/yeungchie/ 一般工艺库下的"技术文件"有 tech.db 和 techfile.tf , Packet 是 display ...
 - AtCoder Grand Contest 044 A  Pay to Win 贪心
			
LINK:Pay to Win 自闭了 比赛的时候推出来正解了 以为复杂度不对 写完扔了 没拿map存状态就扔了23333... 一个T点:在更新map的时候 >不要写成>= 不然会徒劳的 ...
 - 使用Scrapy编写爬虫程序中遇到的问题及解决方案记录
			
1.创建与域名不一致的Request时,请求会报错 解决方法:创建时Request时加上参数dont_filter=True 2.当遇到爬取失败(对方反爬检测或网络问题等)时,重试,做法为在解析res ...
 - zabbix配置自定义监控
			
目录 zabbix配置自定义监控项---进程监控 1. 编写获取进程状态的脚本 2. 修改配置文件,添加自定义key 3. 配置监控项 4. 添加触发器 5. 媒介和动作 6. 触发并验证 zabbi ...
 - Linux之iptables原理详解
			
目录: 一.netfilter与iptables 二.filter.nat.mangle等规则表 三.INPUT.FORWARD等规则链和规则 四.Linux数据包路由原理 五.iptables编写规 ...
 - Hibernate 映射
			
在使用单纯hibernate文件映射时,项目应包含以下文件: hibernate.cfg.xml 放在src/或根目录下 1 <?xml version='1.0' encoding='utf ...
 - 【HNOI2012】永无乡 题解(并查集+线段树合并)
			
题目链接 给定一张含$n$个点$m$条边的无向图,每个点有一个重要指数$a_i$.有两种操作:1.在$x$和$y$之间连一条边:2.求$x$所在连通块中重要程度第$k$小的点. ----------- ...
 - .NET 异步详解
			
前言 博客园中有很多关于 .NET async/await 的介绍,但是很遗憾,很少有正确的,甚至说大多都是"从现象编原理"都不过分. 最典型的比如通过前后线程 ID 来推断其工作 ...