我们经常会遇到一些问题,而且可能会重复性遇到,这些方案可以收藏为以后备用。我们经常遇到如下问题:
1.两次以上格式化造成NameNode 和 DataNode namespaceID 不一致,有几种解决办法?
2.如何动态添加DataNode 动态将某个节点加入到集群中
3.用window 提交eclipse 任务发现权限不通过:
4.eclipse 运行中发现 Name node is  in safe mode

1.两次以上格式化造成NameNode 和 DataNode namespaceID 不一致。

报错:ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /var/lib/hadoop-0.20/cache/hdfs/dfs/data: namenode
namespaceID = 240012870; datanode namespaceID = 1462711424 .

解决方法1:修改$hadoop.tmp.dir    下的dfs/data/current/VERSION 文件中namespaceID 使其一致。
解决方法2:这个有点残暴,就是清空hadoop.tmp.dir这个目录,在我这里是/home/work/hadoop_tmp
分析:
上面是很多新手经常遇到的问题,hadoop.tmp.dir是什么?下面给大家详细看一下:
我是通过图1操,vim hdfs-site.xml

<ignore_js_op> 
图1

查看hdfs.xml文件内容的.

图2是hdfs.xml文件的内容,位于hadoop/conf文件夹下。

<ignore_js_op> 
图2

hadoop.tmp.dir这个代表的意思hadoop的存放目录,类似我们的数据是放在本地文件中的C盘还是D盘。但是因为Linux特殊的文件系统,所以存放在了/home/work/hadoop_tmp文件夹下。
上面我们懂得了,hadoop.tmp.dir它的意思,那么我们进一步

进入通过 vim dfs/data/current/VERSION

<ignore_js_op>

编辑下面内容:修改namenodeID即可。
<ignore_js_op>

2.DataNode 或者 JobTracker 出了故障 单独启动

hadoop-daemon.sh start datanode
        hadoop-daemon.sh start jobtracker

3.动态添加DataNode 动态将某个节点加入到集群中

hadoop-daemon.sh --config ./conf start datanode
        hadoop-daemon.sh --config ./conf start tasktracker
相关内容还可以查看
hadoop集群添加namenode的步骤及常识

4.在运行过程中发现error:unmappable character for  encoding UTF8

由于java 程序不是utf8,所以在提交后不能解析的原因,将eclipse 编码设置成utf8:
<ignore_js_op>

这里交给大家该如何修改:
通过Window-》preference
<ignore_js_op>

通过上上面操作,我们找到workspace,然后修改编码即可

<ignore_js_op>

5. 用window 提交eclipse 任务发现不通过:

原因:本地用户administrator(本机windows用户)想要远程操作hadoop系统,没有权限引起的。

解决办法:
1、如果是测试环境,可以取消hadoop hdfs的用户权限检查。打开conf/hdfs-site.xml,找到dfs.permissions属性修改为false(默认为true)OK了。(1.2.1 版本只有这个方法可行),如何操作可以参考第一个问题。
<ignore_js_op>

2、修改hadoop location参数,在advanced parameter选项卡中,找到hadoop.job.ugi项,将此项改为启动hadoop的用户名即可
3 修改window 机器的用户名为 hadoop 用户名。
5. 1用eclipse 连接远程集群连接不上
1.除了防火墙
2.权限修改
3.ip需要设置为静态
4.检查集群是否开启

6. 运行过程中发现Java heap space OutOfMemory

修改 hadoop-env.sh 文件 将:export HADOOP_CLIENT_OPTS="-Xmx128m $HADOOP_CLIENT_OPTS"
改成:export HADOOP_CLIENT_OPTS="-Xmx2048m $HADOOP_CLIENT_OPTS"

7 eclipse 运行中发现 Name node is  in safe mode

  1. org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot delete /tmp/hadoop-SYSTEM/mapred/system. Name node is in safe mode.
  2. The ratio of reported blocks 0.9412 has not reached the threshold 0.9990. Safe mode will be turned off automatically.
  3. at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.deleteInternal(FSNamesystem.java:1992)
  4. at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.delete(FSNamesystem.java:1972)
  5. at org.apache.hadoop.hdfs.server.namenode.NameNode.delete(NameNode.java:792)
  6. at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
  7. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  8. at java.lang.reflect.Method.invoke(Method.java:597)
  9. at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:563)
  10. at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1388)
  11. at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1384)
  12. at java.security.AccessController.doPrivileged(Native Method)
  13. at javax.security.auth.Subject.doAs(Subject.java:396)
  14. at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1083)
  15. at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1382)
  16. :bin/hadoop dfsadmin -safemode leave (解除安全模式)

复制代码

在分布式文件系统启动的时候,开始的时候会有安全模式,当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入安全模式。在实践过程中,系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。
safemode参数说明:
enter - 进入安全模式
leave - 强制NameNode离开安全模式
get -   返回安全模式是否开启的信息
wait - 等待,一直到安全模式结束。

解决方案:bin/hadoop dfsadmin -safemode leave

8. Invalid Hadoop Runtime specified; please click 'Configure Hadoop install directory' or fill in library location input
field

解决办法:eclipse window->preferences - > Map/Reduce  选择hadoop根目录

