2. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
自己紹介
• 荒井 裕貴(あらいひろき)
– クリエーションライン株式会社のChefエンジニア
– Chef Serverの設計・導入支援
– 講演、トレーニング
– COOKBOOK開発(Linux / Windows)
3. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
会社紹介
クリエーションライン株式会社
通称:CL (しーえる)
・プライベートクラウド基盤構築
・パブリッククラウドのコンサル
・Management Service Provider
OSS、クラウド系に強いSIer
4. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
Chefについて
• 構成管理ツールChefの開発元の会社
• 8年以上DevOpsの世界を牽引
• 日本でもDevOpsのツールといえばChefで認知
• DevOpsのインフラを支える製品が多数
– Chef Server
– Chef Anaytics
– Chef Delivery
– Chef Compliance
• クリエーションラインはChef社のパートナー
5. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
de:code2016
de:code 2016に海外からDevOpsの黒船が襲来
Sam Guckenheimer (Microsoft Corporation)
James Casey (Chef)
Aaron Williams (Mesosphere)
Mitchell Hashimoto (Hashicorp)
6. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
目次
• DevOpsについて
• DevOpsの実践
• アプローチや文化の話
• DevOps on Azureのご紹介
• デモ
7. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
Dev ♡ Ops
DevOpsとは
これがDevOpsという明確な定義は存在していない。
wikiによると・・・『DevOps(デブオプス)は、ソフトウェア開発手法の一つ。
開発 (Development) と運用 (Operations) を組み合わせたかばん語であり、開発担当者と運
用担当者が連携して協力する開発手法をさす。』
⇒開発と運用がビジネスの価値提供のスピードを速めるために協力する活動
Value
ユーザ
Value
speed
アイデア
引用:Wikipedia (https://ja.wikipedia.org/wiki/DevOps)
8. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの起源
引用 : 10 deploys per day (http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr)
ツール
• 自動化されたインフラ
• バージョン管理システムの共有
• ワンステップでビルドとデプロイ
• フィーチャーフラグ
• 測定データの共有
• IRCとボット
文化
• 尊敬
• 信頼
• 障害に関する健康的な態度
• 非難を避ける
ツールによる
自動化/効率化
と組織の文化
9. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
ユーザDevとOpsの目的の違い
• Development
– 新しいものを作る
– ユーザの要望に応える
⇒変更は出来るだけ早く、頻繁に適用したい
• Operations
– 安定した運用
– SLAを守る
⇒スピードよりも確実性
⇒安定しているシステムには変更を加えたくない
Dev
Ops
変更
変更
変更
要望/フィードバック 安定稼働
SLA
衝突
10. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの要素
• Dev
– アジャイル開発
– 継続的インテグレーション/継続的デリバリー
– 自動テスト
• Ops
– Infrastructure as code
– 自動テスト
15. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの実践
• DevOpsというものを認識する
– ※関係者間でDevOpsの認識のずれがないようにする
• 目的を明確にする
– マーケットにおける先行者利益を獲得するため、ソフトウェアのリリースを早める
– 顧客からの要望に早く対応して顧客満足度を高めるために、ソフトウェアの更新サイク
ルを早める、など
(ビジネスの視点が入ることが重要)(『DevOpsをやる』ではダメ)
認識
16. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの実践
• 現状を分析
– アジャイル
– 自動化(テストやリリース)
– インフラ(環境/自動化/IaC)
– 承認プロセス
– 会社ルール
– ⇒どんなことに時間がかかっているか?
– ⇒阻害要因はどんなものがあるか?
分析
17. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの実践
• まずは一つのプロジェクトに対して適用
• 効果が出やすい部分から改善
• 承認プロセスや会社ルールの変更も検討
• 効果測定のために改善前の時間を測定
計画
18. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの実践
• アジャイル導入
• インフラ環境整備
• ツールの導入
– 細かいパーツに分かれていて、組み換え可能であることが理想
• 自動化
– 繰り返し行われる業務は自動化を検討
• 承認プロセス、フローの変更
実施
19. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの実践
• 実施した結果を評価
• 数値で明確に表現
• 開発工数と短縮した時間の比較は慎重に
– 開発工数と短縮した時間で評価することよりも、
ビジネスのスピードアップにどれだけ寄与したかが重要
評価
20. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
アプローチ
• トップダウンアプローチ
– 経営やビジネスといった目線から全体を俯瞰
– 承認プロセスや会社のルールに対しても視点を向けやすい
• ボトムアップアプローチ
– 現場レベルで自動化や効率化に取り組む
– 成果を組織内にアピールして、組織全体に活動を広げる
トップダウン
ボトムアップ
Dev ♡ Ops Dev ♡ Ops
Dev ♡ Ops
Dev ♡ Ops
Dev ♡ Ops
Dev ♡ Ops
Dev ♡ Ops
Dev ♡ Ops
Dev ♡ Ops
21. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
開発と運用の関係の変化
従来 DevOps
開発 運用 開発 運用
責任分界点
開発と運用の役割と責任は明確に分化
共有、競業。開発と運用の歩み寄り
ITチーム
明確な境界がなくなって一つのチーム
将来
22. Copyright ⓒ2016 CREATIONLINE, INC. All Rights Reserved
DevOpsの文化
• 尊敬
• 信頼
• 障害に関する健康的な態度
• 非難を避ける
• コラボレーション
• ムダの排除
• 変化に対しての柔軟さ
• 評価制度