2017-04-25 118 views
2

我有一个terraform脚本,它在terraform apply之后成功启动AWS Spot实例,然后运行bash脚本。脚本运行完成并创建完成后,我一直在使用terraform destroy手动销毁现场实例。这很不方便,因为我必须观看我的电子邮件以获取CloudWatch警报或定期检查脚本的进度。理想情况下,我将能够自动销毁自动创建的AWS资源。有谁知道我应该怎么做呢?我是否使用错误的AWS资源,即应该使用ECS?如何使用terraform和AWS运行脚本,然后终止或销毁资源?

+0

我想AWS ECS Run Task或AWS Batch似乎是合适的。 – minamijoyo

+0

如果可以将bash脚本转换为python或其他支持的语言,aws lambda如何? – BMW

+0

@minamijoyo我知道AWS Batch还没有实施到Terraform https://github.com/hashicorp/terraform/issues/12187,我不确定ECS运行任务。我更愿意使用Terraform作为代码优势的基础架构。 – wherestheforce

回答

2

我找到的解决方案是创建一个空资源,然后在运行我的脚本后包含以下预配置程序。

provisioner "remote-exec" { 
    inline = [ 
     "sudo shutdown -h now", 
    ] 
    } 
相关问题