知り合いが、構築をIaCで行っているそうで、関連知識を深めようと思います。
また、Terraform には plan → apply という明確な流れがあります。
まず plan を実行すると、「このコードを適用すると、どのリソースが作られ、どれが変更され、どれが削除されるか」が事前に表示されます。これをレビューして問題ないことを確認してから apply を実行するため、本番環境での事故を減らすことができます。
Terraform は AWS 専用ツールではない点も重要です。AWS CDK や CloudFormation は AWS に強く依存しますが、Terraform は複数クラウドや SaaS を横断して扱えます。たとえば「AWS の VPC を作り、同時に GitHub のリポジトリ設定や Datadog の監視設定を作る」といったことを、ひとつのツール・ひとつの考え方で管理できます。
一方で注意点もあります。Terraform は非常に強力ですが、IAM やネットワークなど影響範囲の大きい変更を誤って apply すると、大きな障害につながる可能性があります。そのため、状態管理(state ファイル)をリモートで安全に管理したり、CI/CD と組み合わせてレビューを必須にしたりといった運用設計が重要になります。