找不到script-runner.jar

时间:2017-06-20 20:26:30

标签: python boto amazon-emr

以下是在EMR上安装和运行配置单元的代码

args = ['s3://' + zone_name + '.elasticmapreduce/libs/hive/hive-script',
    '--base-path', 's3://' + zone_name + '.elasticmapreduce/libs/hive/',
    '--install-hive', '--hive-versions', '0.13.1']

args2 = ['s3://' + zone_name + '.elasticmapreduce/libs/hive/hive-script',
     '--base-path', 's3://' + zone_name + '.elasticmapreduce/libs/hive/',
     '--hive-versions', '0.13.1',
     '--run-hive-script', '--args',
     '-f', s3_url]

steps = []
for name, args in zip(('Setup Hive', 'Run Hive Script'), (args, args2)):
    step = JarStep(name,
               's3://us-east-1.elasticmapreduce/libs/script-runner/script-runner.jar',
               step_args=args,
               # action_on_failure="CANCEL_AND_WAIT"
               )
# should be inside loop
    steps.append(step)

现在,当我将其提供给run_jobflow时,出于某种原因

我收到错误

Error fetching jar file. java.lang.RuntimeException: Error whilst fetching 's3://us-east-1.elasticmapreduce/libs/script-runner/script-runner.jar

我可以使用凭据访问存储分区elasticmapreduce/libs/script-runner/。我该如何解决这个问题呢?或者是否有其他方式可以提供script-runner

1 个答案:

答案 0 :(得分:1)

这是由于您的群集所在的区域与您从中获取jar的存储桶所在的区域不同。确保EMR群集位于您要作为“ zone_name”传递的区域中。