AWS年の瀬に何やってんだという感じではありますが、ちょっとしたタスク整理でALB一式をTerraformに落としたくなる場面があったので作業メモを残します。試行錯誤した結果をそのままメモとして残していきますので、上級者が良いやり方をまとめた記事ではないことにご注意ください。該当AWSのプロファイルは設定済みです。環境変数にもセットされています。作業開始それではやっていきます。Terraforming準備まずはTerraformingを準備します。Google社が作ってるTerraformerでも良いのですが、老舗な方を使ってみようとしてます。gemでサクッと入るらしいですが、既存環境を汚してもあれなので、Dockerでやるとします。localhost/terraforming:latestうまくいきました。オプションなし実行で、ヘルプが表示されるのを確認しました。SDKTerraformingでimportしようとしたが...ALBサクッと以下のコマンドを叩きます。alb.tf作成されたalb.tfを眺めます。SGやサブネットがIDベタ書きですが、これは仕方ないでしょう、あとでいい感じに直そうと思います。}}...TargetGroup....はTerraformingにはないっぽいどうやらterraformingはTargetGroupのインポートに対応していない様です。ImportツールであるTerraformerを見たところ、対応している様なのでそちらに切り替えたいと思います。仕切り直しでTerraformerを準備terraformerはGoogleCloudPlatformのオーガニゼーション配下に作られていますが、GCPだけではなく、AWSやAzureと言ったメジャークラウドには対応していました、さすがです。AWSに関していうと、ALBはもちろん、TargetGroupやListenerRuleにも対応しており、ALBに限ればTerrafomingより対応リソースが多いです。インストールは簡単で、Go言語で書かれているだけあってバイナリを一個持ってくるだけでした。よって直接Macに入れてしまいます。/usr/local/bin/terraformerコマンドを実行して問題なさそうなことを確認します。ついでにバージョンコマンドも。v0.8.5とここまでやって、brewで入ることがわかりました(そりゃそうか)。手動で入れてしまったものは消して、brewで入れ直すことにします。terraformerTerraformerでALBをimportterrafomerのインストが終わったので、早速albをimportしていきます。サンプルコマンドを参考に、albをオプションに追加して実行。directory怒られました。何か設定が必要みたいですので、ドキュメントを読み直します。