问题描述:在centos7系统搭建的伪分布式Hadoop基础上,用Sqoop把HDFS上的数据导出到Mysql的时候,发现任务执行时卡死在如下图所示的这一步:
卡了接近十分钟意识到可能永远也不会结束了....赶紧ctrl+c结束进程,找找原因。首先搜了下资料,发现大多数教程都说是内存不足引起的,可在运行这个命令之前只运行过一次wordcount例程,按道理不可能占用过多内存。排除内存问题。
打开hadoop web运行监控界面,在Application标签页找到正在运行的application,查看logs,发现一直循环报错:
“org.apache.hadoop.ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8030. ”
就是连不上ResourceManagerserver的意思,这个8030端口应该是没有正常开启。
接下来看看日志里有没有详细报错信息:http://localhost:8088/logs/
因为已经运行到MapReduce.Job才卡住,所以直接找reducemanager的日志,打开http://localhost:8088/logs/hadoop-root-resourcemanager-localhost.localdomain.log (localhost.localdomain是我的hostname)
(非常枯燥的工作,从几百行密密麻麻的文字里找“ERROR”)
终于找到了,提示“org.apache.hadoop.yarn.exceptions.YarnRuntimeException: java.lang.InterruptedException”