10 年前から始まった マイクロソフトの DevOps
Download
Report
Transcript 10 年前から始まった マイクロソフトの DevOps
10 年前から始まった
マイクロソフトの DevOps
~ 今とこれから ~
日本マイクロソフト
エバンジェリスト
高添 修・長沢 智治
Microsoft Architect Forum 2013
Agenda
正しいアーキテクチャーの重要性は誰もが知るところ
ただし、どんなアーキテクチャーであってもやるべきことがある
Dynamic Systems Initiative (2003.05)
既存、あるいは
新しいシステムの
モデルを作成
モデルに則した
システム運用
Job
Merc.
Stage
SQL
Feed
Store
DSS
Cache
必要なリソース
運用特性
Shuttle
HTTP
FTP
運用ポリシー
モデルに則した自動的なリソース確保
とシステム構成
ITライフサイクルをつなぐ
共通定義モデル
サーバー
ストレージ
ネットワーク
Oslo (2007.10)
Runtimes
Quadrant
Visual Studio
“F5”
•
•
•
•
•
•
Oslo Process Server
System Center DCM
Visual Studio TFS
SharePoint
RedDog
…
Export
Repository
*.sql
Models
dc.exe
*.d
Instances &
Observations
Compile
Converters
•
•
•
•
XAML (WF, WPF, …)
SML / CML
WSDL
…
*.csdl
*.ssdl
*.msl
…
Loaders
•
•
•
•
CLR Metadata
Active Directory
WMI / WS-Man
…
Adapters
• SAP
• MQ
• …
ビジネスと IT
ビジネスのトレンド
利用者への
直接的な貢献
IT の戦略的な役割
クラウド時代の到来
戦略的な IT への変化
1990年代
2000年代
Business
2010年代
Business
IT
便利
IT
IT
有効
Cost Center
確立したビジネスモデ
ル
全体計画→全体リリー
ス
技術的な意思決定は
IT 部門
クライアント/サーバー
Business
不可欠
Key Infrastructure
ビジネスモデルに
IT が関与
ニーズに応じたリリース
技術的な方向性は
経営者層へ
Web / Web サービス
Morphing IT
ビジネスを IT がけん
引
ジャスト イン タイム
IT 計画と投資は、
顧客中心に
デバイスとサービス
DevOps: ビジネスにフォーカス
要求
Define
ビジネス
価値の創発
開発
運用
Operate
Develop
アイデアを
動くソフトウェアへ
動くソフトウェア
ソフトウェアを
ビジネス価値として提供
DevOps: バリアによる損失
要求
Define
ビジネス
価値の創発
開発
運用
| |
Operate
Develop
アイデアを
動くソフトウェアへ
動くソフトウェア
ソフトウェアを
ビジネス価値として提供
DevOps: 継続的に価値を提供
継続的フィードバック | 継続的品質 | 継続的デリバリー
要求
Define
ビジネス
価値の創発
開発
運用
Operate
Develop
アイデアを
動くソフトウェアへ
動くソフトウェア
ソフトウェアを
ビジネス価値として提供
DevOps: 課題
要求
運用が欠如した
受け入れ基準
実行可能なフィードバックの欠
如による MTTR の長期化
価値との相関関係が不明瞭
技術的負債
の蓄積
デバッグが困難な本番環境で
の対応
本番稼働中の障害への対応
運用を考慮した
設計の欠如
開発
運用
長い開発とテストの
仕掛かり
運用準備が整わない
ソフトウェア
動くソフトウェア
長いデプロイの仕掛かり
開発と運用のワークフローの相
違と分離
DevOps: Operation Readiness
開発における運用への備えを
運用要件を満たしていないソフトウェア
Problem
最終的な段階での阻害要因となる
本番稼働時に情報収集が困難となる害要因になる
早期の要求獲得と品質の作りこみ
Solution
運用の受け入れ駆動開発 (ATDD), ラボによる自動化
継続的インテグレーション, 継続的デプロイメント害要因になる
ビジネス価値に到達するソフトウェアへ
Value
ソフトウェアをビジネス価値として提供する
サイクルタイムを短縮できる
DevOps: Operation Readiness
開発における運用への備えを
開発
運用要件含めた品質の作りこみ
要求
継続的な開発とテスト
テスト
疑似本番環境でのテスト
運用要件
(ログ/QoS)
DevOps: Just-in-Time Delivery
開発のアジリティと継続的カイゼンへ
顧客ニーズにアラインできない開発サイクル
Problem
ビジネス価値の提供が不定期となり、ユーザーの期待に応えられない
開発サイクルが定まらず、品質とデリバリーがビジネスに合わない害要因にな
アジャイルプラクティスとカイゼン
Solution
スクラムのフレームワークによる「検査と適応」
継続的にフィードバックを得る仕組みと体質づくり害要因になる
ビジネス価値に到達するソフトウェアへ
Value
適切なビジネス価値を定期的に提供し続ける
サイクルタイムの短縮と QCDS のバランス調整ができる
DevOps: Just-in-Time Delivery
開発のアジリティと継続的カイゼンへ
スクラムマスタ
ー
デイリースクラム
スプリント
(2週間)
PRIORITIZE
プロダクト
オーナー
PLAN
EXECUTE
チーム
RESPOND
DevOps: Mean time to Repair
本番稼働中の対応の最適化へ
運用中の障害検出と解決が極めて困難
Problem
高い MTTR によるビジネス価値への浸食
継続的なフィードバックへの阻害になる
本番稼働環境でも開発プラクティスを実践
Solution
本番環境相当でのテストの継続的な実施 (仮想テスト環境)
統合されたインシデント管理, 本番環境でのデバッグの実践害要因になる
MTTR の短縮
Value
ソフトウェアをビジネス価値として提供し続ける
サイクルタイムを短縮できる
DevOps: Mean time to Repair
開発における運用への備えを
運用の問題解決フロー
開発の問題解決フロー
問題検知
問題受入
改修依頼
分析調査
開発
運用
情報提供
改修
解決確認
問題解決
問題解決
継続的な流れを生む仕組みへ
継続的運用テスト
継続的フィードバック
継続的インテグレーション
継続的テスト
継続的デプロイメント
“MTTR 短縮” のためのアプリ監視
アラート
より詳細な情報
動作パターン識別
監視から開発のアサイン
Visual Studio から
確認したところ
開発のアサイン
Ops & Dev Tool のアラート連
携
Web テストと世界から自動監視
世界中にある
マイクロソフトの
データセンターから監視
Visual Studio にて
テスト定義ファイル
.webtest の保存
Operations Manager
Global Service Monitor
レスポンスだけ見ても
こんなに違いが !
ビルドとアプリ管理の自動化
Orchestrator
Orchestrator への
インプット
Orchestrator から
受け取り
実際の業務処理
(普通のコード)
自動
プロセスへ
Integration Pack
TFS 連携による
開発環境管理の
自動化
開発とテスト環境の構築
Virtual Machine
Manager
開発環境用の
プライベートクラウドを
自動構築
リソースの解放と制限
開発者用のツールから
仮想マシンを管理
※ スナップショットも
ビジネスのための IT には必須
できていないのであれば、ぜひともご検討を
Microsoft Architect Forum 2013
Resources
概念とソリューションについて
Enterprise DevOps ホワイトペーパー (英語)
http://aka.ms/EntDevOpsWp
ソフトウェア開発環境の最新動向と出張セミナー
http://aka.ms/ALMjp
マイクロソフト製品による実現方法について
Integrating Operations Manager with Development Processes (DevOps) Topics
http://technet.microsoft.com/ja-jp/library/jj614609.aspx
How to Synchronize Alerts with TFS in System Center 2012 SP1
http://technet.microsoft.com/ja-jp/library/jj614615.aspx
Microsoft Architect Forum 2013