[英]Oozie Job Error - java.io.IOException: configuration is not specified
I have created one oozie workflow for hive script to load data in a table.我为 hive 脚本创建了一个 oozie 工作流,用于在表中加载数据。
My workflow.xml contains -我的工作流.xml 包含 -
<workflow-app xmlns="uri:oozie:workflow:0.4" name="Hive-Table-Insertion">
<start to="InsertData"/>
<action name="InsertData">
<hive xmlns="uri:oozie:hive-action:0.4">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${workflowRoot}/output-data/hive"/>
<mkdir path="${workflowRoot}/output-data"/>
</prepare>
<job-xml>${workflowRoot}/hive-site.xml</job-xml>
<configuration>
<property>
<name>oozie.hive.defaults</name>
<value>${workflowRoot}/hive-site.xml</value>
</property>
</configuration>
<script>load_data.hql</script>
</hive>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Hive failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
My job.properties file contains -我的 job.properties 文件包含 -
nameNode=hdfs://localhost:8020
jobTracker=localhost:8021
queueName=default
workflowRoot=HiveLoadData
oozie.libpath=${nameNode}/user/oozie/share/lib
oozie.wf.application.path=${nameNode}/user/${user.name}/${workflowRoot}
When I try to submit my job using command "oozie job -oozie http://localhost:11000/oozie -config /user/oozie/HiveLoadData/job.properties -submit" I get following error,当我尝试使用命令“oozie job -oozie http://localhost:11000/ oozie -config /user/oozie/HiveLoadData/job.properties -submit”提交我的作业时,出现以下错误,
java.io.IOException: configuration is not specified
at org.apache.oozie.cli.OozieCLI.getConfiguration(OozieCLI.java:729)
at org.apache.oozie.cli.OozieCLI.jobCommand(OozieCLI.java:879)
at org.apache.oozie.cli.OozieCLI.processCommand(OozieCLI.java:604)
at org.apache.oozie.cli.OozieCLI.run(OozieCLI.java:577)
at org.apache.oozie.cli.OozieCLI.main(OozieCLI.java:204)
configuration is not specified
The path that you give to the -config
parameter must exist on the local drive (not on HDFS).您为
-config
参数指定的路径必须存在于本地驱动器上(而不是 HDFS 上)。 Make sure that /user/oozie/HiveLoadData/job.properties
does exist - do eg ls /user/oozie/HiveLoadData/job.properties
on the same machine where you execute the oozie job -oozie...
command确保
/user/oozie/HiveLoadData/job.properties
确实存在 - 例如在执行oozie job -oozie...
命令的同一台机器上执行ls /user/oozie/HiveLoadData/job.properties
The path that you give to the -config parameter must exist on the local drive (not on HDFS). 您为-config参数指定的路径必须存在于本地驱动器上(而不是HDFS上)。 Make sure that /user/oozie/HiveLoadData/job.properties does exist - do eg ls /user/oozie/HiveLoadData/job.properties on the same machine where you execute the oozie job -oozie... command
确保/user/oozie/HiveLoadData/job.properties确实存在 - 例如在执行oozie job -oozie ...命令的同一台机器上执行ls /user/oozie/HiveLoadData/job.properties
bin/oozie job --oozie http://node03:11000/oozie -config oozie_works/sereval-actions/job.properties -run
这是一种可以运行的可引导格式。
您可以尝试使用--config
参数:
$ oozie job --oozie http://node03:11000/oozie --run --config job.properties
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.