前些天oozie的安装已经全部完成了,下面我们来看看上传实例,oozie自带的有oozie的几个实例,这里我们以map-reduce为例讲解,初步了解下oozie的使用。
1.解压oozie-examples.tar文件:
tar-zxvf oozie-examples.tar
然后会解压出一个examples文件夹,在里面找到map-reduce文件夹。
2.看到该文件夹下有下面几个文件:
workflow.xml、job.properties和lib,下面我就具体说下这几个文件都是什么。
job.properties,这里提供了workflow.xml中所需要的参数,oozie在运行时,首先会调用job.properties来读取参数,具体内容如下:
nameNode=hdfs://localhost:8020 jobTracker=localhost:8021 queueName=default examplesRoot=examples
oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/map-reduce outputDir=map-reduce |
这里的内容和我们实际搭建的环境不服,需要求改:
namenode改成hadoop的namenode地址,jobTracker同理。这里我们看到这样一个参数“oozie.wf.application.path”,这个参数是致命一个地址,这个地址就是oozie提交的实例需要存在于这个路径下。下面是我修改后的具体内容:
nameNode=hdfs://192.168.132.2:9000 jobTracker=192.168.132.2:9001 queueName=default examplesRoot=examples
oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/map-reduce outputDir=map-reduce |
|
具体内容根据自己的需求来写,这个是实例,什么都不需要更改。
lib文件中保存的是需要的map-reduce的jar包。
下面我们就可以把这些文件上传到hadoop上:
$hadoopfs -mkdir /user/hadoop
$hadoopfs -put /usr/oozie/examples /user/hadoop/
这样我们的实例就全部上传上去了。然后我们可以执行下oozie:
ooziejob -oozie http://192.168.132.2:11000/oozie -config/usr/oozie/examples/apps/map-reduce/job.properties -run
之后我们会得到一个id,这个id就是job的id,然后登陆192.168.132.2:11000/oozie,就可以看到任务的执行状况。
截图:任务进行中:
任务完成: