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
9k
10
Share
構成管理してるつもりだけにならない方法
構成管理ツールを用いたインフラ開発フローの改善
at Pepabo Tech Conference #5
http://pepabo.connpass.com/event/30348/
Kasumi Hanazuki
May 14, 2016
More Decks by Kasumi Hanazuki
See All by Kasumi Hanazuki
Ruby meets secure DNS & modern Internet protocols
hanazuki
0
250
RubyKaigi 2023でのセキュアなDNSリゾルバの運用 / Secure DNS Resolver at RubyKaigi 2023
hanazuki
0
180
Mackerelでの家庭用ルータの監視 / Monitoring home routers with Mackerel
hanazuki
5
4.5k
Other Decks in Programming
See All in Programming
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
540
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.2k
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
2.3k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
3
1k
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
150
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
320
Webフレームワークの ベンチマークについて
yusukebe
0
120
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
0
120
Swiftのレキシカルスコープ管理
kntkymt
0
210
さぁV100、メモリをお食べ・・・
nilpe
0
130
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
450
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
230
Featured
See All Featured
Unsuck your backbone
ammeep
672
58k
How to make the Groovebox
asonas
2
2.2k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Documentation Writing (for coders)
carmenintech
77
5.4k
Marketing to machines
jonoalderson
1
5.3k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
830
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
250
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
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 • 構成の変化の可視化 = サーバ構成の監視 • プッシュ型のコード改善フロー • 安心感
まとめ