1.错误日志:
Directory /tmp/hadoop-root/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible.
错误原因:
在Linux下Hadoop等的各种数据默认保存在 /tmp目录下。当重启系统后 /tmp目录中的数据信息被清除,导致Hadoop启动失败。确定目录 /tmp/hadoop-root/dfs/name是否存在
解决方案:
使用命令bin/hadoop namenode -format 格式化NN,即可正常启动。

2.错误日志:
Incompatible namespaceIDS in … :namenode namespaceID = … ,datanode namespaceID=…  
错误原因:
格式化NameNode后会重新创建一个新的namespaceID,以至于和DataNode上原有的不一致。  
解决方案:
1) 在 /tmp/hadoop-root/dfs/data 目录下残留的数据删掉,重新建(很麻烦,但看你了)
2) 狠方法:bin/stop-all.sh hadoop fs namenode -format bin/start-all.sh
3) 登上DataNode,把位于{dfs.data.dir}/current/VERSION中的namespaceID改为和NameNode相同即可(推荐)

[hadoop@dtydb6 current]$ cat VERSION
#Fri Dec :: CST
namespaceID=
storageID=DS--10.4.124.236--

3.错误日志:
使用CDH5,进入hive 想创建表,报告以上的异常”Name node is in safe mode”,使用命令”hadoop dfsadmin -safemode leave ”让其离开安全模式,仍然不能解决。


解决方案:
使用CDH5发行版,在一般命令之前都要添加“sudo –u hdfs”(ROOT级命令)

# sudo –u hdfs hadoop dfsadmin –safemode leave

4.关于 Warning: $HADOOP_HOME is deprecated.
hadoop 1.0.0 版本,安装完之后敲入hadoop 命令时, 老是提示这个警告:Warning: $HADOOP_HOME is deprecated.
经查 hadoop-1.0.0/bin/hadoop 脚本和“hadoop-config.sh”脚 本,发现脚本中对HADOOP_HOME的环境变量设置做了判断,笔者的环境根本不需要设置HADOOP_HOME环境变量。
解决方案:
1) 编辑“/etc/profile”文件,去掉 HADOOP_HOME 的变量设定,重新输入hadoop fs 命令,警告消失。
2) 编辑“/etc/profile”文件,添加一个环境变量,之后警告消失:export HADOOP_HOME_WARN_SUPPRESS=1
3) 编辑“hadoop-config.sh”文件,把下面的“if - fi”功能注释掉。

5.解决“no datanode to stop ”问题
原因:每次 namenode format 会重新创建一个 namenodeId,而 /tmp/dfs/data 下包含了上次 format 下的 id,namenode format 清空了 namenode 下的数据,但是没有清空 datanode 下的数据。导致启动时失败,所要做的就是每次 fotmat 前,清空 /tmp 一下的所有目录。
解决方案:
修改每个 Slave 的 namespaceID 使其与Master即NN的 namespaceID 一致。

6.Slave 服务器中datanode启动后又自动关闭
查看日志发下如下错误:ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Call to ... failed on local exception: java.net .NoRouteToHostException: No route to host
解决方案:
关闭防火墙:service iptables stop

7.从本地往hdfs 文件系统上传文件
出现如下错误:INFO hdfs.DFSClient: Exception in createBlockOutputStream java.io.IOException: Bad connect ack with firstBadLink
INFO hdfs.DFSClient: Abandoning block blk_-1300529705803292651_37023
WARN hdfs.DFSClient: DataStreamer Exception: java.io.IOException: Unable to create new lock.
解决方案:
1) 关闭防火墙:service iptables stop
2) 禁用selinux:编辑“/etc/selinux/config”文件,设置“SELINUX=disabled”

8.hadoop集群启动start-all.sh的时候,slave总是无法启动datanode,并会报错:… could only be replicated to 0 nodes, instead of 1 … 就是有节点的标识可能重复。也可能有其他原因,以下解决方法请依次尝试。
解决方法:
1).删除所有节点dfs.data.dir和dfs.tmp.dir目录(默认为tmp/dfs/data和tmp/dfs/tmp)下的数据文件;然后重新hadoop namenode -format 格式化节点;然后启动。
2).如果是端口访问的问题,你应该确保所用的端口都打开,比如hdfs://machine1:9000/、50030、50070之类的。执行#iptables -I INPUT -p tcp –dport 9000 -j ACCEPT 命令。如果还有报错:hdfs.DFSClient: Exception in createBlockOutputStream java.net.ConnectException: Connection refused;应该是datanode上的端口不能访问,到datanode上修改iptables:#iptables -I INPUT -s machine1 -p tcp -j ACCEPT
3).还有可能是防火墙的限制集群间的互相通信。尝试关闭防火墙。/etc/init.d/iptables stop
4).最后还有可能磁盘空间不够了,请查看 df -al

