Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[HashiTalks Japan 2022]Terraform 構成管理 NG祭
Search
AEON
October 17, 2023
Programming
0
420
[HashiTalks Japan 2022]Terraform 構成管理 NG祭
HashiTalks Japan 2022 登壇資料です。
https://www.youtube.com/watch?v=-w6oujPDTpc
AEON
October 17, 2023
Tweet
Share
More Decks by AEON
See All by AEON
プラットフォーム転換期におけるGitHub Copilot活用〜Coding agentがそれを加速するか〜 / Leveraging GitHub Copilot During Platform Transition Periods
aeonpeople
1
230
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
260
2025年にHCP Vaultを学び直して見えた景色 / Lessons and New Perspectives from Relearning HCP Vault in 2025
aeonpeople
0
250
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
440
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
620
SREがコストセンターではないことを大きな声と実例で伝えたい/SRE Is Not a Cost Center: Real-World Stories That Prove True Value
aeonpeople
1
900
SREチームの越境と対話〜どのようにしてイオンスマートテクノロジーは横軸運用チームの廃止に至ったか〜/the-Cross-border-and-dialogue-of-SRE
aeonpeople
13
7.5k
PagerDuty×ポストモーテムで築く障害対応文化/Building a culture of incident response with PagerDuty and postmortems
aeonpeople
3
830
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
2.8k
Other Decks in Programming
See All in Programming
Kiroで始めるAI-DLC
kaonash
2
620
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
Flutter with Dart MCP: All You Need - 박제창 2025 I/O Extended Busan
itsmedreamwalker
0
150
Design Foundational Data Engineering Observability
sucitw
3
200
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
470
RDoc meets YARD
okuramasafumi
4
170
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
250
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
540
Namespace and Its Future
tagomoris
6
710
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Visualization
eitanlees
148
16k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
Designing Experiences People Love
moore
142
24k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Language of Interfaces
destraynor
161
25k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Transcript
1 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 青木 翔平 Terraform 構成管理 NG祭
2 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 青木 翔平 Shohei Aoki プロフィール イオンスマートテクノロジー株式会社 インフラエンジニア(現在は完全にAzure Only) https://www.linkedin.com/in/shohei-aoki-7653a2202/
3 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 組織のNG コーディングのNG 本日話すこと
4 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 組織のNG コーディングのNG 本日話すこと
5 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology だいたいの組織構成(当時の) インフラチーム アプリチーム 運用チーム 上位層 ワイ
6 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology ヤル気に満ち溢れるワイ インフラチーム アプリチーム 運用チーム 上位層 ワイ クラウドの構成管理と いったらTerraformだ ぜ!
7 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 温度差 インフラチーム アプリチーム 運用チーム 上位層 ワイ クラウドの構成管理と いったらTerraformだ ぜ! ふーん、いいんじゃない ふーん、いいんじゃない ふーん、いいんじゃない ふーん、いいんじゃない ふーん、いいんじゃない ふーん、いいんじゃない
8 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology ゴリ押しで導入 IaC
9 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 規模感
10 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 環境変更要求の矢 インフラチーム ◦◦のシステムと繋げるため にスグに環境変更よろしく ◦◦のトラブルの暫定対応 のためにスグに環境変更よ ろしく ◦◦のためにストレージアカ ウントの追加スグによろしく ◦◦のイベント前にDBのス ペックアップよろしく Terraformのコード修正 間に合わん…
11 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology そうすると何が起こるか… 変更 変更 変更 変更 TF反映 TF反映 変更 TF 反映 変更要求 TF Apply △★※? 変更 設定権限 持つ人たち インフラチーム
12 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 構成管理出来てなくね…?
13 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 共感する仲間を増やす - 新しい考えや取り組みを推進しても組織全体で活用されないを自己満の域を出ない。 - 1人で啓蒙活動を続けるにも限界があるので同じチームに自分の考えを共感してもらえる仲間を 増やしていくしかない。 - 共感する仲間が増えそうにないならその組織での推進はキッパリ諦める!(…諦める?) 強い意思で設定変更ロールを割り当てない - 人が自ら環境変更できる手段を全て潰す。 - なんならクラウドのアカウントは閲覧者権限のみ付与する。 - TerraformのCDパイプラインでしか設定変更できない環境を作り、強制的にTerraformを覚 えざるえないようにする。 - もちろん、ネガティブにならないように組織のメンバー全員が取り組みやすいような仕組みを作る。 定期勉強会やハンズオンマニュアルの作成など。 どうすべきだったか?(個人の所感)
14 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 組織のNG コーディングのNG 本日話すこと
15 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 弊社のチームでもちゃんとコーディング規約に変数名について下記を記載しています。 命名規則のNG リソース名や変数名は可読性のために単語の分離に“_”(アンダーバー)を利用 するスネークケースを採用する。 これで「可読性に優れた」命名がされるだろ、と思っていた時期がワイにもありました…
16 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology 命名規則のNG !?
17 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology たしかに「名称から意味がわかるようにすること」はルール化していなかった… とくにコーディングをオフショアに任せる場合はコーディング規約に記載されていない (場合によっては記載されていても)ことは順守しない。 命名規則のNG ちょっとネチッこいんじゃないの…?というくら い守って欲しい規則は明文化しておこう
18 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology どのシステムでも使うリソースはModule化してデプロイを効率化しよう! ModuleのNG
19 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology ModuleのNG …ん? Descriptionがn/aとな?
20 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology Moduleの説明が書かれていないとModule自体の解析に時間がかかり過ぎる。 その内Moduleのメンテナンスをしなくなり使わなくなる。(Moduleの意味) ModuleのNG Module作成者がいなくなっても再利用・保 守が継続するようにREADMEはちゃんと書 こう
21 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology ズバリ、現在azurermのバージョン更新が止まっている。 VersionのNG 理由は色々 バージョンアップの定期運用をちゃんと決めていなかった。 バージョンアップに伴いTerraformリファクタリングするリソースが確保できない。
22 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology とはいえバージョンアップを放置しているとTerraformの実行に影響が出てくる。 terraform applyしても設定が反映されないパラメータが出てくる。 Azureの新機能が増えてもTerraformで管理できない。 VersionのNG 早い話が… コーディングしたら終わりじゃないから運用・保守の ルール/体制をしっかり決めておこうね それなりにコストがかかるのでしっかり予算確保を… • リファクタリングしていく体制 • (必要あれば)Terraform Cloud Businessのライセンス費用
23 ©AEON Smart Technology Co.Ltd. and/or its affiliates. All rights
reserved. イオンスマートテクノロジー株式会社 AEON Smart Technology まとめ 仲間がいればなんとでもなる 色々あるけど結局 逆に仲間がいないとなんともならない