構成管理してるつもりだけにならない方法
by
Kasumi Hanazuki
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
構成管理ツールを用いた インフラ開発フローの改善 構成管理してるつもりだけにならない方法
Slide 2
Slide 2 text
2016-05-14 @k_hanazuki ● 2015-04 入社 ● 2016-01― 技術部インフラG Twitter: k_hanazuki GitHub: hanazuki 花月かすみ
Slide 3
Slide 3 text
2016-05-14 @k_hanazuki ● ホームページ作成サービス ○ ウェブ (PHP, MySQL, …) ○ メール, メールマガジン ○ DNS ○ ... グーペ (goope.jp)
Slide 4
Slide 4 text
2016-05-14 @k_hanazuki ● 物理サーバから プライベートクラウドへ 昨年末移設 ● ~20ロール / 35インスタンス グーペのインフラ
Slide 5
Slide 5 text
2016-05-14 @k_hanazuki 1. Puppetで構成を記述 2. Serverspecで仕様を記述 3. GitHubでレビュー 4. Droneを使ってCI 5. サーバへPuppet適用 インフラ開発フロー
Slide 6
Slide 6 text
構成管理してた つもりなんだけど……
Slide 7
Slide 7 text
2016-05-14 @k_hanazuki ● 変更のコード化を忘れる ○ 障害対応のため手動で設定変更 ○ 巻き戻って障害再発 ● コードの適用を忘れる ○ PRをマージはしたんだけど…… ○ 台数が多いとうっかり…… 課題: 構成管理と本番の差異
Slide 8
Slide 8 text
2016-05-14 @k_hanazuki ● CI環境: ベースイメージから構築 ○ 構成と仕様の一致を検査 ● 本番: 既存の環境に差分適用 ○ うまく動くとは限らない 課題: CI環境と本番の差異
Slide 9
Slide 9 text
2016-05-14 @k_hanazuki ● 本番と構成記述の差異 ● 本番とCI環境の差異 課題
Slide 10
Slide 10 text
可視化しよう!
Slide 11
Slide 11 text
2016-05-14 @k_hanazuki ● 「あるべき状態」と本番の比較 ○ Puppet ○ Serverspec コードと本番の差分の可視化
Slide 12
Slide 12 text
2016-05-14 @k_hanazuki ● 本番の状態と一致しているか ○ 構成の記述漏れ ○ 仕様の修正漏れ ○ 時間経過による状態の変化 ● 本番に適用して想定通りか 差分の可視化によりわかること
Slide 13
Slide 13 text
2016-05-14 @k_hanazuki ● 差分を可視化するダッシュボード ○ https://github.com/ hanazuki/puppet-theatre ● 毎朝始業前に結果を通知 ダッシュボード(プロトタイプ)
Slide 14
Slide 14 text
2016-05-14 @k_hanazuki
Slide 15
Slide 15 text
2016-05-14 @k_hanazuki ● パッケージ更新にいち早く気づく ● コードの質の向上 ○ 偽陽性の差分を撲滅 思わぬうれしさ
Slide 16
Slide 16 text
それ……でできるよ
Slide 17
Slide 17 text
2016-05-14 @k_hanazuki ● ブラウザ上でデプロイ設定する 機能は不要 ○ 差分の可視化に的を絞る ● Puppetと疎結合 ○ Serverspec等を統合的に扱う Puppet Dashboardとの比較
Slide 18
Slide 18 text
これから
Slide 19
Slide 19 text
2016-05-14 @k_hanazuki ● レビューフローとの統合 ○ コードの変更による本番への 影響を可視化 ● デプロイフローとの統合 ○ デプロイ時の差分, デプロイ後の差分を可視化 これから
Slide 20
Slide 20 text
2016-05-14 @k_hanazuki ● 構成の変化の可視化 = サーバ構成の監視 ● プッシュ型のコード改善フロー ● 安心感 まとめ