10 年前から始まった マイクロソフトの DevOps ~ 今とこれから ~ 日本マイクロソフト エバンジェリスト 高添 修・長沢 智治 Microsoft Architect Forum 2013 Agenda 正しいアーキテクチャーの重要性は誰もが知るところ ただし、どんなアーキテクチャーであってもやるべきことがある Dynamic Systems Initiative (2003.05) 既存、あるいは 新しいシステムの モデルを作成 モデルに則した システム運用 Job Merc. Stage SQL Feed Store DSS Cache 必要なリソース HTTP 運用特性 Shuttle FTP 運用ポリシー モデルに則した自動的なリソース確保 とシステム構成 ITライフサイクルをつなぐ 共通定義モデル サーバー ストレージ ネットワーク Oslo (2007.10) Visual Studio Quadrant Runtimes “F5” • • • • • • Oslo Process Server System Center DCM Visual Studio TFS SharePoint RedDog … Export *.sq l Repository dc.exe *.d Instances & Observations Compile Converters • • • • Models 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 Morphing IT ビジネスモデルに IT が関与 ニーズに応じたリリース 技術的な方向性は 経営者層へ ビジネスを IT がけん引 ジャスト イン タイム IT 計画と投資は、 顧客中心に Web / Web サービス デバイスとサービス DevOps: ビジネスにフォーカス 要求 Define ビジネス 価値の創発 開発 運用 Operate Develop アイデアを 動くソフトウェアへ 動くソフトウェア ソフトウェアを ビジネス価値として提供 DevOps: バリアによる損失 要求 Define ビジネス 価値の創発 開発 運用 | | Operate Develop アイデアを 動くソフトウェアへ 動くソフトウェア ソフトウェアを ビジネス価値として提供 DevOps: 継続的に価値を提供 継続的フィードバック | 継続的品質 | 継続的デリバリー 要求 Define ビジネス 価値の創発 開発 運用 Operate Develop アイデアを 動くソフトウェアへ 動くソフトウェア ソフトウェアを ビジネス価値として提供 高い透明性 | 価値の流れ | ムダ取り DevOps: 課題 要求 運用が欠如した 受け入れ基準 実行可能なフィードバックの 欠如による MTTR の長期化 価値との相関関係が不明瞭 技術的負債 の蓄積 デバッグが困難な本番環境で の対応 本番稼働中の障害への対応 運用を考慮した 設計の欠如 開発 運用 長い開発とテスト の仕掛かり 運用準備が整わない ソフトウェア 長いデプロイの仕掛かり 動くソフトウェア 開発と運用のワークフローの 相違と分離 DevOps: Operation Readiness 開発における運用への備えを 運用要件を満たしていないソフトウェア 最終的な段階での阻害要因となる Problem 本番稼働時に情報収集が困難となる害要因になる 早期の要求獲得と品質の作りこみ 運用の受け入れ駆動開発 (ATDD), ラボによる自動化 Solution 継続的インテグレーション, 継続的デプロイメント害要因になる ビジネス価値に到達するソフトウェアへ 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 本番稼働中の対応の最適化へ 運用中の障害検出と解決が極めて困難 高い MTTR によるビジネス価値への浸食 Problem 継続的なフィードバックへの阻害になる 本番稼働環境でも開発プラクティスを実践 本番環境相当でのテストの継続的な実施 (仮想テスト環境) 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
© Copyright 2024 ExpyDoc