~ AIが書いたコードをそのままapplyして、深夜に電話が鳴った話 ~
こんにちは!ハンズオンラボ運営のえむです。
最近、生成AI(ChatGPT・Claude・Geminiなど)を使ってTerraformコードやAWSの設計を作る人が増えてきました。
実際、自分も現場で活用しています。生産性は確実に上がる。
ただ、「AIが出したコードをそのままコピペして本番環境に適用」した結果、冷や汗をかいた経験が何度かあります。
この記事では、実体験をもとに**「生成AIにインフラ構築を任せるときの落とし穴」**と、人間がやるべき役割を整理します。
AIに丸投げして起きた3つの失敗
1. セキュリティグループが全開放だった
ChatGPTに「EC2のTerraformコードを書いて」と頼んだら、セキュリティグループのingressが 0.0.0.0/0 の all traffic で返ってきた。
サンプルとしては動くけど、本番でこれをapplyしたら全ポート公開になる。
AIは「動くコード」は書けるけど、「安全なコード」かどうかは判断してくれない。
2. コスト最適化が一切考慮されていなかった
「RDSを構築して」と指示したら、db.r5.2xlarge(月額約$1,200)のマルチAZ構成が返ってきた。
検証環境なのに。
AIは「ベストプラクティス」を出そうとするので、用途に合わないオーバースペックになりがち。月末の請求書を見て青ざめた。
3. terraform destroyで消えてはいけないリソースが消えた
「不要なリソースを削除するコードを書いて」と頼んだ結果、S3バケットごと削除するコードが出力された。
force_destroy = true が付いていたので、中身ごと消滅。バックアップがなければ終わっていた。
AIは「依頼通りに削除するコード」を書いただけ。影響範囲を考えるのは人間の仕事だった。
AIと人間の正しい役割分担
| フェーズ | AI がやること | 人間がやること |
|---|---|---|
| 設計 | 構成案のたたき台を出す | 要件に合っているか判断する |
| コーディング | Terraformコードの雛形を生成 | セキュリティ・コスト・命名規則を確認 |
| レビュー | コードの説明を生成 | 本番影響・依存関係を確認 |
| 適用 | — | plan → 差分確認 → apply |
| 障害対応 | ログ解析の補助 | 切り分け判断・復旧手順の実行 |
ポイントは、**AIは「案を出す係」、人間は「判断する係」**ということ。
生成AI時代にこそ必要な基礎力
AIを使いこなすには、結局基礎がないとダメです。
- ネットワーク: セキュリティグループの意味がわからなければ、AIの出力が危険かどうか判断できない
- Linux: サーバーに入ってログを読めなければ、障害時にAIに聞くことすらできない
-
IaC:
terraform planの差分が読めなければ、何が変わるかわからないままapplyすることになる
「AIがあるから基礎はいらない」は危険な誤解です。基礎があるからこそ、AIを安全に使える。
まとめ
生成AIはインフラエンジニアの強力な武器です。ただし、丸投げは事故のもと。
- AIの出力は「たたき台」として使う
- セキュリティ・コスト・影響範囲は必ず人間が確認する
- 基礎力(ネットワーク・Linux・IaC)があってこそAIを活かせる
「AIに仕事を奪われる」のではなく、**「AIと一緒に現場を回せるエンジニア」**が求められる時代です。
基礎から手を動かして学びたい方は、ハンズオンラボで一緒にやりましょう。
ハンズオンラボ では、AWS・Linux・Terraformを現役エンジニアと一緒にハンズオンで学べます。初心者歓迎、隔週開催中。