oozie自带示例的运行

oozie自带示例的运行

一、运行示例前的准备工作

1.启动oozie

oozie-start.sh或者oozie-run.sh,具体区别见上篇。

2.进入oozie的安装目录,解压oozie自带的examples

tar -zxvf  oozie-examples.tar.gz

解压后会在当前目录下会生成examples文件夹,接下来所要运行的oozie的示例都在examples里面

3.解压oozie运行依赖库:

tar -zxvf oozie-sharelib-2.3.2-cdh3u6.tar.gz

解压后会在当前目录下生成share目录,里面的jar包是oozie运行时所必须的库文件。

4.在hdfs中分别创建examples、share目录

hadoop fs -mkdir examples share

5.将第2和第3步骤解压得到的examples和share目录下的文件放入相应的hdfs中的目录下:

[zhu@zhu oozie-2.3.2-cdh3u6]$ hadoop fs -put examples/*  examples

[zhu@zhu oozie-2.3.2-cdh3u6]$ hadoop fs -put share/*  share  

二、运行示例

1.运行map-reduce示例

(1).进入oozie安装目录的examples/apps/map-reduce目录下,可以看到job,properties、lworkflow.xml两个文件及lib文件夹,参考如下:

oozie自带示例的运行_第1张图片

(2).修改job.properties文件:

将nameNode和jobTracker的端口号改为自己机器上对应的端口号,我的系统中hdfs端口为9000,jobTracker的端口为9001,所以修改如下:


注:如果不清楚自己系统的hdfs端口号和jobTracker端口的话,可以分别查看hadoop安装路径下conf目录下的core-site.xml和mapred-site.xml文件。

(3).修改hadoop安装路径下的conf目录下的core-site.xml文件:

在该文件里面加入如下配置信息:

oozie自带示例的运行_第2张图片

读者把上面的两个”zhu“改为自己对应的用户和该用户所在的组就ok了。

由于oozie运行的程序需放入hdfs内,且在以上两个步骤中对job.properties和workflow.xml文件做了修改,所以在此处必须重新把examples目录下的所有文件重新放入hdfs里面的examples目录下:

[zhu@zhu examples] hadoop fs -rmr examples/*

[zhu@zhu examples] hadoop fs -put * examples

然后,执行如下命令:

oozie job -oozie http://localhost:11000/oozie -config job.properties -run

打开浏览器,输入http://localhost:11000/oozie/,可以看到如下结果:

oozie自带示例的运行_第3张图片

这是可以查看此job的输出信息:

hadoop fs -cat examples/output-data/map-reduce/part-00000

part-00000内容如下:

oozie自带示例的运行_第4张图片

三、异常情况说明:

1.Error: E0902 : E0902: Exception occured: [java.net.ConnectException: Call to localhost/127.0.0.1:8020 failed on connection exception: java.net.ConnectException: Connection refused]

上面的异常信息是说localhost/127.0.0.1:8020端口拒绝连接。

这说明,你的系统中hdfs的连接端口不是8020,只要将8020改为你hdfs的连接端口就ok了,我的是9000。

编辑job.properties文件:

将nameNode=hdfs://localhost:8020改为nameNode=hdfs://localhost:9000。

同时,别忘了把jobTracker=localhost:8021改为 jobTracker=localhost:9001,参考如下:


注:如果不清楚自己系统的hdfs端口号和jobTracker端口的话,可以分别查看hadoop安装路径下conf目录下的core-site.xml和mapred-site.xml文件。

2.Error: E0902 : E0902: Exception occured: [org.apache.hadoop.ipc.RemoteException: User: zhu is not allowed to impersonate zhu]异常处理:

上面的异常是说当前提交oozie的job作业的“zhu”用户没有权限调用hadoop,解决的方法就是在在hadoop/conf目录下修改core-site.xml,加上如下内容:

oozie自带示例的运行_第5张图片

其他示例的运行下次再写。。。。。


你可能感兴趣的:(综合,oozie)