hadoop - 在EMR中的所有从属节点上运行自定义Shell脚本

标签 hadoop amazon-emr aws-step-functions

AWS Step文档说步骤仅在主节点上执行,这意味着即使我登录到任何从属节点并在其上执行add-steps命令,该命令也只会将步骤添加到主节点上?然后,如何在所有从属节点上执行自定义Shell脚本? bootstrap 是不可行的,因为shell脚本要求已经创建了emrf-site.xml,而这要等到EMR完全启动并运行后才会发生。

最佳答案

您可以使用“自定义JAR”步骤类型运行“script-runner.jar”,该脚本将在每个集群节点上运行任何bash脚本:

aws emr create-cluster --name ... --steps Type=CUSTOM_JAR,Name=CustomJAR,ActionOnFailure=CONTINUE,Jar=s3://region.elasticmapreduce/libs/script-runner/script-runner.jar,Args=["s3://mybucket/script-path/my_script.sh"]

更多信息在这里:https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hadoop-script.html

关于hadoop - 在EMR中的所有从属节点上运行自定义Shell脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58444806/

相关文章:

java - Hadoop 构建错误 127

hadoop - 将 Hadoop 输出导出到文本文件

hadoop - Flume 无法将文件放入 S3 存储桶

apache-spark - Kinesis Streaming 示例在 EMR 上的集群模式下无法工作(EMR 4.3、Spark 1.6)

amazon-web-services - AWS Step Functions 中的 Docker 镜像

hadoop - 为什么在mapreduce中按操作分组很昂贵?

pyspark - AWS EMR 集群中的 session 不处于事件状态 Pyspark

amazon-web-services - AWS EMR 上的持续集成

amazon-web-services - AWS StepFunctions : Error While creating State Machine using AWS-SDK through lambda

amazon-web-services - 如何引用 AWS step function 并行任务输出?