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
構成管理してるつもりだけにならない方法
Search
Kasumi Hanazuki
May 14, 2016
Programming
10
8.8k
構成管理してるつもりだけにならない方法
構成管理ツールを用いたインフラ開発フローの改善
at Pepabo Tech Conference #5
http://pepabo.connpass.com/event/30348/
Kasumi Hanazuki
May 14, 2016
Tweet
Share
More Decks by Kasumi Hanazuki
See All by Kasumi Hanazuki
Ruby meets secure DNS & modern Internet protocols
hanazuki
0
140
RubyKaigi 2023でのセキュアなDNSリゾルバの運用 / Secure DNS Resolver at RubyKaigi 2023
hanazuki
0
130
Mackerelでの家庭用ルータの監視 / Monitoring home routers with Mackerel
hanazuki
5
4.4k
Other Decks in Programming
See All in Programming
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
2
590
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.3k
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
Чего вы не знали о строках в Python – Василий Рябов, PythoNN
sobolevn
0
160
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
570
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
490
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3k
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
380
私はどうやって技術力を上げたのか
yusukebe
43
17k
実践AIチャットボットUI実装入門
syumai
7
2.4k
iOSDC.pdf
chronos2500
2
660
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
For a Future-Friendly Web
brad_frost
180
9.9k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
580
KATA
mclloyd
32
15k
Faster Mobile Websites
deanohume
310
31k
Statistics for Hackers
jakevdp
799
220k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Typedesign – Prime Four
hannesfritz
42
2.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
構成管理ツールを用いた インフラ開発フローの改善 構成管理してるつもりだけにならない方法
2016-05-14 @k_hanazuki • 2015-04 入社 • 2016-01― 技術部インフラG Twitter: k_hanazuki
GitHub: hanazuki 花月かすみ
2016-05-14 @k_hanazuki • ホームページ作成サービス ◦ ウェブ (PHP, MySQL, …) ◦
メール, メールマガジン ◦ DNS ◦ ... グーペ (goope.jp)
2016-05-14 @k_hanazuki • 物理サーバから プライベートクラウドへ 昨年末移設 • ~20ロール / 35インスタンス
グーペのインフラ
2016-05-14 @k_hanazuki 1. Puppetで構成を記述 2. Serverspecで仕様を記述 3. GitHubでレビュー 4. Droneを使ってCI
5. サーバへPuppet適用 インフラ開発フロー
構成管理してた つもりなんだけど……
2016-05-14 @k_hanazuki • 変更のコード化を忘れる ◦ 障害対応のため手動で設定変更 ◦ 巻き戻って障害再発 • コードの適用を忘れる
◦ PRをマージはしたんだけど…… ◦ 台数が多いとうっかり…… 課題: 構成管理と本番の差異
2016-05-14 @k_hanazuki • CI環境: ベースイメージから構築 ◦ 構成と仕様の一致を検査 • 本番: 既存の環境に差分適用
◦ うまく動くとは限らない 課題: CI環境と本番の差異
2016-05-14 @k_hanazuki • 本番と構成記述の差異 • 本番とCI環境の差異 課題
可視化しよう!
2016-05-14 @k_hanazuki • 「あるべき状態」と本番の比較 ◦ Puppet ◦ Serverspec コードと本番の差分の可視化
2016-05-14 @k_hanazuki • 本番の状態と一致しているか ◦ 構成の記述漏れ ◦ 仕様の修正漏れ ◦ 時間経過による状態の変化
• 本番に適用して想定通りか 差分の可視化によりわかること
2016-05-14 @k_hanazuki • 差分を可視化するダッシュボード ◦ https://github.com/ hanazuki/puppet-theatre • 毎朝始業前に結果を通知 ダッシュボード(プロトタイプ)
2016-05-14 @k_hanazuki
2016-05-14 @k_hanazuki • パッケージ更新にいち早く気づく • コードの質の向上 ◦ 偽陽性の差分を撲滅 思わぬうれしさ
それ……でできるよ
2016-05-14 @k_hanazuki • ブラウザ上でデプロイ設定する 機能は不要 ◦ 差分の可視化に的を絞る • Puppetと疎結合 ◦
Serverspec等を統合的に扱う Puppet Dashboardとの比較
これから
2016-05-14 @k_hanazuki • レビューフローとの統合 ◦ コードの変更による本番への 影響を可視化 • デプロイフローとの統合 ◦
デプロイ時の差分, デプロイ後の差分を可視化 これから
2016-05-14 @k_hanazuki • 構成の変化の可視化 = サーバ構成の監視 • プッシュ型のコード改善フロー • 安心感
まとめ