hadoop常见错误解决方法
一、启动集群时
1.节点启动失败
1.1端口占用
1.1报错信息:address already in use - bind Address:50070
解决步骤:
查询端口占用:lsof -i:50070
查询到占用端口的进程:pid
杀死进程:kill -9 {pid}
1.2找不到路径
1.2报错信息(namenode):could not find dir:xxx -> 找不到namenode格式化产生的路径
格式化:hdfs namenode -format
每次格式化时都会产生新的集群id -> clusterID
/home/bigdata/hadoop/data/dfs/name/current/VERSION
1.3子节点启动失败
1.3报错信息(datanode):
/home/bigdata/hadoop/data/dfs/dn/current/VERSION
删除之前遗留的信息:dn
手动修改VERSION中的版本信息,使得一致 jps发现进程已经没有,但是重新启动集群,提示进程已经开启。原因是在linux的根目录下/tmp目录中存在启动的进程临时文件,将集群相关进程删除掉,再重新启动集群。
1.4连接失败
1.4要求输入密码
slaves -> dfs.sh、yarn.sh -> 配置免密码登录(包括启动脚本的机器)
-------------------------------------------------------------->若namenode也为datanode,启动DataNode时也会使用ssh免密登录方式开启节点
1.5进程启动成功 -> 消失
datanode,nodeManager -> logs -> retry:8032 -> shutdown
启动时用22号端口启动----->访问主节点被防火墙拦截----->尝试一定次数自动杀死进程
防火墙
二、HDFS操作
1.1报错信息:permission denied -> 权限不足
(1)伪装用户(启动hdfs进程的用户)
-------> 配置环境变量HADOOP_HOME ,HADOOP_USER_NAME
------->System.setProperty("hadoop.home",""); ~~ JAVA代码中设置
(2)hdfs-site.xml -> 关闭权限校验
1.2报错信息:无法建立通信 -> 8020
保证hdfs进程启动,查看防火漆
三、运行MR时
1.1日志位置:
(1)web的管理界面 (8088,job名点开)
(2)$HADOOP_HOME/logs/userlogs -> 三个日志文件
1.2报错信息(远程调用执行)
(1)权限不足 中间结果的临时目录无相关权限 -> hdfs dfs -chmod -R 777 /tmp
(2)结果输出目录已经存在
(3)源数据目录不存在
(4)逻辑错误
(5)accept阶段卡住不动
查看队列中是否有正在运行的MR任务
检查resourceManager/nodeManager 的防火墙是否关闭
四、HIVE启动时
1.1日志位置:在conf中指定 -> /home/${user.home} -> hive.log
1.2报错信息
(1)parseException 解析某个配置文件(hive-site.xml)的某行/列有错误,
直接去目标位置修改
(2)JDBC相关异常 -> 启动过程中读取配置文件打开MySQL
检查相关参数
(3)MySQL数据库密码修改 -> host,user唯一确定的密码(联合主键的方式实现)
密码验证信息存放位置在mysql.user ---> host,password,user,password_expired,权限相关
方式一:直接修改表 -> update mysql.user set password = password('xxx') where host = 'xx' and user = 'xx'
方式二:set password = password('root'); -> 重置密码可解决密码过期问题
添加或修改一条连接规则:
GRANT ALL PRIVILEGES ON *.* to 'user'@'host' IDENTIFIED by 'root' WITH GRANT OPTION;
FLUSH PRIVILEGES;
(4)ClassNotFountException:com.mysql.jdbc.Driver
拷贝驱动jar包至$HIVE_HOME/lib
(5)远程操作时 return code 1 (系统停止级别为1,非正常停止)
可查看hive.log,一般是/tmp/hadoop-yarn/staging/anonymous权限不足,修改文件权限即可
HWI的页面打不开时,要导入4个jar包到指定目录下。
五、SQOOP
1.错误信息(在Sqoop1.4.7中有):
Could not load org.apache.hadoop.hive.conf.HiveConf. Make sure HIVE_CONF_DIR is set correctly.
解决办法(环境变量中添加):
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HIVE_HOME/lib/*
source .bash_profile 2.数据上传成功,hive的warehouse无法查看:
向Hive中导入数据时指定数据元(复制Hive中的hive-site.xml至sqoop的配置文件目录下)
1.Hive默认使用derby作为数据元信息存储数据库
2.在数据导入时如果不进行配置会导致在MySQL中无法正常写入数据结构信息
3.在Hive中无法查询到表的结构信息--->将hive-site.xml移动到sqoop的conf目录下
cp /home/bigdata/apache-hive-1.2.2-bin/conf/hive-site.xml /home/bigdata/sqoop-1.4.7.bin/conf/
hadoop常见错误解决方法的更多相关文章
- Hbase常见错误解决方法
Hbase常见错误解决方法 原文转载至:https://www.jianshu.com/p/5fd74812c56c 我是通过maven管理的依赖,直接修改maven依赖中hbase的版本就可以了 ...
- Spark程序运行常见错误解决方法以及优化
转载自:http://bigdata.51cto.com/art/201704/536499.htm Spark程序运行常见错误解决方法以及优化 task倾斜原因比较多,网络io,cpu,mem都有可 ...
- jack server 常见错误解决方法【转】
本文转载自:https://blog.csdn.net/qq_27061049/article/details/70156200 jack 服务常见错误解决方法 当你编译Android时,你不需要修改 ...
- Tomcat安装教程及常见错误解决方法
目录 Tomcat安装教程及常见错误解决方法 一.安装前准备 ·熟悉自己电脑的操作系统版本(32位or64位) ·保证电脑上已经装好JDK,并且已经设置好环境变量. 二.Tomcat安装教程(以Tom ...
- C#常见错误解决方法
1.能提供Visual Studio开发工具包吗? 解决方法: Visual Studio 2017开发环境下载地址: https://www.visualstudio.com/zh-hans/dow ...
- maven 常见错误解决方法
1. 最重要的一点,使用国内镜像,比如 oschina.net 的镜像: 搜 jar 推荐:http://maven.outofmemory.cn/,速度极快. 2. 错误:Could not res ...
- File already exists: filesystem '/path/file', transaction svn常见错误解决方法
前言 多人任务基本都会用到SVN,于是提交的时候如果不先更新在提交或者操作顺序不对,会经常出现错误,其中File already exists: filesystem这个就是个常见问题,上网找了半天没 ...
- 用Rvm安装Ruby,Rails运行环境及常见错误解决方法
一.安装Rvm 1.下载安装Rvm $ curl -L https://get.rvm.io | bash -s stable 此时可能出现错误:"gpg: 无法检查签名:找不到公钥&quo ...
- maven编译常见错误解决方法整理
程序包com.sun.xml.internal.ws.spi不存在 当maven项目里面有用到JDK内部的一些类,接口(如:com.sun.xml.internal.ws.spi.ProviderIm ...
随机推荐
- Git--查看,删除,添加远程分支
1. 查看远程分支: $ git branch -a 2. 删除远程分支: $ git push origin --delete <branch name> 或者 git push --d ...
- Delphi XE10在 Android下调用静态库a文件
Delphi Seatle can link Delphi project with Static library files(*.a): 1.at Delphi IDE, Add the " ...
- 解决Js跨域访问的问题
1,最近有个需求,用Js获取Html标签<input type="file"/>的路径!遇到代码拒绝访问,提示安全验证,不允许跨域访问,简单的设置一下浏览器即可,不过对 ...
- 留言板(初学者使用js实现)
代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- json数组按照日期先后排序
var allMyApp = [ {"startDate": "2018-07-07 12:30:00",'name':'aa'}, {"startD ...
- IAR新建MSP430工程
一.在IAR官网下载IAR for MSP430 软件 https://www.iar.com/iar-embedded-workbench/#!?architecture= 选择MSP430,然后 ...
- Python--通过索引excel表将文件进行文件夹分类的脚本+读取指定目录下所有文件名的脚本
1.通过索引excel表将文件进行文件夹分类的脚本,此脚本由于将ip和id对应并生成对应id的文件夹将文件进行分类,也可以任意规定表格内容,通过vul_sc_ip.txt和xlsx文件进行索引. # ...
- Python使用__slots__限制实例属性
#定义一个类Student class Student(object): __slots__ = ('name','age') #用元组(tuple)的形式绑定属性名称 s = Student() s ...
- Flex 网络图
这个是最简单的网络拓扑图开发,我已经帮你把所有拓扑元素封装好,然后直接添加就会具有相关的特性.并且的底层元素也开源,也方便大家oem修改.只需10分钟就可以建设一个完善的拓扑图. 首先下载工程或者SW ...
- 20155311高梓云补交的Mypc课下实践
20155311高梓云补交的Mypc课下实践 老师,由于我自己的疏忽导致没有及时交上这次作业.这是我的代码和截图. ``` ```/**import java.io.; import java.lan ...