DevOpsワークショップ
企業によるDevOpsに
関する誤解の解消
Luke Kanies
CEO&創業者
Puppet
あなたの会社は
________ 会社です
あなたの会社は
ソフトウェア会社です
限界に達している
と考えます。
変化
が必要です。
「DevOpsの導入」により
すべての問題を解決できます
DevOps:
ソフトウェア提供用
パイプライン全体の最適化
DevOps:
関係者全員と連携した運用
弊社から見たDevOps
ゆるやかに連携して進化し続ける一連の手法
コードとしてのインフラ (Infrastructure as code)
チームを横断して自動化されたツール
● 自動テスト
● 継続的統合
● 継続的提供
運用上の苦労をチーム全体にわたって共有して解決
より優れたソフトウェアへの最短パス
11
プロセス 人
組織的慣行
文化
より優れたソフトウェアへの最短パス
www.puppet.com/2016-state-of-
devops-report-ja
人口統計
北米 南米 ヨーロッパとロシア アジア アフリカ オーストラリアとニュージーランド地域
14
業績の良いIT企業は、処理量
において、業績の悪いIT企業
よりも決定的に優れた実績を
上げています。
業績の良いIT企業が
示す実績
200倍頻繁な
デプロイ
24倍速い
障害からの復旧
3倍低い
変更の失敗率
2,555倍短い
リードタイム
3倍 2,555倍
200倍 24倍
競合する動機
営業: お客様に価値を提供
開発チーム: 新しい機能を提供
Opsチーム: システムの安定性を保証
品質チーム: ソフトウェアリリースの品質を保証
15
管理手法
結果を予想する
品質の向上に関して慎重に検討する
無駄のない管理と継続的な提供を実践する
手を抜かない
多様化する
バーンアウトに注意する
技術手法
バージョン管理
同僚によって評価される変更プロセス
継続的提供
自動テスト
完全に自動化されたデプロイ
17
測定結果
デプロイ頻度、ダウンタイム、変更リードタイム、変更失敗率、平均修復時間
DevOpsツールチェーン
18
バージョン管理 設定管理 継続的統合 デプロイツール 監視
および
その他
…
および
その他
…
DevOpsに関する6つの誤解
DevOps手法を導入することによってお客様や会社が
得られる価値はない
より優れたソフトウェアへの最短パス 20
DevOps手法を導入することによってお客様や会社が
得られる価値はない
より優れたソフトウェアへの最短パス 21
DevOpsは …
• 信頼できる製品を提供する
• ソフトウェアをより迅速に提供する
• プロセスを最適化する方法を模索する
• 本物の可測性を導入する
従来のアプリケーションにDevOpsの原則を適用しても
投資利益はあまり増えない
より優れたソフトウェアへの最短パス 22
従来のアプリケーションにDevOpsの原則を適用しても
投資利益はあまり増えない
より優れたソフトウェアへの最短パス 23
• オールオアナッシングではない
• 真のコストはたいてい、ほとんど理解されていない
• 最大の収益は予期しない分野から生じる
• 従来のシステムを無視すると、他の努力の効果が
薄れる可能性がある
DevOpsは特有の企業でのみ機能し、
自社のような従来の企業では機能しない
より優れたソフトウェアへの最短パス 24
DevOpsは特有の企業でのみ機能し、
自社のような従来の企業では機能しない
より優れたソフトウェアへの最短パス 25
DevOps = 新しい標準
メリット:
● 市場投入までの時間の短縮
● MTTRの短縮
● 従業員の取り組み姿勢の高さ
最大の収益は予期しない分野から生じる
DevOpsの原則による改善には、
自社にはない空き時間と空き人員が必要である
より優れたソフトウェアへの最短パス 26
DevOpsの原則による改善には、
自社にはない空き時間と空き人員が必要である
より優れたソフトウェアへの最短パス 27
• 付加価値を高める活動に費やすことが可能な
時間の増加
• 企業内の生産能力を解放
DevOpsの原則の採用を妨げる規制要件と
準拠要件が存在する
より優れたソフトウェアへの最短パス 28
DevOpsの原則の採用を妨げる規制要件と
準拠要件が存在する
より優れたソフトウェアへの最短パス 29
監査チームとコンプライアンスチームを参加させる
自動プロセスの特長:
● 監査しやすい
● 理解しやすい
● 保護しやすい
DevOpsの原則や手法の採用によって
解決できる問題が存在しない
より優れたソフトウェアへの最短パス 30
DevOpsの原則や手法の採用によって
解決できる問題が存在しない
より優れたソフトウェアへの最短パス 31
• 業務改善能力の向上
• 高速化
• 業務上最も苛立たしい部分の解消
スタート地点
DevOpsの導入のライフサイクル
より優れたソフトウェアへの最短パス 33
可視化 • 共有 • ステージごとの測定
ステージ1: 単一源の真実の確立
ステージ2: プロセスと成果の標準化
ステージ3: プロセスの反復
ステージ4: ビジネスの実現
34
Infrastructure as Code
共同作業 反復迅速なフィードバック 可視性
バージョン制御 設定管理 相互評価 継続的提供
自動化された
テストとデプロイ
35
Infrastructure as Code
共同作業 反復迅速なフィードバック 可視性
バージョン制御 設定管理 相互評価 継続的提供
自動化された
テストとデプロイ
Puppet、実績のあるDevOpsプラットフォーム
36
基礎の確立 より迅速な提供 生産性の向上
自動化で速度、信頼性、安全性を実現
共通言語で定義する 状況を認識する 変更をインテリジェントに
オーケストレートする
セキュリティと
コンプライアンスを
保証する
現代のソフトウェアをシンプル、スケーラブル、かつ安全に提供し稼働させるために必要なもの
すべてのデバイス、スタック全体
一般的な言語で定義する
● 読み、理解し、記述し、共有するのが簡単
● 一度記述すればあらゆる場所で使用できる
● テスト機能内蔵
● コード上書きなし
● 活気あるエコシステムに支えられた、何千もの
無料モジュールから選択できる
チームがソフトウェアを提供し稼働させるために用いる標準的な方法
Puppetのコード例
状況を認識する
● マシンに組み込まれているものに対する洞察
を得る
● 変更がリアルタイムで視覚化
● 独自の依存関係視覚化
● 連続的なずれの監視とレポート
● 監査およびコンプライアンスのレポート
● 内蔵、カスタム、サードパーティの視覚化機能
ソフトウェアで起こっていることを正確に把握する
PuppetEnterpriseのイベント検査
変更をインテリジェントにオーケストレートする
● 連続的な実行と自動修正
● リアルタイムでの変更管理と視覚化
● 順序を指定してデプロイ
● Puppet、Git、Jenkins、HipChat、
スケジューラなどからの変更を
オーケストレート
分散アプリケーションとグローバルインフラ全体における変更を確信をもって促進
Web UIでPuppetを実行、
CLIで変更をオーケストレート
セキュリティとコンプライアンスを保証する
● セキュリティおよびコンプライアンス
ポリシーの定義とデプロイ
● 連続的な実行と自動修正
● コンプライアンスを確かなものにする
レポートとトレーサビリティ
自動化により継続的にポリシーを実行。
コンプライアンスを確かなものにするトレーサビリティ。
PuppetEnterpriseのインタラクティブな視覚化
すべてのデバイス、スタック全体
IPアドレスがあれば、Puppetで管理します
The shortest path
to better software.
より優れたソフトウェアへの最短パス
ヘッドラインスポンサーへの謝辞
<Networldのロゴを挿入
ヘッドラインスポンサーへの謝辞

日本語Puppet demystifying dev ops in the enterprise handout