Terraformでは、tfファイルに無い既存リソース削除は可能か?

Terraform自体は、tfファイルで定義されていないリソースを直接削除する能力は持っていません。

しかし、Terraformのtfstateファイルと実際の環境の間に差異が生じた場合の対処方法はいくつかあります。

 

1. **terraform import**:

既存のリソースをtfstateファイルにインポートするコマンドです。これを使って既存リソースをTerraformの管理下に置くことができます。その後、tfファイルから対応するリソースを削除し、terraform applyを実行すれば、インポートしたリソースを削除することができます。

2. **手動でリソースの削除**:

リソースを手動で削除した場合、Terraformのtfstateと実際の環境との間に不整合が生じることがあります。そのため、手動でリソースを削除する場合は、その後tfstateファイルも適切に更新する必要があります。

3. **Terraformのrefresh**:

terraform refreshコマンドを実行すると、実際の環境の状態を確認して、tfstateファイルを更新します。ただし、この操作はtfstateファイルを更新するだけで、実際のリソースを変更しません。

 

要するに、Terraformは明示的に管理対象として指定したリソースのみを扱います。既存のリソースをTerraformで管理したい場合は、そのリソースを適切にインポートするか、直接削除してtfstateファイルを適切に更新する必要があります。

 

記事タイトル検索