如何使用terraform添加EMR步骤

时间:2018-01-17 11:22:02

标签: terraform

我需要在使用terraform创建EMR时通过terraform添加EMR步骤,因为我需要禁用" keep_job_flow_alive_when_no_steps" 。我怎么能这样做

2 个答案:

答案 0 :(得分:0)

要在EMR上禁用keep_job_flow_alive_when_no_steps,您无需添加步骤本身,只需添加群集。

Here您可以在Terraform文档中找到文档

答案 1 :(得分:0)

要将步骤添加到您的EMR群集,您可以在EMR资源中添加一个步骤部分。

提供“ my-bootstrap.sh”文件中的以下行,以便从S3下载step bash文件:

aws s3 cp s3://my-bucket/steps.sh /tmp/steps.sh
chmod +x /tmp/steps.sh

您可以使用以下aws_emr_cluster配置启动引导操作和步骤:

resource "aws_emr_cluster" "my-emr-cluster" {
  name                              = "my-emr-cluster"
  release_label                     = "emr-5.9.0"

  ...

  bootstrap_action {
    path = "s3://my-bucket/my-bootstrap.sh"
    name = "my-emr-bootstrap"
  }

  step {
    action_on_failure = "CANCEL_AND_WAIT"
    name   = "Download S3 files to HDFS"
    hadoop_jar_step {
      jar  = "command-runner.jar"
      args = ["bash", "/tmp/steps.sh"]
    }
  }

  ...

}

而且,正如Fionn所说,如果您只想启用/禁用keep_job_flow_alive_when_no_steps,则无需添加步骤。