对ApacheOozie比较陌生,在Ubuntu14.04、Hadoop2.6.0和JDK1.8上安装过。我可以安装oozie,并且可以在服务器的11000端口看到web控制台。现在,当我复制与oozie捆绑在一起的示例并尝试运行它们时,我遇到了一个错误,即不存在sharedlib。
安装sharedlib如下-bin/oozie-setup.sh sharedlib create-fshdfs://localhost:54310
(my namenode在localhost 54310上运行,jt在localhost 54311上运行)
hadoopfs-ls/user/hduser/share/lib显示了根据oozie-site.xml文件创建的共享库。但是,当我使用命令-oozie admin-oozie检查共享库时http://localhost:11000/oozie-shareliblist该列表为空,并且作业也因相同原因失败。
我该如何处理这个问题有什么线索吗?
谢谢。
3条答案
按热度按时间rslzwgfq1#
sharelib create命令看起来不错。
如果您还没有这样做,请复制
core-site.xml
从hadoop安装文件夹进入$OOZIE_HOME/conf/hadoop-conf/
. 可能已经有“占位符”core-site.xml
在hadoop conf文件夹中,删除或重命名该文件夹。oozie并不是直接从hadoop安装(比如hive)获得hadoop配置,而是从core-site.xml
你在那个地方吗hadoop-conf
文件夹。qv7cva1a2#
我也遇到过同样的问题,结果是oozie无法与hdfs通信,因为它无法找到core-site.xml或任何其他hadoop配置的位置,这些配置必须在oozie-site.xml中声明。oozie-site.xml中对应的属性是oozie.service.hadoopaccessorservice.hadoop.configurations在我的示例中,此属性定义错误。将它改为指向hadoop配置xmls所在的位置,然后它开始与hdfs通信,因此能够在hdfs上找到sharelib
ej83mcc03#
好吧,我有个解决办法。因此,当我试图创建sharedlib目录时,它是在hdfs上执行的,但是在运行作业时,本地路径被引用。因此,我提取了本地/user/hduser/share/lib目录中的oozie sharedlib tar.gz文件,它现在可以工作了。但没有得到原因,所以这仍然是一个悬而未决的问题。