逐步调用脚本运行器以执行脚本AWS EMR

时间:2018-08-12 12:15:11

标签: bash amazon-web-services amazon-emr

实际上,我正在尝试将script-runner.jar与userdata放在同一存储桶中  执行用户数据(因为我们无权访问AWS默认存储桶):

step {
name = "Hadoop config"
hadoop_jar_step {
jar = "s3://bucket/directory/emr/script-runner.jar"
args = ["s3://bucket/directory/emr/userdata.sh"]
}
action_on_failure = "TERMINATE_CLUSTER"
}

但是出现以下错误:

  

线程“ main”中的异常java.lang.RuntimeException:   java.io.IOException:无法运行程序   “ / mnt / var / lib / hadoop / steps / s-XXXXXXXXXXX /./ userdata.sh”(在目录中   “。”):错误= 2,该文件或目录位于   com.amazon.elasticmapreduce.scriptrunner.ProcessRunner.exec(ProcessRunner.java:143)     在   com.amazon.elasticmapreduce.scriptrunner.ScriptRunner.main(ScriptRunner.java:58)     在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处   sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)     在   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:498)在   org.apache.hadoop.util.RunJar.run(RunJar.java:221)在   org.apache.hadoop.util.RunJar.main(RunJar.java:136)由以下原因引起:   java.io.IOException:无法运行程序   “ / mnt / var / lib / hadoop / steps / s-1JZQX6GL3TJED /./ userdata.sh”(在   目录“。”):错误= 2,该目录中没有这样的文件或目录   java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)在   com.amazon.elasticmapreduce.scriptrunner.ProcessRunner.exec(ProcessRunner.java:96)     ... 7更多原因:java.io.IOException:错误= 2,没有此类文件或   目录位于java.lang.UNIXProcess.forkAndExec(本机方法)处   java.lang.UNIXProcess。(UNIXProcess.java:247)在   java.lang.ProcessImpl.start(ProcessImpl.java:134)在   java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)...还有8个

有人可以让我知道为什么它失败了吗? 预先感谢。

0 个答案:

没有答案