其实我不是很想写这次总结的,一是自己本身有很多知识都还没完全弄懂;二是自己本身已经懒癌中期,太麻烦了,不大想花心思去写一些不是很有意义的东西.但是今天在做Mapreduce相关案例的时候,遇到一个问题,在网上查看了很多帖子发现都没有用,没有看到比较具体的解决方案,花了很多时间,虽然最后还是弄好了,但过程还是挺难受的,所以想写个总结,如果有同学遇到相同问题的话,可以看看,或许会有点帮助吧.说一下问题吧,将写好代码打包成jar包,在CentOS的终端命令中运行jar包.(ps:为了方便大家了解,这里以入门级通用的wc.jar为例)
运行过程中会发现jar包一直卡在INFO mapreduce.Job:Running job:job_id处,无法继续运行,当出现这种情况的时候,小伙伴们别再等了,可能是配置文件mapred-site.xml或者yarn-site.xml配置有误.进入hadoop文件包下的/etc/hadoop,可以看到以上两个配置文件
输入命令vim + mapred-site.xml(这里的itcast01是我的主机名可以用ip地址来代替,itcast01是为方便学习就照用了传智的名号)
这里说一下,如果在mapred-site.xml写
<property>
<name>mapreduce.job.tracker</name>
<value>hdfs://192.168.76.130:8001</value>
<final>true</final>
</property>
是通过MRv2执行Job.
如果在文件中写
<property> <name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
则是用yarn来计算.一般两份代码根据需求写一份就可以了,如果两份都写,那它会自动默认yarn计算方案.
接着vim yarn-site.xml
配置文件修改完成后,回到/sbin目录下
重启start-dfs.sh和start-yarn.sh两个文件
命令行:
./start-dfs.sh
./start-yarn.sh
启动后,再重新运行jar包
成功运行!
!
!
!
!
纯属小弟个人见解,如果有误,请各位大佬莫见怪哈!!!!