1.
job.properties
nameNode=hdfs://192.168.130.54:19000
jobTracker=192.168.130.54:19001
queueName=default
#HDFS上的目录
oozie.wf.application.path=/tmp/oozie/conf
oozie.libpath=/tmp/oozie/lib
inputDir=/tmp/oozie/input
outputDir=/tmp/oozie/output/
2.
workflow.xml
<workflow-app xmlns="uri:oozie:workflow:0.1" name="map-reduce-wf">
<start to="wordcount"/>
<action name="wordcount">
<map-reduce>
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${outputDir}"/>
</prepare>
<configuration>
<property>
<name>mapred.mapper.new-api</name>
<value>true</value>
</property>
<property>
<name>mapred.reducer.new-api</name>
<value>true</value>
</property>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
<property>
<name>mapreduce.mapper.class</name>
<value>org.myorg.WordCount$WordCountMapper</value>
</property>
<property>
<name>mapreduce.reducer.class</name>
<value>org.myorg.WordCount$WordCountReducer</value>
</property>
<property>
<name>mapred.output.key.class</name>
<value>org.apache.hadoop.io.Text</value>
</property>
<property>
<property>
<name>mapred.output.value.class</name>
<value>org.apache.hadoop.io.IntWritable</value>
</property>
<property>
<name>mapred.map.tasks</name>
<value>1</value>
</property>
<property>
<name>mapred.input.dir</name>
<value>${inputDir}</value>
</property>
<property>
<name>mapred.output.dir</name>
<value>${outputDir}</value>
</property>
</configuration>
</map-reduce>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Map/Reduce failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
3.
HDFS目录结构
/tmp
/tmp/oozie
/tmp/oozie/conf
/tmp/oozie/conf/workflow.xml
/tmp/oozie/conf/job.properties
/tmp/oozie/input
/tmp/oozie/input/data.txt
/tmp/oozie/lib
/tmp/oozie/lib/wordcount.jar
4. 运行:bin/ooize job -config ../map-reduce/job.properties -run
查看oozie.log,会抛出异常如下:
2012-07-18 16:26:41,546 INFO ActionStartCommand:525 - USER[hmail] GROUP[users] TOKEN[] APP[map-reduce-wf] JOB[0000004-120718160353104-oozie-hmai-W] ACTION[0000004-120718160353104-oozie-hmai-W@wordcount] Next Retry, Attempt Number [3] in [60,000] milliseconds
2012-07-18 16:27:41,583 WARN ActionStartCommand:528 - USER[hmail] GROUP[users] TOKEN[] APP[map-reduce-wf] JOB[0000004-120718160353104-oozie-hmai-W] ACTION[0000004-120718160353104-oozie-hmai-W@wordcount] [***0000004-120718160353104-oozie-hmai-W@wordcount***]In call()....status=START_RETRY
2012-07-18 16:27:41,776 WARN ActionStartCommand:528 - USER[hmail] GROUP[users] TOKEN[] APP[map-reduce-wf] JOB[0000004-120718160353104-oozie-hmai-W] ACTION[0000004-120718160353104-oozie-hmai-W@wordcount] Error starting action [wordcount]. ErrorType [TRANSIENT], ErrorCode [JA009], Message [JA009: Call to /192.168.130.54:19000 failed on local exception: java.io.EOFException]
org.apache.oozie.action.ActionExecutorException: JA009: Call to /192.168.130.54:19000 failed on local exception: java.io.EOFException
at org.apache.oozie.action.ActionExecutor.convertException(ActionExecutor.java:361)
at org.apache.oozie.action.hadoop.JavaActionExecutor.addToCache(JavaActionExecutor.java:297)
at org.apache.oozie.action.hadoop.JavaActionExecutor.setLibFilesArchives(JavaActionExecutor.java:350)
at org.apache.oozie.action.hadoop.JavaActionExecutor.submitLauncher(JavaActionExecutor.java:492)
at org.apache.oozie.action.hadoop.JavaActionExecutor.start(JavaActionExecutor.java:582)
at org.apache.oozie.command.wf.ActionStartCommand.call(ActionStartCommand.java:128)
at org.apache.oozie.command.wf.ActionStartCommand.execute(ActionStartCommand.java:249)
at org.apache.oozie.command.wf.ActionStartCommand.execute(ActionStartCommand.java:47)
at org.apache.oozie.command.Command.call(Command.java:202)
at org.apache.oozie.service.CallableQueueService$CallableWrapper.run(CallableQueueService.java:132)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.io.IOException: Call to /192.168.130.54:19000 failed on local exception: java.io.EOFException
at org.apache.hadoop.ipc.Client.wrapException(Client.java:1142)
at org.apache.hadoop.ipc.Client.call(Client.java:1110)
at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:226)
at $Proxy22.getProtocolVersion(Unknown Source)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:398)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:384)
at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:111)
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:213)
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:180)
at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:89)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1514)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:67)
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:1548)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1530)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:228)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:111)
at org.apache.hadoop.filecache.DistributedCache.addFileToClassPath(DistributedCache.java:431)
at org.apache.oozie.service.KerberosHadoopAccessorService$4.run(KerberosHadoopAccessorService.java:227)
at org.apache.oozie.service.KerberosHadoopAccessorService$4.run(KerberosHadoopAccessorService.java:222)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1127)
at org.apache.oozie.service.KerberosHadoopAccessorService.addFileToClassPath(KerberosHadoopAccessorService.java:222)
at org.apache.oozie.action.hadoop.JavaActionExecutor.addToCache(JavaActionExecutor.java:276)
... 11 more
Caused by: java.io.EOFException
at java.io.DataInputStream.readInt(DataInputStream.java:375)
at org.apache.hadoop.ipc.Client$Connection.receiveResponse(Client.java:815)
at org.apache.hadoop.ipc.Client$Connection.run(Client.java:724)
5. 查了一下这个异常,网上有说是因为因为服务器端的hadoop和客户端的不一致,我的oozie和hadoop版本分别是hadoop-0.20.2,oozio是oozie-2.3.2-cdh3u2,oozie中所包含的hadoop-core也是0.20.2版本的,应该不是这个问题吧,求大侠解救
相关推荐
它允许用户定义、调度和协调各种类型的任务,如 MapReduce、Pig、Hive、Spark 等,提供了一个集中式的管理和监控平台。在深入理解 Oozie 的功能之前,我们首先关注的是 "oozie-branch-4.1.zip" 这个压缩包,它包含了...
工作流可以包含多个动作,如执行Hive查询、运行MapReduce任务等。 2. 协调器(Coordinator):协调器负责根据时间或数据触发工作流的执行,实现周期性或者基于数据触发的作业。 3. 仪表板(Web UI):提供友好的用户...
1. **工作流管理**:Oozie支持定义和执行复杂的工作流程,这些流程可以包含Hadoop MapReduce、Pig、Hive、 Sqoop等任务,以及外部系统的命令行操作。 2. **协调器作业**:允许基于时间或数据可用性来调度工作流程,...
在4.1.0版本中,Oozie提供了一个灵活、可扩展的框架,允许用户定义和执行复杂的作业流程,支持多种类型的数据处理任务,包括MapReduce、Pig、Hive、Sqoop以及Java程序等。 **核心功能** 1. **工作流管理**:Oozie ...
《Apache Oozie 5.0.0:工作流调度利器》 Apache Oozie 是一个集成在Hadoop生态系统中的工作流调度系统,专为管理Hadoop作业而设计。Oozie 5.0.0 版本是该工具的一个重要里程碑,它于2019年6月25日发布,提供了多项...
手把手视频详细讲解项目开发全过程,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 课程简介 从零开始讲解大数据调度系统构成,集成大数据计算任务构建大数据工作流... 2.Oozie任务的提交 3.Oozie任务的关闭
oozie-5.1.0.tar.gz 编译结果,受限上传大小,文件分3部分
7. **Oozie任务提交** - 编写作业定义文件(如workflow.xml),指定作业的执行流程。 - 将作业依赖的库文件(JARs)上传到HDFS。 - 创建job.properties文件,包含作业配置信息。 - 使用oozie客户端命令提交作业...
oozie-5.1.0.tar.gz 编译结果,受限上传大小,文件分3部分
3. **回调与轮询**:Oozie通过回调机制或轮询来确定任务完成情况,保证任务的正确执行。 4. **控制流节点**:包括开始、结束、失败节点以及决策、分支、合并节点,用于控制工作流执行流程。 5. **Action支持**:...
### Maven、Oozie、Pig在Linux环境下的搭建指南 #### Maven的安装与配置 1. **下载与解压Maven** 首先根据官方文档的要求下载Maven压缩包,并进行解压。确保下载的是适用于当前操作系统的版本。 2. **配置环境...
- Oozie Server是Oozie的核心组件,负责接收客户端提交的工作流定义、调度任务并监控其执行状态。 - 它通常运行在一个集群节点上,并且可以通过HTTP REST API与之交互。 **2. 数据库** - Oozie Server使用数据库来...
Oozie是Apache软件基金会的一个项目,专为Hadoop设计,能够协调Hadoop生态系统中的各种任务,如MapReduce、Pig、Hive、Sqoop和Java程序等。它提供了一个灵活的工作流调度机制,使得大数据处理更加有序和自动化。...
+ 提交 oozie 调度文件到 hdfs 指定路径执行命令:hadoop fs –put oozie_run /tmp/ 上传路径在 job.properties 文件中 filepath,oozie.coord.application.path 两个属性指定。 + 提交并执行调度任务:进入 oozie...
linux.64 下的 oozie-4.3.0.tar.gz 源码包 解压后编译即可 注意对应的版本 cd bin ./mkdistro.sh -Phadoop-2 -Dhadoop.auth.version=2.8.2 -Ddistcp.version=2.8.2 -Dhadoop.version=2.8.2 -Dsqoop.version=1.4.6 -...
【Oozie的安装与配置】是Hadoop生态系统中的一个重要环节,Oozie是一个工作流调度系统,用于管理和协调Hadoop集群上的各种作业,如MapReduce、Pig、Hive、Spark等。以下是对Oozie安装配置过程的详细解释: 1. **所...
安装Oozie4.1.0-CDH版本 这个安装过程同样适用于oozie4.1.0的其他的CDH版本。 先对文件进行下载: 这里使用的是CDH版本的,免编译,看着编译的过程就够了。下载地址: ...
它能够协调 Hadoop 相关的作业,如 MapReduce、Pig、Hive 和 Sqoop,以及外部系统如 Java 作业或命令行程序。Oozie 提供了一个用户友好的 Web 界面和 REST API,方便用户定义、监控和管理工作流。 在部署 Oozie 时...
Oozie支持多种类型的Hadoop任务,包括MapReduce、Pig、Hive、Sqoop等,同时也支持通过Java Action执行自定义的Java程序。 **JavaAction**是Oozie提供的一个特殊功能,允许用户编写Java程序来实现自定义逻辑,这些...