Open10
Terraform で既存 AWS リソースを import する

AWSアカウント Foo にあるリソースを、
Bar のAWSアカウントに import してみる



手順としては、
- Foo で稼働している AWS リソースを Terraform に書き起こす
- Terraform に書き起こされたリソースを Bar で実行する
で良いか?

チュートリアルやってみたところ、ファイル構成はこんな感じ
- main.tf (provider の記述のみ。今回は docker)
- terraform.tf (terraform の required_version と required_providers の記述のみ)
- docker.tf (import id to の記述のみ)
- generated.tf (自動生成されたファイル。docker の port や image の情報などが書かれている。ファイル名は可変)

↑を適宜、AWS に置き換えておけば良いのでは

terraform plan -generate-config-out=generated.tf
すると、generated.tf
にリソースの設定が全て書き込まれる。
ただ、import block で指定した全てのリソースが書き込まれるので、import block でS3やLambdaといった複数のリソースをしている場合、一つの generated.tf
にまとめて書き込まれてしまうので、それちょっとイヤ

なので、一旦、全てのリソースを gererated.tf へ import したあと、良い感じに別ファイルに書き写した方がよさそう
- compute.tf
- storage.tf
みたいに

一括でやると generated ファイルの視認性が下がるので、
論理分割ごとに、徐々に import していくのがよさそう

あと、動作確認できる単位で切った方が良いね