Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SREに優しいTerraform構成 modulesとstateの組み方

SREに優しいTerraform構成 modulesとstateの組み方

2026/4/23

[コドモン x MIXI] 積み重なった課題とどう向き合うか — 長期運用のSREの実践
https://mixi.connpass.com/event/389250/

Avatar for hiyanger

hiyanger

April 23, 2026

More Decks by hiyanger

Other Decks in Programming

Transcript

  1. 10 CONFIDENTIAL - © 2022 CoDMON Inc. 10 state が少ない場合における問題

    ・1リソースでもエラーがあるとすべてのリソースが操作できない ・ plan / applyに時間がかかる (100リソースで 1分前後が超おおまかな目安) 🗡 state 分割は 積極的に!
  2. 11 CONFIDENTIAL - © 2022 CoDMON Inc. 11 modules を使った場合におきる問題

    ・module を修正すると、対象の全環境に波及する  (環境ごとに変えたい場合、分岐が必要になり、変更がより手間になる) ・直感的にリソースが把握できず、呼び出し先を追う必要がある 🛡 modules 利用は 慎重に!
  3. 13 CONFIDENTIAL - © 2022 CoDMON Inc. 13 コドモンにおける Terraform

    構成 aws ├── prd │ ├── サービス A │ │ ├── main.tf (backend) │ │ ├── ecs.tf │ │ ├── iam.tf │ │ └── ... │ ├── サービス B │ │ └── ... │ └── ... ├── dev │ └── ... └── ... 💡 state はサービス(ライフサイクル)単位で  分割されている 💡 環境ごとに機能が作られている  (module 利用が少ない) 💡※ remote state もない  (data source 利用で参照なし) ↓ ⚡他の機能への依存が最小化されている! 👶 新メンバーでも扱いやすい!( SREに優しい)
  4. 14 CONFIDENTIAL - © 2022 CoDMON Inc. 14 コドモンにおける Terraform

    構成の歴史 2020/8 2024/2 2024/4 👷Terraform 構成整備 開始 state数:21 module数:41 👷Terraform 構成整備 完了 state数:436 module数:27 総移行リソース数 6,462 🤖Terraform 運用開始