Hadoop问题:启动hadoop 2.6遇到的datanode启动不了
问题描述:第一次启动输入jps都有,第二次没有datanode
日志如下:
查看日志如下: -- ::, INFO org.mortbay.log: Started HttpServer2$SelectChannelConnectorWithSafeStartup@0.0.0.0:
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: dnUserName = root
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: supergroup = supergroup
-- ::, INFO org.apache.hadoop.ipc.CallQueueManager: Using callQueue class java.util.concurrent.LinkedBlockingQueue
-- ::, INFO org.apache.hadoop.ipc.Server: Starting Socket Reader # for port
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Opened IPC server at /0.0.0.0:
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Refresh request received for nameservices: null
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Starting BPOfferServices for nameservices: <default>
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Block pool <registering> (Datanode Uuid unassigned) service to localhost/127.0.0.1: starting to offer service
-- ::, INFO org.apache.hadoop.ipc.Server: IPC Server Responder: starting
-- ::, INFO org.apache.hadoop.ipc.Server: IPC Server listener on : starting
-- ::, INFO org.apache.hadoop.hdfs.server.common.Storage: DataNode version: - and NameNode layout version: - -- ::, INFO org.apache.hadoop.hdfs.server.common.Storage: Lock on /home/hadoop/tmp/dfs/data/in_use.lock acquired by nodename @henry-ThinkPad-T400
-- ::, FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to localhost/127.0.0.1:. Exiting.
java.io.IOException: Incompatible clusterIDs in /home/hadoop/tmp/dfs/data: namenode clusterID = CID-19f887ba-2e8d-4c7e-ae01-e38a30581693; datanode clusterID = CID-14aac0b3-3c32-45db-adb8-b5fc494eaa3d
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.addStorageLocations(DataStorage.java:)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:)
at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:)
at java.lang.Thread.run(Thread.java:)
-- ::, WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool <registering> (Datanode Uuid unassigned) service to localhost/127.0.0.1:
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool <registering> (Datanode Uuid unassigned)
-- ::, WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Exiting Datanode
-- ::, INFO org.apache.hadoop.util.ExitUtil: Exiting with status
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down DataNode at henry-ThinkPad-T400/127.0.0.1
************************************************************/
问题分析:在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式化命令(hdfs namenode -format),
这时namenode的clusterID会重新生成,而datanode的clusterID 保持不变。
问题总结:datanode的clusterID 和 namenode的clusterID 不匹配。
解决办法:根据日志中的路径,cd /home/hadoop/tmp/dfs 能看到 data和name两个文件夹,
将name/current下的VERSION中的clusterID复制到data/current下的VERSION中,覆盖掉原来的clusterID,让两个保持一致
然后重启,启动后执行jps,查看进程
Hadoop问题:启动hadoop 2.6遇到的datanode启动不了的更多相关文章
- hadoop namenode多次格式化后,导致datanode启动不了
jps hadoop namenode -format dfs directory : /home/hadoop/dfs --data --current/VERSION #Wed Jul :: CS ...
- hadoop多次格式化后,导致datanode启动不了
hadoop namenode -format多次格式化后,datanode启动不了 org.apache.hadoop.ipc.RemoteException(java.io.IOException ...
- hadoop2集群中的datanode启动以后自动关闭的问题
今天在启动前几天搭建成功的hadoop集群的时候,出现了datanode启动之后自动关闭的情况,经过查询之后发现问题产生的原因是:在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式 ...
- 启动hadoop,没有启动namenode进程。log4j:ERROR setFile(null,true) call faild.
启动hadoop,没有启动namenode进程.log4j:ERROR setFile(null,true) call faild. 解决办法: cd /home/hadoop/hadoop-en ...
- 启动Hadoop HA Hbase zookeeper spark
服务器角色 服务器 192.168.58.180 192.168.58.181 192.168.58.182 192.168.58.183 Name CentOSMaster Slvae1 Slave ...
- Hadoop - Mac OSX下配置和启动hadoop以及常见错误解决
0. 安装JDK 参考网上教程在OSX下安装jdk 1. 下载及安装hadoop a) 下载地址: http://hadoop.apache.org b) 配置ssh环境 在terminal里面输入: ...
- 启动hadoop报192.168.1.151: Address 192.168.1.151 maps to node1, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
使用root用户启动hadoop的时候报错: [root@node1 ~]# su - hadoop -c start-all.sh starting namenode, logging to /ap ...
- 启动hadoop
1.启动前先将主节点下hadoop-2.2.0/hdfs/下,清空,然后新建name文件夹 2.将从节点下hadoop-2.2.0/hdfs/下,清空,然后新建data文件夹 3.hadoop-2.2 ...
- hadoop多次格式化后,导致datanode启动不了,怎么办?(伪分布式)
根据当初 hadoop 安装目录下 conf 目录的 core-site.xml 的设置,找到该目录: 进入该目录 在 data 和 name 文件夹下均有 current 文件夹 ,和 cur ...
- 启动hadoop的命令
start-all.sh 启动所有的Hadoop守护进程.包括NameNode. Secondary NameNode.DataNode.JobTracker. TaskTrack stop-all ...
随机推荐
- css实现切角效果
1. 一个切角 思路:如果我们要得到有一个切角的元素,我们只需要使用一个径向渐变就可以达到这个目标,这个渐变需要把一个透明色标放在切角处,然后再相同的位置设置另一个色标,并且把它的颜色设置成我们想要的 ...
- RGB颜色 对照表
来自为知笔记(Wiz)
- Push to origin/master was rejected (Git提交错误)
[问题描述] 在使用Git Push代码的时候,会出现 Push to origin/master was rejected 的错误提示. 在第一次提交到代码仓库的时候非常容易出现,因为初始化的仓库和 ...
- IOS 触摸事件分发机制详解
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:MelonTeam 前言 很多时候大家都不关心IOS触摸事件的分发机制的实现原理,当遇到以下几种情形的时候你很可能抓破头皮都找不到解决方案 ...
- MySQL数据库操作
一创建数据库 1 语法(help create database) CREATE DATABASE 数据库名 charset utf8; 2 数据库命名规则: 可以由字母.数字.下划线.@.#.$ 区 ...
- boltdb的实现
整个代码不是很复杂,可以从代码中理解如何实现. 特点:btree,很小巧,但实现了完整事务机制,稳定,即使丢电也不会导致数据库错误. 整个结构如下: meta page (前两页) --- > ...
- 【读书笔记】【深入理解ES6】#13-用模块封装代码
什么是模块 模块是自动运行在严格模式下并且没有办法退出运行的 JavaScript 代码. 在模块顶部创建的变量不会自动被添加到全局变量作用域,这个变量仅在模块的顶级作用域中存在,而且模块必须导出一些 ...
- Python面试题解答
1. 一个谜题 >>> t = (1, 2, [30, 40]) >>> t[2] += [50, 60] 到底会发生下面 4 种情况中的哪一种? a. t变成(1 ...
- python中的与 和 或
上周五写程序碰到需要处理多重判断的一个逻辑,一般正确的写法是: if a or b or (c and d) or e: pass 因为变量很长,看上去比较杂乱,自己灵机一动写成了如下的样子: if ...
- oracle练习--@余生请指教多
--1.查询出每个员工的编号,姓名,职位select Emp_id,Ename,job from emp;--2.查询每个员工的岗位名称select Ename,job from emp;--3.计算 ...