Terraformで既存のリソースをTerraform管理下に移行する
Terraform
やりたいこと
コンソールなどから作成した既存のリソースをTerraform管理化におきたい
リンク
https://developer.hashicorp.com/terraform/language/import
Terraformのimportコマンドとimportブロックを試してみた | DevelopersIO
おさらい
既存のリソースを.tf にリソースとして定義してterraform applyすると?
既存のリソースは tfstate には存在しないが tf 定義には存在する
=> Terraformはリソースを作ろうとする
=> すでにあるので失敗する
つまり?
既存のリソースをうまいことtfstateに追加する必要がある
やりかた
terraform import コマンド
既存のリソースをtfstateに追加する
resourceのtfファイルへの追記は別途やる必要がある
importブロック
現代はこれを使う
resourceとimportを一緒に書いて terraform apply する
importからresourceを自動生成するという手もあるらしい
https://developer.hashicorp.com/terraform/language/block/import
apply後、importブロックは削除する方がベター(resource、rfstate、インフラが一致している状態になってるので)