使用Oozie找不到Hadoop集群JAVA_HOME路径

时间:2016-01-20 10:02:41

标签: hadoop oozie java-home path-variables

我们有一个Hadoop Cluster 2.3,其中JAVA_HOME设置为:

(cluster etc/profile)
$ echo $JAVA_HOME = /usr/lib/jvm

运行Oozie Check表单Ambari会导致“一切正常”,但在运行任何oozie命令时,我们会收到错误,例如:

$ oozie version
$ /usr/hdp/2.3.0.0-2557/oozie/bin/oozie.distro: line 59: /usr/lib/jvm/bin/java: 
No such file or directory

这可能是因为脚本/usr/hdp/2.3.0.0-2557/oozie/bin/oozie.distro中的代码尝试使用以下方法计算和使用JAVA_BIN路径:

...    
JAVA_BIN=${JAVA_HOME}/bin/java  
...

哪个不存在!

我们的Hortonworks沙箱中的JAVA_HOME设置方式非常不同,并且oozie工作正常:

(sandbox - cannot see any JAVA_HOME set into etc/profile)
$ echo $JAVA_HOME = /usr/lib/jvm/java-1.7.0-openjdk.x86_64

将群集的JAVA_HOME更改为指向正确位置还是可能影响群集中的其他功能是否安全?

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果您通过命令

安装了默认的jdk
> sudo apt-get install default-jdk

然后,你应该将JAVA_HOME设置为

> $JAVA_HOME = /usr/lib/jvm/jdk-version

因为默认情况下会使用此路径,您还需要在 / .bashrc 文件中进行更新。