2017-04-25 59 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", 
    ] 
    }