mapreduce.Job: Running job: job_1553100392548_0001

这几天一直在尝试一个mapreduce的例子,但是一直都是卡在mapreduce.Job: Running job: job_1553100392548_0001,查看日志也不报错,查看每个配置文件没有问题,很纳闷。今晚决定把整个流程梳理一下,试图找出问题原因,果然功夫不负有心人。

首先来说一下现象

运行的时候一直卡在这个界面

也没有报错。很奇怪。

然后访问Applications查看情况(http://192.168.23.130:8088

看到这个页面,有点奇怪,这个任务是未定义的,而且进度条也不动。然后再继续点进去看

发现yarn并没有分配处理节点。那么这是为什么呢?

哦,突然想起来自己是只起了一个datanode和一个nodemanager【因为自己电脑内存不够,搭建集群的时候弄了4个虚拟机,后来每次只起两个机器来用,一个作为NameNode/ResourceManager,另外一台作为DataNode/NodeManager;由此节省一些内存。】而恰好问题就出现在了这里。

因为你只有一个datanode节点,而副本的数量为2,这时候就很难办了。所以当你向hdfs上传文件的时候,只有一个地方存放,而后来在统计的时候,yarn分配资源又无法找到这些文件在哪里,不知道应该用哪个NodeManager来处理。这样就没有办法处理,所以导致程序一直卡住,但是也不会报错。

解决办法:

把当前NameNode节点也作为一个DataNode节点和NodeManager即可。也就是修改slaves配置文件即可

原来只有一台mini2

现在把mini1也加入进去作为一个从节点

然后重启hdfs集群和yarn集群,再次执行

发现果然成功了

再看看管理页面上,也不一样了

至此,已经把这个问题解决了。纳闷了好几天,终于可以松口气了。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值