在软件包安装期间是否应该配置Oozie / Sqoop jar位置?

时间:2016-04-05 16:49:11

标签: hadoop oozie sqoop hortonworks-data-platform ambari

我在CentOS 6.7中使用HDP 2.4。

我已经使用Ambari创建了群集,因此Oozie由Ambari安装和配置。

运行与jar文件位置相关的Oozie / Sqoop时出现两个错误。第一个涉及postgresql-jdbc.jar,因为Sqoop作业是从Postgres逐步导入的。我将postgresql-jdbc.jar文件添加到HDFS并在workflow.xml中指出:

<file>/user/hdfs/sqoop/postgresql-jdbc.jar</file>

它解决了这个问题。但第二个错误似乎与kite-data-mapreduce.jar有关。但是,对此文件执行相同的操作:

<file>/user/hdfs/sqoop/kite-data-mapreduce.jar</file>

似乎没有解决问题:

  

Oozie Launcher失败,主要课程   [org.apache.oozie.action.hadoop.SqoopMain],main()抛出异常,   组织/ kitesdk /数据/ DatasetNotFoundException   java.lang.NoClassDefFoundError:   组织/ kitesdk /数据/ DatasetNotFoundException

Ambari并没有自动配置这一点似乎很奇怪,我们在开始收到错误时必须将jar文件复制到HDFS中。

这是正确的方法还是我错过了一些配置步骤?

1 个答案:

答案 0 :(得分:2)

由于类路径中缺少jar,所以会发生这种情况。我建议您在oozie.use.system.libpath=true文件中使用属性job.properties。所有与sqoop相关的jar都将自动添加到类路径中。然后将您需要的自定义jar添加到工作流应用程序路径的lib目录中。将从/user/oozie/share/lib/lib_<timestamp>/sqoop/*.jar添加所有与sqoop相关的jar。