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

インフラを Excel 管理していた組織が 3 ヶ月で IaC 化されるまで

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

インフラを Excel 管理していた組織が 3 ヶ月で IaC 化されるまで

【DevOpsDays Tokyo 2026 登壇資料】
https://confengine.com/conferences/devopsdays-tokyo-2026/proposal/49644/excel-3-iac

【概要】
Chef, Ansible, Terraform と便利なツールが増えても、世の中に Excel 構成管理はなくなりません。皆様は Excel でインフラの構成管理をしてきた経験はありますか?

私たちはインフラの基盤として AWS を利用していますが、2025 年初頭までそのすべてを Excel で管理しており、画面から作成した EC2 のインスタンス ID から VPC の CIDR に至るまで、そのすべての詳細を Excel に記帳している状況でした。これにより、環境差分の発生はもちろんですが、それ以上に組織の観点でのデメリットが大きく、インフラが社内リポジトリでコードとして管理されず一部のチームの暗黙知となり、アプリケーションを開発するチームとインフラとの間で断絶が発生していました。例えば、環境変数ひとつを追加するにあたっても、インフラ管理者に伺いをたてて行わなければなりませんでした。

この問題を解決するため、3 ヶ月間で技術および組織の両面から改革に取り組みました。技術面では AWS Cloud Development Kit (CDK) の導入とそのなかで役に立ったベストプラクティス、組織の観点ではどのようにマインドセットを変革していったのか、お話できればと思います。

技術面では Terraform だけでなく CDK について気になっている方、組織の観点ではマインドセットを変革するうえでどのような点が重要なのか、オーディエンスの皆様に持ち帰っていただきたいと思っています。

Other Decks in Technology

