【Flume】通過Hue提交Oozie SSH Action用命令啓動Flume腳本報錯Unable to find java executable.

【背景】在配置好Flume後,在控制檯通過flume-ng agent --conf /* --conf-file /* --name agent Dflume.root.logger=INFO,console命令啓動Flume Agent沒有問題。但是將這個命令通過Oozie SSH Action運行的時候卻發現,Sink的目錄沒有結果文件,且ps -ef | grep flume也沒有Flume Agent的進程。
因爲將啓動Flume Agent的命令在控制檯打印的日誌寫入到了機器上的一個日誌文件裏了,查看這個日誌的時候,發現報錯:
Info: Sourcing environment configuration script /*/flume-env.sh
Warning: JAVA_HOME is not set!
Error: Unable to find java executable. Is it in your PATH?

找到bin/flume-ng文件,發現文件中有這樣一句話:
if [ -n "${FLUME_CONF_DIR}" -a -f "${FLUME_CONF_DIR}/flume-env.sh" ]; then
    source "$FLUME_CONF_DIR/flume-env.sh"
fi
if [ -z "${JAVA_HOME}" ] ; then
    echo "Warning: JAVA_HOME not set!"
    JAVA_DEFAULT=`type -p java`
    [ -n "$JAVA_DEFAULT" ] || error "Unable to find java executable. Is it in your PATH?" 1
    JAVA_BIN=`dirname $JAVA_DEFAULT`
    JAVA_HOME=`dirname $JAVA_BIN`
fi

找到/*/flume-env.sh文件,看到export JAVA_HOME=$JAVA_HOME

【解決】修改/*/flume-env.sh文件相關行爲export JAVA_HOME=/*/jdk1.*

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章