0
シェルスクリプトを使用してOozieジョブを起動しようとしています。しかし、シェルスクリプトの実行時に以下のエラーが発生しています:シェルスクリプト経由でoozieアクションを呼び出すときにエラーが発生しました。
"command not found" error in the line: ooziejob =$(oozie job -oozie http://oozieserver:port/oozie -config /root/SqoopWrapper1/sqoop_job.properties -run);
私のシェルスクリプトはoozieコマンドで構成されています。
input=/root/SqoopWrapper1/InputFile.txt
echo "internal field sep"
IFS='|'
while read SourceDB db_name Mysql_table hdfsdir libpath
do
echo "do...while"
if [ SourceDB = Mysql ]
then
driver = com.mysql.jdbc.Driver
jdbcUri = jdbc:mysql://host:3306
Mysql_table = WrapperTbl
UserName = ****
Password = ****
fi
echo "Oozie command exe"
ooziejob =$(oozie job -oozie http://oozieserver:port/oozie -config /root/SqoopWrapper1/sqoop_job.properties -run);
echo $ooziejob;
done < $input
exit 0
最も可能性が高い理由は、シェルアクションがマッパージョブとして起動され、クラスタ上のノード上で実行されるためです。実行中のノードにoozieクライアントがインストールされていません。 sshアクションを使用し、oozieクライアントがインストールされているノードを指すことを検討することもできます。 – YoungHobbit