Transcript

  1. Moving the world intelligently インフラを Excel 管理していた組織が 3ヶ月で IaC 化されるまで

    DevOpsDays Tokyo 2026 株式会社ギークプラス 今村 優太 / Yuta Imamura
  2. 01. ABOUT US DevOpsDays Tokyo 2026 3 株式会社ギークプラス CTO 今村

    優太 / Yuta Imamura @yuimam32 2024~ Geekplus : CTO ← Staff Engineer Supply Chain データ活用クラウド “skylaa” 開発の 1 人目内製エン ジニアとして入社、その後 CTO として開発組織の内製化と技術 戦略判断などを担う。
  3. 01. ABOUT US 01. ROBOTICS 02. FULFILLMENT 自動搬送ロボット事業 倉庫作業ロボットの販売・導入 フルフィルメント事業

    自動化製品を活用した物流業務委託サービス DevOpsDays Tokyo 2026 4 次世代に残せる デジタル物流インフラを創る 03. SOFTWARE 04. CONSULTING ソフトウエア事業 物流プロセスの最適化と自動化を実現 コンサルティング事業 輸配送設計の課題解決を支援
  4. 01. ABOUT US Geek+ Company Deck 2026 DevOpsDays Tokyo 2026

    ISSUE 次世代に残せる デジタル物流インフラを目指す企業が、 次世代に残せない AWS インフラを 作ってしまっていた話 5
  5. 02. OVERVIEW DevOpsDays Tokyo 2026 2025 年初: Excel シート 30

    枚超でインフラ管理 当時の Excel シート 8 サービスごとに AWS リソースの設定値が書かれた Excel シートが 30 シート以上ある状態。 手動でコンソールから操作を行ったら Excel へ反映する運用と なっていた。
  6. 02. OVERVIEW DevOpsDays Tokyo 2026 9 2025 年初: インフラチームとアプリチームが完全に分断 当時の

    Excel シート Backlog Linear AWS インフラチーム アプリ開発チーム ・コンテナに必要な環境変数も Excel シートで渡される ・会議体や Issue 管理のツールも互いに異なる ・アプリチームはインフラがどう動くかをほとんど把握しない
  7. 03. AWS CDK DevOpsDays Tokyo 2026 AWS Cloud Development Kit

    (CDK) の概要 11 抽象度高く汎用プログラミング言語により AWS のインフラを記述可能 AWS CDK 変換 AWS CloudFormation デプロイ AWS リソース VPC の定義例 100 行近い YAML の定義を プログラミング言語により 抽象化、場合によっては 数行で実現
  8. 03. AWS CDK DevOpsDays Tokyo 2026 CDK vs Terraform :

    主なメリットとデメリット 12 Cons Terraform で使われる HCL は宣言的な言語であるため、書 き方が属人的になりづらいが、CDK は実装者のプログラミ ング言語のスキルレベルにコードの品質が左右される。 Pros クラスや関数により抽象度高く AWS リソースを定義するこ とができ、コードの量が Terraform と比較しずっと少なく 済むことや、使い慣れた言語で書くことでエンジニアの認 知負荷をおさえられる。 インフラの状態管理責任を AWS CloudFormation にまかせ ることができ、Terraform の state ファイル管理や、AWS の 最新機能に追従させるための provider 更新に悩む必要がな くなる。 VS フリーランスの市場においては CDK の経験者は少なく、 様々な案件に Join する性質上、Terraform の経験を有する エンジニアのほうが圧倒的に多い。 CDK は TypeScript だけでなく Python や Go など様々な言 語対応があり、アプリケーションと言語を揃えることでモ ノレポとして同居させやすい。 AWS 以外のインフラの管理ができず、同じ枠組みで AWS 以外のリソースをコントロールすることはできない。
  9. 03. AWS CDK DevOpsDays Tokyo 2026 CDK vs Terraform :

    デメリットへの対応 13 Cons Terraform で使われる HCL は宣言的な言語であるため、書 き方が属人的になりづらいが、CDK は実装者の TypeScript のスキルレベルにコードの品質が左右される。 Our Decisions Frontend だけでなく Backend を Full TypeScript 化すること が検討されており、IaC も含めて TypeScript に統一してい くことで、アプリケーションエンジニアもインフラに触り やすくなり IaC を「自分ごと」化できると考えた。 CDK を使った実装自体にそこまで難しい内容が含まれるわ けではないので、基本的な方針さえ示せば、オブジェクト 指向を学習したエンジニアであれば継続開発できると考え た。 フリーランスの市場においては CDK の経験者は少なく、 様々な案件に Join する性質上、Terraform の経験を有する エンジニアのほうが圧倒的に多い。 AWS 以外には Auth0 や Datadog を利用していたが、9 割以 上は AWS のリソースであることから AWS 自体の抽象化の メリットの方が大きく、必要に応じて部分的に Terraform を適用することで対応できると考えた。 AWS 以外のインフラの管理ができず、同じ枠組みで AWS 以外のリソースをコントロールすることはできない。
  10. 03. AWS CDK DevOpsDays Tokyo 2026 CDK を利用するなかで見つけたベストプラクティス4選 14 deploy-time-build

    ライブラリによる インフラとアプリの同時デプロイ CDK では、インフラのデプロイと同時にアプリケーション をビルドしデプロイさせることができる。deploy-time-build というライブラリを使うと、アプリケーションのビルドは並 列かつ AWS 環境上で完結させることができる。 環境ごとのパラメータも型定義し 管理することで型チェックを効かせる プログラミング言語のエコシステムを活用できることは CDK の最大のメリットのひとつ。IaC においては環境間の差 分となる変数をどこに持つかが重要となるが、これも厳密に 型定義を行うことで、環境ごとに指定可能なパラメータを制 限できる。 @see: https://github.com/cdklabs/deploy-time-build
  11. 03. AWS CDK DevOpsDays Tokyo 2026 CDK を利用するなかで見つけたベストプラクティス4選 15 eslint-plugin-awscdk

    で lint して コードの秩序を保つ TypeScript 版の CDK の場合、CDK のベストプラクティスに 応じた lint を自動で行ってくれるプラグインが OSS として 公開されている。こちらを使うことで、チーム開発において もコードの秩序を一定保つことができる。 スタック間参照には AWS Systems Manager のパラメータストアを使う CloudFormation には、スタックが複数存在したときに、別 のスタックの値(たとえば VPC の ID など) を参照する「ス タック間参照」という方法が存在するが、手軽な反面、ス タック間が密結合になる、リージョンや AWS アカウントを またいだ共有ができない等の問題がある。Systems Manager のパラメータストアを利用すると、スタック間を疎結合とし たうえで、リージョン間でのリソース共有も可能になる。 Parameter Store CloudFormation Stack CloudFormation Stack https://dev.classmethod.jp/articles/jaws-ug- cdk-how-to-avoid-a-trap-of-cross-stack- reference-with-props/ @see: @see: https://eslint-plugin-awscdk.dev/
  12. 04. CULTURE DevOpsDays Tokyo 2026 IaC を組織に浸透させるために:抽象度を上げる 17 GUI 操作よりも遥かに手軽な体験を作る

    IaC ならパラメータをひとつ変えるだけで以下のような動作も実現できる たとえば... ・データベース (Aurora) を Provisioned から Serverless に変える ・アプリケーションの動作基盤をコンテナ (ECS) とサーバーレス (Lambda) で
 切り替える チーム全員がインフラのすべてを把握しなければいけないわけではないので、 知識があまりないうちは、パラメータなどのインタフェースを介して触り慣れてもらう 10x
  13. 04. CULTURE DevOpsDays Tokyo 2026 IaC を組織に浸透させるために:「自分ごと」にする 18 アプリと IaC

    をあえて密結合にしてみる IaC と アプ リケー ションを 同一リポジト リ、 同一チームで 管理するなど、 互いを 不可分にすることで、必然的に IaC を意 識する 状況を 作る。 環境増設のハードルを下げる 実験的にデプロイできる環境を用意する とともに、環境増設に必要となる箇所を パラメータ化し、開発者が気軽に試すこ とができるようにする。 1 2 ステート レスなスタックを分 離する 壊れてもよいスタ ックと 壊れてはい けないスタ ックが あり、 その 最大の 違いはデータベースのように 「状態 を 持つかどうか 」に ある。い ざというときに リセット できるよう、 状態を 持たないスタ ックは 分離して おけ ると、よ り気軽にデプロイしやす くなる。 コーディングエージェントの導入 (当時はなかったが) いまは Codex や Claude Code な どのコーディングエージェントが存在し、CDK も Terraform も MCP が用意されている。蓄積したベスト プラクティスも自然言語のまま skill として AI に入力 しチーム内に展開できる。 3 4
  14. 04. CULTURE DevOpsDays Tokyo 2026 IaC を組織に浸透させるために:成功体験をつくる 19 メカニズムをつくっただけでは、 必ずしも受け入れられない

    導入前のリアルボイス ・仕組みや使い方、記述方法など学習コストが高い ・設定値を少し変えたいだけでも、コードを変えないといけない ・頻繁に作り変えない DB などもコードを書くと ROI が低い 現場の声をもとに「本当にこの施策は求められているか?」を 自問自答し、施策を押し付けず妥協点を見極める。 いきなり全て IaC 化しない、など時には引くことも大事。
  15. 04. CULTURE DevOpsDays Tokyo 2026 まとめ 20 01. 02. 03.

    自分ごとに する 成功体験を
 つくる 抽象度の
 向上 初学者でもまずは使えるようにする 使わないといけない状況をつくる 使って良かったと思える体験を与える IaC に限らず技術やプロセスを浸透させたいとき、 組織に対して汎用的に使える考え方