Hadoop错误日志的更多相关文章

  1. Hive分析hadoop进程日志

    想把hadoop的进程日志导入hive表进行分析,遂做了以下的尝试. 关于hadoop进程日志的解析 使用正则表达式获取四个字段,一个是日期时间,一个是日志级别,一个是类,最后一个是详细信息, 然后在 ...

  2. 深入剖析HADOOP程序日志

    深入剖析HADOOP程序日志 前提 本文来自于 博客园 逖靖寒的世界 http://gpcuster.cnblogs.com 了解log4j的使用. 正文 本文来自于 博客园 逖靖寒的世界 http: ...

  3. hadoop 错误处理机制

    hadoop 错误处理机制 1.硬件故障 硬件故障是指jobtracker故障或TaskTracker 故障 jobtracker是单点,若发生故障,目前hadoop 还无法处理,唯有选择最牢靠的硬件 ...

  4. 【夯实PHP基础】nginx php-fpm 输出php错误日志

    本文地址 原文地址 分享提纲: 1.概述 2.解决办法(解决nginx下php-fpm不记录php错误日志) 1. 概述 nginx是一个web服务器,因此nginx的access日志只有对访问页面的 ...

  5. nginx php-fpm 输出php错误日志

    nginx是一个web服务器,因此nginx的access日志只有对访问页面的记录,不会有php 的 error log信息. nginx把对php的请求发给php-fpm fastcgi进程来处理, ...

  6. SQL Server 错误日志过滤(ERRORLOG)

    一.背景 有一天我发现SQL Server服务器的错误日志中包括非常多关于sa用户的登陆错误信息:“Login failed for user 'sa'. 原因: 评估密码时出错.[客户端: XX.X ...

  7. MySQL错误日志总结

    MySQL错误日志是记录MySQL 运行过程中较为严重的警告和错误信息,以及MySQL每次启动和关闭的详细信息.错误日志的命名通常为hostname.err.其中,hostname表示服务器主机名. ...

  8. MS SQL 监控错误日志的告警信息

    SQL Server的错误消息(Error Message)按照消息的严重级别一共划分25个等级,级别越高,表示严重性也越高.但是如果你统计sys.messages,你会发现,实际上只有16(SQL ...

  9. [AlwaysOn Availability Groups]SQL Server错误日志(AG)

    SQL Server错误日志(AG) SQL Server错误日志会记录影响AG的时间,比如: 1.和Windows故障转移集群交互 2.可用副本的状态 3.可用数据的状态 4.AG endpoint ...

随机推荐

  1. SQLSERVER 函数大全

    转自:http://blog.csdn.net/travylee/article/details/7216481 SQL2008 表达式:是常量.变量.列或函数等与运算符的任意组合. 1. 字符串函数 ...

  2. (四)Web应用开发---系统架构图

    系统宏观架构:EASYUI+MVC 系统架构图一. 系统架构图二.

  3. compass利用koala在chrome开启scss调试

    compass不生成maps文件,所载调试css上,极不方便.看到下图的调试方式,怎么做. 利用用koala来解决,具体步骤如下: 1.确保自己安装了ruby和sass,compass.接着安装 co ...

  4. 前端 html input标签 disable 属性

    该属性只要出现在标签中,表示禁用该控件 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...

  5. HTML5(字符标准,表单)

    字符标准 <meta charset="utf-8"> 表单 1.HTML 表单用于搜集不同类型的用户输入. 实例——创建文本字段 <form action=&q ...

  6. mysql数据库的初始化及相关配置

    接着上篇文章我们继续探讨在安装完mysq数据库之后的一些相关配置: 一.mysql数据库的初始化 我们在安装完mysql数据库以后,会发现会多出一个mysqld的服务,这个就是咱们的数据库服务,我们通 ...

  7. recv函数返回值说明

    recv函数 int recv( SOCKET s, char FAR *buf, int len, int flags); 不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据. ...

  8. 第六章 数据库设计之ER模型

    在ER图中实体用方框表示 实体其实就相当于一个二维表,实体实例就相当于二维表中的一行 属性在二维表中用椭圆表示,属性就是描述实体特征的数据项 概念:键(也被成为候选键):1,属性集合K上的行唯一   ...

  9. yii2模板

    GridView 小部件在开发中常用的功能及技巧.持续更新中.... 数据网格或者说 GridView 小部件是Yii中最强大的部件之一.它有一个属性名叫 dataProvider ,这个属性能够提供 ...

  10. POJ3608

    计算两个凸包之间的最小距离,旋转卡壳法详解在旋转卡壳的用法之计算两个凸 包上的最近距离 #include <iostream> #include<cstdio> #includ ...