Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Terraformのリファクタリングの取り組みについて
Search
Yuta Endo
December 16, 2025
Technology
1
28
Terraformのリファクタリングの取り組みについて
Yuta Endo
December 16, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
RAG/Agent開発のアップデートまとめ
taka0709
0
190
AWS CLIの新しい認証情報設定方法aws loginコマンドの実態
wkm2
7
760
チーリンについて
hirotomotaguchi
6
2.1k
Strands Agents × インタリーブ思考 で変わるAIエージェント設計 / Strands Agents x Interleaved Thinking AI Agents
takanorig
3
670
WordPress は終わったのか ~今のWordPress の制作手法ってなにがあんねん?~ / Is WordPress Over? How We Build with WordPress Today
tbshiki
2
840
re:Invent2025 コンテナ系アップデート振り返り(+CloudWatchログのアップデート紹介)
masukawa
0
390
SQLだけでマイグレーションしたい!
makki_d
0
1.1k
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
140
AI駆動開発の実践とその未来
eltociear
1
280
CARTAのAI CoE が挑む「事業を進化させる AI エンジニアリング」 / carta ai coe evolution business ai engineering
carta_engineering
0
2k
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
400
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
490
Featured
See All Featured
Accessibility Awareness
sabderemane
0
15
Being A Developer After 40
akosma
91
590k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.3k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.3k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Practical Orchestrator
shlominoach
190
11k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
70k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.7k
Transcript
PRESENTATION SLIDES [ ver.01 2025.12 ] © MOSH Inc. MOSH
develops and operates a platform that supports independent creators in selling their services online. Terraformのリファクタリングの取り組みについて Presentation slides for どろんこSRE
PRESENTATION SLIDES © MOSH Inc. 自己紹介 • 遠藤 悠大 (@ut61z)
• MOSH 技術部 Technical Enablement チーム • SREing, Platform Engineering • 猫5匹飼ってます
PRESENTATION SLIDES © MOSH Inc. 会社紹介 指名経済 MOSHのミッション 一人の情熱が育まれ、だれかに伝播し、また新しい情熱が生まれる。
そんなふうに「情熱がめぐる」世界をつくることが私たちのミッションです。 PRESENTATION SLIDES © MOSH Inc.
PRESENTATION SLIDES © MOSH Inc. プロダクト紹介 オールインワン MOSHが提供するプロダクト MOSHは専門性を持った個人・クリエイター向けのサービス販売&経営拡大プラットフォームです。
オールインワンプロダクトとしてクリエイターの事業拡大を支援します。 PRESENTATION SLIDES © MOSH Inc.
PRESENTATION SLIDES © MOSH Inc. MOSH Tech Meetup やりま す!
• MOSH Tech Meetup Vol.1 2025年 にやったここでしか言えないAIで やったこと • 明日やるよ! • 遊びにきてね
PRESENTATION SLIDES © MOSH Inc. TerraformでAWSリソースを構築するぞ
PRESENTATION SLIDES © MOSH Inc. あれ、難しい...
PRESENTATION SLIDES © MOSH Inc. 課題 • terraform apply はインフラに詳しい人がローカルで実行
• 一つのtfstateで全てのインフラを管理していた ◦ stg用のリソースもprod用のリソースも同じtfstate • stg/prod dir を切ってtfstateを分けていた ◦ が、道半ばでpendingしていた • dev account と prod account をvariableで切り替えて plan/apply していた
PRESENTATION SLIDES © MOSH Inc. 課題① • terraform apply はインフラに詳しい
人がローカルで実行 • 実行者がコンテキストを詳細に把握 • ヒューマンエラーの温床
PRESENTATION SLIDES © MOSH Inc. 課題② • 一つのtfstateで全てのインフラを管 理していた •
stg用のリソースもprod用のリソース も同じtfstate • stg_module というものが生まれてい た
PRESENTATION SLIDES © MOSH Inc. 課題③ • stg/prod dir を切ってtfstateを分け
ていた • が、道半ばでpendingしていた
PRESENTATION SLIDES © MOSH Inc. 課題④ • dev account と
prod account を variableで切り替えて plan/apply し ていた
PRESENTATION SLIDES © MOSH Inc. 課題 • terraform apply はインフラに詳しい人がローカルで実行
• 一つのtfstateで全てのインフラを管理していた ◦ stg用のリソースもprod用のリソースも同じtfstate • stg/prod dir を切ってtfstateを分けていた ◦ が、道半ばでpendingしていた • dev account と prod account をvariableで切り替えて plan/apply していた • これらが全て合わせ技で押し寄せてくる
PRESENTATION SLIDES © MOSH Inc. 認知負荷が爆発 🤯
PRESENTATION SLIDES © MOSH Inc. このままではまずい.. • これからどんどん新機能開発の計画も立ってきている
PRESENTATION SLIDES © MOSH Inc. やったこと • ADR作成 • tfactionの導入
• ディレクトリ構成の整理 • 重複定義されているmoduleの正規化
PRESENTATION SLIDES © MOSH Inc. やったこと • ADR作成 • ”なぜリファクタリングするのか”を言
語化、共通認識を持つ
PRESENTATION SLIDES © MOSH Inc. やったこと • tfactionの導入 • CI/CD
上で terraform plan / apply を徹底 • いつ誰がリソースを変更したかを可 視化 • どんな人でもインフラリソースを構築 できる機会提供
PRESENTATION SLIDES © MOSH Inc. やったこと • ディレクトリ構成の整理 • 依存関係の可視化
◦ commonには複数のコンポー ネントが依存するものを配置 ◦ servicesにはプロジェクト別の 独立した単一コンポーネントを 配置
PRESENTATION SLIDES © MOSH Inc. やったこと • ディレクトリ構成の整理 • 依存関係の可視化
• 数えてみたら 503 import block 書い てました.. ◦ 消したものもあるので本当は もっとあります
PRESENTATION SLIDES © MOSH Inc. やったこと • 重複定義されているmoduleの正規 化 stg_s3.tfをs3.tfに統合
PRESENTATION SLIDES © MOSH Inc. やらなかったこと • moduleの整理 • 当初はAWSリソースごとに整理しようとしていた
◦ それをやるメリットとコストを鑑みて様子見 ◦ 明らかに有用なmoduleを発見していきながら少しずつ育てる
PRESENTATION SLIDES © MOSH Inc. infra管理リポジトリのPR merge数 ≒ terraform apply数
PRESENTATION SLIDES © MOSH Inc. めでたしめでたし👏
PRESENTATION SLIDES © MOSH Inc. めでたしめでたし?
PRESENTATION SLIDES © MOSH Inc. ここからが今日の本題です
PRESENTATION SLIDES © MOSH Inc. 今もなおどろんこを完全に抜け出せたわけではありません • moduleはまだまだ整理されていない •
権限設計もまだまだ • terraformだけがSREの仕事ではない
PRESENTATION SLIDES © MOSH Inc. 大事なのはリスクマネジメント • 認知負荷が爆発することで ◦ 事故の発生確率が上がる
◦ 開発生産性を落とす • サービスとしての競争優位性を落とす
PRESENTATION SLIDES © MOSH Inc. リファクタリングをなぜしたか • 私が辛いから...
PRESENTATION SLIDES © MOSH Inc. リファクタリングをなぜしたか • 私が辛いから... • ではなく
PRESENTATION SLIDES © MOSH Inc. リファクタリングをなぜしたか • 事故発生率を下げるため • 開発生産性を上げるため
• サービスとしての競争優位性を上げるため
PRESENTATION SLIDES © MOSH Inc. リファクタリングをなぜこれ以上一旦しないか • 競争優位性に寄与するインパクトが小さいから
PRESENTATION SLIDES © MOSH Inc. なにかに似ている🤔
PRESENTATION SLIDES © MOSH Inc. SLO • あなたは完璧であることはできませ んし、いずれにしても誰もあなたが 完璧であることを必要としていませ
ん。完璧であろうとすることはコスト がかかりすぎます。このことを受け 入れれば、最終的には誰もが満足 できるようになります
PRESENTATION SLIDES © MOSH Inc. SLOの概念は応用範囲が広い • 特に今何をすべきかを見極め、意思決定するために •
もし、技術的観点で〇〇したいけどできてないという状況にある方は • 事業にとってどうインパクトがあるか仮説を立て、計測し、調整していくことで組織か らの信頼性を得ることができるかもしれません
PRESENTATION SLIDES © MOSH Inc. どろんこは絶対に消えない • でもこれなら戦えるという足場を作って戦う
PRESENTATION SLIDES © MOSH Inc. ありがとうございました