9. storage directory does not exist or is not accessible.

  1. Bad connection to FS. command aborted. exception: Call to dp01-154954/192.168.13.134:9000 failed on connection exception: java.net.ConnectException: Connection refused: no further information
  2. ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory D:\tmp\hadoop-SYSTEM\dfs\name is in an inconsistent
  3. state: storage directory does not exist or is not accessible.

复制代码

重新格式化  bin/hadoop namenode -format  (小心不要拼错)

10 hbase

INFO org.apache.hadoop.hbase.util.FSUtils: Waiting for dfs to exit safe mode...
:bin/hadoop dfsadmin -safemode leave (解除安全模式)

11.win7下 ssh启动不了  错误:ssh: connect to host localhost port 22: Connection refused

输入windows 登录用户名

<ignore_js_op>

<ignore_js_op>

1347456879_9365.jpg (36.15 KB, 下载次数: 4)

下载附件  保存到相册

2014-3-5 22:41 上传

 

下一篇:

Hadoop常见错误问题及解决方法总结二

hadoop常见错误汇总及解决办法一的更多相关文章

  1. Hadoop常见错误问题及解决方法总结二

    问题导读:1.遇到问题该如何排除错误?2.看不到namenode的可能原因是什么?3.地址占用该如何解决?4.could only be replicatied to 0 nodes, instead ...

  2. hadoop常见错误总结三

    问题导读:1.... could only be replicated to 0 nodes, instead of 1 ...可能的原因是什么?2.Error: java.lang.NullPoin ...

  3. hadoop常见错误

    hadoop常见错误集锦: 1.DataXceiver error processing WRITE_BLOCK operation ERROR org.apache.hadoop.hdfs.serv ...

  4. coreseek常见错误原因及解决方法

    coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...

  5. 李洪强iOS开发之OC常见错误汇总

    // //  main.m //  16 - 常见错误汇总 // //  Created by vic fan on 16/7/13. //  Copyright © 2016年 李洪强. All r ...

  6. android studio 错误汇总以及解决办法

    android studio 错误汇总以及解决办法  参考 https://www.jianshu.com/p/7c7de6562231 问题1. Error:Execution failed for ...

  7. Excel公式的常见错误值及其解决方法

    Excel公式的常见错误值及其解决方法 经常用Excel的朋友可能都会遇到一些莫名奇妙的错误值信息:# N/A!.#VALUE!.#DIV/O!等等,出现这些错误的原因有很多种,如果公式不能计算正确结 ...

  8. PHP常见错误汇总

    日常开发和调试的时候,经常会遇到一些错误,光怪陆离的不知所以,所以,特此将错误汇总一下,借鉴!!! 1. 原因分析:  一般可能是该文件出现了问题,检查一下代码和格式,是否出现开始的地方出现了空格,或 ...

  9. NHibernate常见错误汇总

    NHibernateSample.Data.Test.QueryHQLFixture.WhereTest: NHibernate.Hql.Ast.ANTLR.QuerySyntaxException ...

随机推荐

  1. Delphi.format填充0

    1. ]);// 一共8位数字不够的补零 2. 3. 4. 5.

  2. 【Python】 简易实现接口测试自动化

    实现思路 使用excel管理用例用例信息,requests模块发送http请求,实现了记录日志,邮件发送测试报告的功能 目录结构如下: 下面直接上代码: 统筹脚本 # -*- coding:utf-8 ...

  3. 开发H5游戏引擎的选择:Egret或Laya?

    开发H5游戏引擎的选择:Egret或Laya? 一.总结 一句话总结:选laya吧 二.开发H5游戏引擎的选择:Egret或Laya? 一.H5游戏开发的引擎介绍 开发H5游戏的引擎有很多,比如egr ...

  4. spring mvc: xml练习

    xml练习,得到的结果是: <?xml version="1.0" encoding="UTF-8" standalone="yes" ...

  5. spring mvc: 可参数化的视图控制器(在配置中指定jsp文件)MultiActionController/SimpleUrlHandlerMapping/ParameterizableViewController

    spring mvc: 可参数化的视图控制器(在配置中指定jsp文件)MultiActionController/SimpleUrlHandlerMapping/ParameterizableView ...

  6. ACM比赛辅导--授课内容

    Lesson1(3月19日) 1.讲解Dev-C++.VC++6.0的单步调试方法 2.学习比赛的基本输入输出,练习C语言网的1085—1092 Lesson2(3月21日) 1.学习挑战程序设计,第 ...

  7. IOS-Quartz2D(Paths元素)

    Paths中的几个重要元素 Points void CGContextMoveToPoint (    CGContextRef c,    CGFloat x,    CGFloat y ); 指定 ...

  8. Ansible 小手册系列 十七(特性模块)

    异步操作和轮询 --- # Requires ansible 1.8+ - name: 'YUM - fire and forget task' yum: name=docker-io state=i ...

  9. MySQL + KeepAlived + LVS 单点写入主主同步高可用架构实验

    分类: MySQL 架构设计 2013-05-08 01:40 5361人阅读 评论(8) 收藏 举报 mysql 高可用 keepalive ㈠ 实战环境 服务器名· IP OS MySQL odd ...

  10. Prism 4 文档 ---第10章 Silverlight和WPF之间共享代码

        本主题帮助你理解来自Prism的多目标和它的优缺点.多目标的代码针对两个不同的平台有大致相同的代码库.这允许同时保持代码尽可能多一样能够产生针对两种不同技术的二进制文件.在这种情况下,本节介绍 ...