使用Oozie客户端提交其他任务
操作场景
除了Hive、Spark2x、Loader任务,也支持使用Oozie客户端提交MapReduce、Java、Shell、HDFS、SSH、SubWorkflow、Streaming、定时等任务。
请下载使用最新版本的客户端。
前提条件
- Oozie组件及客户端已经安装,并且正常运行。
- 已创建或获取访问Oozie服务的人机用户账号及密码。
- 获取运行状态的Oozie服务器(任意实例)URL,如“https://10.1.130.10:21003/oozie”。
- 获取运行状态的Oozie服务器主机名,如“10-1-130-10”。
- 获取Yarn ResourceManager主节点IP,如10.1.130.11。
操作步骤
- 以客户端安装用户,登录安装Oozie客户端的节点。
- 执行以下命令,获取安装环境信息。其中“/opt/client”为客户端安装路径,该操作的客户端目录只是举例,请根据实际安装目录修改。
source /opt/client/bigdata_env
- 判断集群认证模式。
- 安全模式,执行kinit命令进行用户认证。
例如,使用oozieuser用户进行认证。
kinit oozieuser
- 普通模式,执行4。
- 安全模式,执行kinit命令进行用户认证。
- 根据提交任务类型,进入对应样例目录。
表1 样例目录列表 任务类型
样例目录
Mapreduce任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/map-reduce
Java任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/java-main
Shell任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/shell
Streaming任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/streaming
SubWorkflow任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/subwf
SSH任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/ssh
定时任务
客户端安装目录/Oozie/oozie-client-*/examples/apps/cron
其他任务样例中已包含HDFS任务样例。
样例目录下需关注文件如表2所示。
- 执行以下命令,编辑“job.properties”文件。
vi job.properties
修改如下内容:
更改“userName”的参数值为提交任务的人机用户名,例如“userName=oozieuser”。
- 执行oozie job命令,运行工作流文件。
oozie job -oozie https://oozie角色的主机名:21003/oozie -config job.properties文件所在路径 -run
例如:
oozie job -oozie https://10-1-130-10:21003/oozie -config
/opt/client/Oozie/oozie-client-*/examples/apps/map-reduce/job.properties -run