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.6k
構成管理してるつもりだけにならない方法
構成管理ツールを用いたインフラ開発フローの改善
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
RubyKaigi 2023でのセキュアなDNSリゾルバの運用 / Secure DNS Resolver at RubyKaigi 2023
hanazuki
0
100
Mackerelでの家庭用ルータの監視 / Monitoring home routers with Mackerel
hanazuki
5
4.2k
Other Decks in Programming
See All in Programming
LLM Supervised Fine-tuningの理論と実践
datanalyticslabo
7
1.3k
Zoneless Testing
rainerhahnekamp
0
120
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
400
Haze - Real time background blurring
chrisbanes
1
510
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
500
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
バグを見つけた?それAppleに直してもらおう!
uetyo
0
180
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
300
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
210
nekko cloudにおけるProxmox VE利用事例
irumaru
3
430
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
520
Making Projects Easy
brettharned
116
5.9k
KATA
mclloyd
29
14k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
A better future with KSS
kneath
238
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
Music & Morning Musume
bryan
46
6.2k
Documentation Writing (for coders)
carmenintech
66
4.5k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
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 • 構成の変化の可視化 = サーバ構成の監視 • プッシュ型のコード改善フロー • 安心感
まとめ