1,环境情况
安装的CDH5.4,使用CM来管理各个组件(Yarn、Spark、HDFS、Hive、Oozie……)。
2,在shell命令下提交Oozie作业
①sudo –u hdfs hadoop fs –mkdir /user/cdhfive 创建一个专门的用户目录,这里为cdhfive
②sudo –u hdfs hadoop –chown –R cdhfive /user/cdhfive 权限更改
③hadoop fs –put examples /user/cdhfive/ 把示例文件上传到HDFS上的cdhfive用户目录下
④oozie job -oozie http://localhost:11000/oozie -config examples/apps/map-reduce/job.properties –run 提交作业给oozie
⑤oozie job --oozie http://localhost:11000/oozie -info 0000001-151009154615306-oozie-oozi-W 查询提交的作业
3,碰到的问题
①提交过程中出现HadoopAccessorException异常
这个有很多原因,其中之一就是:在 oozie examples 中使用的jobTracker端口是8021(job.properties 文件),这是MR1.0的配置端口。若集群配置的是使用Yarn,则需要把端口改成8032
②在oozie的web界面上,查询作业状态时出现:
ACTION[0000001-151009154615306-oozie-oozi-W@mr-node] Error starting action [mr-node]. ErrorType [TRANSIENT], ErrorCode [JA009], Message [JA009: org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException: Invalid resource request, requested memory < 0, or requested memory > max configured, requestedMemory=1536, maxMemory=1225
at org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerUtils.validateResourceRequest(SchedulerUtils.java:203)
at org.apache.hadoop.yarn.server.resourcemanager.RMAppManager.validateAndCreateResourceRequest(RMAppManager.java:377)
at org.apache.hadoop.yarn.server.resourcemanager.RMAppManager.createAndPopulateNewRMApp(RMAppManager.java:320)
at org.apache.hadoop.yarn.server.resourcemanager.RMAppManager.submitApplication(RMAppManager.java:273)
at org.apache.hadoop.yarn.server.resourcemanager.ClientRMService.submitApplication(ClientRMService.java:574)
at org.apache.hadoop.yarn.api.impl.pb.service.ApplicationClientProtocolPBServiceImpl.submitApplication(ApplicationClientProtocolPBServiceImpl.java:213)
原因是yarn-site.xml中的两处配置值太小了,不满足作业的申请条件
把yarn-site.xml中的两处配置加大一点:
容器内存 yarn.nodemanager.resource.memory-mb
最大容器内存 yarn.scheduler.maximum-allocation-mb
本文转自hapjin博客园博客,原文链接:http://www.cnblogs.com/hapjin/,如需转载请自行联系原作者