У меня есть 4 сценария оболочки, которые я встроил в код Java и преобразовал в jar. У меня также есть лямбда-функция AWS, которая вызывает кластер EMR. В лямбда-функции я должен запустить сгенерированный jar (java -jar /home/hadoop/aws.jar), используя шаги. У меня есть действия начальной загрузки, когда я устанавливаю несколько переменных среды, когда кластер скуплен. Таким образом, в идеале, после запуска кластера, кластер должен выполнить команду java -jar, которая была указана в значениях шагов в событиях json. Но проблема в том, что emr завершается с ошибкой в команде step jar . Есть ли другой способ запустить команду java -jar из лямбды, используя шаги.
"Steps":[
{
"Name": "Setup hadoop debugging",
"ActionOnFailure": "TERMINATE_CLUSTER",
"HadoopJarStep": {
"Jar": "command-runner.jar",
"Args": [
"state-pusher-script"
]
}
},
{
"Name": "Execute Step JAR",
"ActionOnFailure": "TERMINATE_CLUSTER",
"HadoopJarStep": {
"Jar": "command-runner.jar",
"Args":[
"java -jar /home/hadoop/lib/aws-add-step-emr-0.0.1-SNAPSHOT-shaded.jar"
]
}
}
],
"BootstrapActions":[
{
"Name": "Custom action",
"ScriptBootstrapAction": {
"Path": "s3://aws-east-1/bootstrap/init.sh"
}
}]