Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Etsuji Nakai
3,273 views
クラウドが実現するソフト開発・運用の変革と自動化
Read more
5
Save
Share
Embed
Embed presentation
Download
Downloaded 69 times
1
/ 32
2
/ 32
3
/ 32
4
/ 32
5
/ 32
6
/ 32
7
/ 32
8
/ 32
9
/ 32
10
/ 32
11
/ 32
12
/ 32
13
/ 32
14
/ 32
15
/ 32
16
/ 32
17
/ 32
18
/ 32
19
/ 32
20
/ 32
21
/ 32
22
/ 32
23
/ 32
24
/ 32
25
/ 32
26
/ 32
27
/ 32
28
/ 32
29
/ 32
30
/ 32
31
/ 32
32
/ 32
More Related Content
PPTX
July techfesta2014 f30
by
Motoki Kakinuma
PPTX
これからのOpenShiftの話をしよう
by
Kazuto Kusama
PPTX
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
by
Daiki Kawanuma
PDF
ポンコツエンジニアのAZ-400受験期
by
Kentaro Higashi
PDF
商用ミドルウェアのPuppet化で気を付けたい5つのこと
by
NTT DATA OSS Professional Services
PDF
Apache Mesosってなに
by
Shingo Kitayama
PDF
クラウドアプリケーションの マルチプロセス・プログラミングモデル を実現する「Data Center Kernel」
by
Etsuji Nakai
PPTX
First git ops
by
Kentaro Higashi
July techfesta2014 f30
by
Motoki Kakinuma
これからのOpenShiftの話をしよう
by
Kazuto Kusama
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
by
Daiki Kawanuma
ポンコツエンジニアのAZ-400受験期
by
Kentaro Higashi
商用ミドルウェアのPuppet化で気を付けたい5つのこと
by
NTT DATA OSS Professional Services
Apache Mesosってなに
by
Shingo Kitayama
クラウドアプリケーションの マルチプロセス・プログラミングモデル を実現する「Data Center Kernel」
by
Etsuji Nakai
First git ops
by
Kentaro Higashi
What's hot
PDF
Ubuntu Juju/MAAS・OpenStackを使った検証環境構築 - OpenStack最新情報セミナー 2016年3月
by
VirtualTech Japan Inc.
PDF
半日でわかる コンテナー技術 (入門編)
by
Toru Makabe
PPTX
本当は恐ろしい分散システムの話
by
Kumazaki Hiroki
PDF
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
by
NTT DATA Technology & Innovation
PDF
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
by
株式会社 NTTテクノクロス
PPTX
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
by
Daiki Kawanuma
PDF
OpenStack入門 2016/06/27
by
株式会社 NTTテクノクロス
PPTX
限界性能試験を自動化するOperatorを作ってみた(Kubernetes Novice Tokyo #14 発表資料)
by
NTT DATA Technology & Innovation
PDF
Resilience Engineering on Kubernetes
by
Toru Makabe
PDF
StackStorm で実現する、複数システムに対する統一インターフェイス提供と運用一元化の取り組み - OpenStack最新情報セミナー(2017年3月)
by
VirtualTech Japan Inc.
PDF
ダイ・ハード in the Kubernetes world
by
Toru Makabe
PPTX
【Cloud Week 2015@Hokkaido University】Dockerとインフラ運用自働化とIoT
by
cloudconductor
PDF
Deploying secure service mesh for applications on k8s with using A10's Lighti...
by
Kentaro Ishizuka
PDF
DevOpsに求められる様々な技術とその連携の学習方法
by
CASAREAL, Inc.
PDF
AWS/Openstack integration with openQRM
by
OSSラボ株式会社
PDF
red-hat-forum-2017-openshift-baremetal-deployment
by
Tetsuya Sodo
PDF
Hinemosで簡単にdev opsをサポート!
by
Hinemos
PPTX
Serverless の自動回復と自動化のためのアーキテクチャ
by
Tsuyoshi Ushio
PPTX
Openstack mitaka のセキュリティ - OpenStack最新情報セミナー 2016年5月
by
VirtualTech Japan Inc.
PDF
OpenStackSDK with Ansible
by
Hideki Saito
Ubuntu Juju/MAAS・OpenStackを使った検証環境構築 - OpenStack最新情報セミナー 2016年3月
by
VirtualTech Japan Inc.
半日でわかる コンテナー技術 (入門編)
by
Toru Makabe
本当は恐ろしい分散システムの話
by
Kumazaki Hiroki
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
by
NTT DATA Technology & Innovation
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
by
株式会社 NTTテクノクロス
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
by
Daiki Kawanuma
OpenStack入門 2016/06/27
by
株式会社 NTTテクノクロス
限界性能試験を自動化するOperatorを作ってみた(Kubernetes Novice Tokyo #14 発表資料)
by
NTT DATA Technology & Innovation
Resilience Engineering on Kubernetes
by
Toru Makabe
StackStorm で実現する、複数システムに対する統一インターフェイス提供と運用一元化の取り組み - OpenStack最新情報セミナー(2017年3月)
by
VirtualTech Japan Inc.
ダイ・ハード in the Kubernetes world
by
Toru Makabe
【Cloud Week 2015@Hokkaido University】Dockerとインフラ運用自働化とIoT
by
cloudconductor
Deploying secure service mesh for applications on k8s with using A10's Lighti...
by
Kentaro Ishizuka
DevOpsに求められる様々な技術とその連携の学習方法
by
CASAREAL, Inc.
AWS/Openstack integration with openQRM
by
OSSラボ株式会社
red-hat-forum-2017-openshift-baremetal-deployment
by
Tetsuya Sodo
Hinemosで簡単にdev opsをサポート!
by
Hinemos
Serverless の自動回復と自動化のためのアーキテクチャ
by
Tsuyoshi Ushio
Openstack mitaka のセキュリティ - OpenStack最新情報セミナー 2016年5月
by
VirtualTech Japan Inc.
OpenStackSDK with Ansible
by
Hideki Saito
Viewers also liked
PDF
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
by
John Allspaw
PDF
OpenStack: Inside Out
by
Etsuji Nakai
PDF
Googleのインフラ技術から考える理想のDevOps
by
Etsuji Nakai
PDF
Spannerに関する技術メモ
by
Etsuji Nakai
PDF
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
by
Etsuji Nakai
PPTX
Visual Studio Code 入門
by
Saki Homma
PDF
DevOpsにおける組織に固有の事情を どのように整理するべきか
by
Etsuji Nakai
PDF
IaaSクラウドを支える基礎技術 v1_0
by
Etsuji Nakai
PDF
OpenStackとDockerの未来像
by
Etsuji Nakai
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
by
John Allspaw
OpenStack: Inside Out
by
Etsuji Nakai
Googleのインフラ技術から考える理想のDevOps
by
Etsuji Nakai
Spannerに関する技術メモ
by
Etsuji Nakai
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
by
Etsuji Nakai
Visual Studio Code 入門
by
Saki Homma
DevOpsにおける組織に固有の事情を どのように整理するべきか
by
Etsuji Nakai
IaaSクラウドを支える基礎技術 v1_0
by
Etsuji Nakai
OpenStackとDockerの未来像
by
Etsuji Nakai
Similar to クラウドが実現するソフト開発・運用の変革と自動化
PDF
DSL駆動によるクラウド・アプリケーション開発
by
Tomoharu ASAMI
PDF
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
by
智治 長沢
PDF
システム運用 (インフラ編)
by
Takashi Abe
PDF
間欠的ビッグバンから継続的リフォームへ(公開版)
by
Kent Ishizawa
PDF
継続的デリバリー読書会資料 #1
by
Yusuke HIDESHIMA
PDF
Agile japan2010 rakuten様プレゼン資料
by
Akiko Kosaka
PDF
スキニーなシステム開発にぴったりの契約形態
by
Eiwa System Management, Inc.
PDF
実装(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第30回】
by
Tomoharu ASAMI
PDF
Enterprise DevOps
by
智治 長沢
PDF
セミナー「クラウド時代におけるシステムデザイン」桑原里恵
by
Sapporo Sparkle k.k.
PDF
Intalio japan special cloud workshop
by
Daisuke Sugai
PDF
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
by
智治 長沢
PDF
cross2012a fujya
by
Kazuaki Fujikura
PDF
AJ2010_20100409_maegawasensei
by
Akiko Kosaka
PDF
TopSE.20121119
by
Osamu Habuka
PDF
ヒーロー島 Visual Studio 2012
by
智治 長沢
PDF
Agile 459 | 11/17 資料
by
智治 長沢
PDF
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
by
Amazon Web Services Japan
PDF
20100520 【qpstudy01】 チームでトライ!インフラ構築のススメ
by
Yukitaka Ohmura
PDF
事業継続性と運用弾力性に配慮したクラウドリファレンスアーキテクチャV1.0 final
by
Daisuke Kawada
DSL駆動によるクラウド・アプリケーション開発
by
Tomoharu ASAMI
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
by
智治 長沢
システム運用 (インフラ編)
by
Takashi Abe
間欠的ビッグバンから継続的リフォームへ(公開版)
by
Kent Ishizawa
継続的デリバリー読書会資料 #1
by
Yusuke HIDESHIMA
Agile japan2010 rakuten様プレゼン資料
by
Akiko Kosaka
スキニーなシステム開発にぴったりの契約形態
by
Eiwa System Management, Inc.
実装(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第30回】
by
Tomoharu ASAMI
Enterprise DevOps
by
智治 長沢
セミナー「クラウド時代におけるシステムデザイン」桑原里恵
by
Sapporo Sparkle k.k.
Intalio japan special cloud workshop
by
Daisuke Sugai
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
by
智治 長沢
cross2012a fujya
by
Kazuaki Fujikura
AJ2010_20100409_maegawasensei
by
Akiko Kosaka
TopSE.20121119
by
Osamu Habuka
ヒーロー島 Visual Studio 2012
by
智治 長沢
Agile 459 | 11/17 資料
by
智治 長沢
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
by
Amazon Web Services Japan
20100520 【qpstudy01】 チームでトライ!インフラ構築のススメ
by
Yukitaka Ohmura
事業継続性と運用弾力性に配慮したクラウドリファレンスアーキテクチャV1.0 final
by
Daisuke Kawada
More from Etsuji Nakai
PDF
Googleのインフラ技術に見る基盤標準化とDevOpsの真実
by
Etsuji Nakai
PDF
Machine Learning Basics for Web Application Developers
by
Etsuji Nakai
PDF
Deep Q-Network for beginners
by
Etsuji Nakai
PDF
TensorFlowによるニューラルネットワーク入門
by
Etsuji Nakai
PDF
TensorFlowプログラミングと分類アルゴリズムの基礎
by
Etsuji Nakai
PDF
TensorFlowで学ぶDQN
by
Etsuji Nakai
PDF
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
by
Etsuji Nakai
PDF
Docker活用パターンの整理 ― どう組み合わせるのが正解?!
by
Etsuji Nakai
PDF
Googleにおける機械学習の活用とクラウドサービス
by
Etsuji Nakai
PDF
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
by
Etsuji Nakai
PDF
「ITエンジニアリングの本質」を考える
by
Etsuji Nakai
PDF
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
by
Etsuji Nakai
PDF
Using Kubernetes on Google Container Engine
by
Etsuji Nakai
PDF
Life with jupyter
by
Etsuji Nakai
PDF
Your first TensorFlow programming with Jupyter
by
Etsuji Nakai
PDF
Introducton to Convolutional Nerural Network with TensorFlow
by
Etsuji Nakai
PDF
PRML7.2
by
Etsuji Nakai
PDF
PRML11.2-11.3
by
Etsuji Nakai
PDF
Lecture note on PRML 8.2
by
Etsuji Nakai
PDF
A Brief History of My English Learning
by
Etsuji Nakai
Googleのインフラ技術に見る基盤標準化とDevOpsの真実
by
Etsuji Nakai
Machine Learning Basics for Web Application Developers
by
Etsuji Nakai
Deep Q-Network for beginners
by
Etsuji Nakai
TensorFlowによるニューラルネットワーク入門
by
Etsuji Nakai
TensorFlowプログラミングと分類アルゴリズムの基礎
by
Etsuji Nakai
TensorFlowで学ぶDQN
by
Etsuji Nakai
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
by
Etsuji Nakai
Docker活用パターンの整理 ― どう組み合わせるのが正解?!
by
Etsuji Nakai
Googleにおける機械学習の活用とクラウドサービス
by
Etsuji Nakai
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
by
Etsuji Nakai
「ITエンジニアリングの本質」を考える
by
Etsuji Nakai
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
by
Etsuji Nakai
Using Kubernetes on Google Container Engine
by
Etsuji Nakai
Life with jupyter
by
Etsuji Nakai
Your first TensorFlow programming with Jupyter
by
Etsuji Nakai
Introducton to Convolutional Nerural Network with TensorFlow
by
Etsuji Nakai
PRML7.2
by
Etsuji Nakai
PRML11.2-11.3
by
Etsuji Nakai
Lecture note on PRML 8.2
by
Etsuji Nakai
A Brief History of My English Learning
by
Etsuji Nakai
クラウドが実現するソフト開発・運用の変革と自動化
1.
オープンクラウド・キャンパス
クラウドが実現する ソフト開発・運用の変革と自動化 Ver1.2 2012/11/13 中井悦司 (Twitter @enakai00)
2.
クラウドが実現するソフト開発・運用の変革と自動化
自己紹介 中井悦司(なかいえつじ) – Twitter @enakai00 日々の仕事 – Senior Solution Architect and Cloud Evangelist at Red Hat K.K. 好評発売中 企業システムでオープンソースの活用を希望される お客様を全力でご支援させていただきます。 昔とった杵柄 – 素粒子論の研究(超弦理論とか) – 予備校講師(物理担当) – インフラエンジニア(Unix/Linux専門) 2 Open Cloud Campus
3.
クラウドが実現するソフト開発・運用の変革と自動化
はじめに:クラウドの自動化における問題意識 クラウドコンピューティングの実現により、さまざまな「インフラの自 動化」が可能になりました。 – アクセス変動に敏感なWebアプリケーション(現在のパブリッククラウド利 用の主流)では、「オートスケール」などは確かに便利な機能です。 今後、一般企業の業務アプリケーションをクラウドで利用する場合、ど のような観点で、どのような処理を自動化することが必要なのでしょう か? – 既存の手作業をそのまま自動化するのでは、「自動化のための自動化」に陥 る危険性はないでしょうか? – 「アプリケーション開発、システム運用プロセスの変革/改善と一体化した自 動化の適用」を研究するべき時期がきているのではないでしょうか? いけてる自動化? いけてない自動化? 3 Open Cloud Campus
4.
クラウドが実現するソフト開発・運用の変革と自動化
Contents システム運用の現状と課題 運用自動化への道 − ソフトウェアライフサイクルの観点から アプリケーションデプロイの自動化の現状 サービス継続性から見る将来の自動化 4 Open Cloud Campus
5.
システム運用の現状と課題
6.
クラウドが実現するソフト開発・運用の変革と自動化
システム運用業務の目的 サービスの継続提供 – システムの機能/性能を維持して安定したサービスを継続すること システムの予防保守 – 障害が発生しないように健全なシステム状態を保持すること 障害対応 – 障害発生時に迅速にサービスを復旧して、再発を防止すること アプリケーション開発 インフラ構築 アプリケーション配備 サービス継続 予防保守 コ 要 ー 運用引き継ぎ デ テ 件 設 定 計 ィ ス システム運用 ン ト 義 グ 障害対応 6 Open Cloud Campus
7.
クラウドが実現するソフト開発・運用の変革と自動化
システム運用業務の現状 運用手順書による 手作業が前提 主な運用業務 – アプリケーション配備(デプロイ) OS導入手順書 – 予防保守 アプリケーション導入手順書 パッチ適用手順書 – システム監視と障害対応 バックアップ手順書 障害対応手順書 – バックアップ etc... – キャパシティ管理とシステムの増強 デプロイ アプリケーション 監視 予防保守 OS 障害対応 データ バックアップ システム増強 7 Open Cloud Campus
8.
クラウドが実現するソフト開発・運用の変革と自動化
手順書ベースの運用の課題 まずここに注目 運用中のソフトウェアの変更に時間/コストがかかる – ビジネス要件とそれを支える技術、双方の変化の速度が上がり、アプ リケーション、ミドルウェアなどの頻繁な更新が必要に。 – しかしながら、ソフトウェア変更に伴う手順書の書き換え、検証、手 順変更の周知徹底などに時間とコストがかかり、変更を気軽に行うわ けにはいかず・・・。 環境の複雑化への対応が困難 – 仮想化によりシステム環境が複雑化し、動的な変更・変化も可能に。 – しかしながら、それに伴う運用手順も複雑になり、作業時間が長くな る、作業ミスによる問題発生が起きやすくなるなどの課題が・・・。 変化に弱いのが 手順書運用の弱点 8 Open Cloud Campus
9.
運用自動化への道 ソフトウェアライフサイクルの観点から
10.
クラウドが実現するソフト開発・運用の変革と自動化 ソフトウェアの変更要求が高まる背景
ビジネス要件の変化と技術の進歩に開発速度が追いつかない現状 要件定義 設計 コーディング テスト 運用 要件定義の際に決めたシステムが・・・ 運用開始時は既に時代遅れに! 10 Open Cloud Campus
11.
クラウドが実現するソフト開発・運用の変革と自動化 ソフトウェアの変更要求が高まる背景
開発期間の短縮と継続的なアップデートが必要に。 「継続的インテグレーション」 開発期間の短縮 (CI) の適用 コ コ コ 要 ー 要 ー 要 ー テ テ テ 件 設 デ 件 設 デ 件 設 デ ィ ス ィ ス ィ ス 定 計 定 計 定 計 ン ト ン ト ン ト 義 義 義 グ グ グ 継続的なアップデート 運用 「継続的デリバリー」 の実践 11 Open Cloud Campus
12.
クラウドが実現するソフト開発・運用の変革と自動化 参考書籍 12
Open Cloud Campus
13.
クラウドが実現するソフト開発・運用の変革と自動化 継続的デリバリーの課題は開発と運用の「プロセスの断絶」
この問題の根本原因は 変化が激しくて 何でしょうか? 内容を伝えきれない コ 要 ー テ 件 設 デ 開発環境と本番環境の違いが ィ ス 定 計 不明でデプロイ時に ン ト 義 何がおきるが分からない グ 「越えられない壁?」 受け入れテストの 運用 時間が足りない 内容が分からないから サービスを止めずに 運用手順書が更新できない 更新する方法が分からない 13 Open Cloud Campus
14.
クラウドが実現するソフト開発・運用の変革と自動化 CIプロセスにおける「マシン」と「人間」の役割分担
マシンと人間の役割を明確に 分離したプロセスがCIの肝 CIツール コード リポジトリ ビルドとテストの自動実行 マシンの世界 結果レポートの作成 コード コミット 人間の世界 テスト結果、コード分析結果 カバレッジの推移など レポートのフィードバック 開発者 14 Open Cloud Campus
15.
クラウドが実現するソフト開発・運用の変革と自動化 開発、引き継ぎ、運用プロセスの現状イメージ
開発(作る)プロセス 運用(使う)プロセス 運用引き継ぎ マシンの世界 人間の世界 完成したものを人手で 検証・修正・再配置 15 Open Cloud Campus
16.
クラウドが実現するソフト開発・運用の変革と自動化 開発、引き継ぎ、運用プロセスの現状イメージ
開発(作る)プロセス 運用(使う)プロセス 運用引き継ぎ マシンの世界 作った環境と使う環境が 異なるので品質担保が困難 人間の世界 マシンの役割と人間の役割が プロセス的に分離できていない 16 Open Cloud Campus
17.
クラウドが実現するソフト開発・運用の変革と自動化 開発、引き継ぎ、運用プロセスの理想イメージ
開発(作る)プロセス 運用引き継ぎ 運用(使う)プロセス マシンの世界 人間の世界 運用引き継ぎにおける自動化を追求して、 ソフトウェアとインフラのライフサイクルを統合することが、 「いけてる自動化」の第一歩 17 Open Cloud Campus
18.
クラウドが実現するソフト開発・運用の変革と自動化 自動化の追求で開発と運用の断絶を乗り越える
運用引き継ぎのプロセスを可能な限り自動化して、「デプロイ」の苦痛を 軽減することが「継続的デリバリー」実現の鍵 1. デプロイ処理を自動化して、開発、テスト、本番、すべて同じプロセスでデ プロイしたアプリケーションを使用する。 ⇒ 環境差異を小さくして、「環境の違いで起きる問題」の発生を防止 2. 受け入れテストなど、運用引き継ぎに伴う作業を可能な限り自動化して、さ らには、既存サービスに影響を与えずに自動更新する仕組みを導入する。 ⇒「安全で容易、そして頻繁なデプロイ」を可能に 3. 運用業務を手順書による手作業から、プログラムによる自動化に置き換え。 ⇒ 手順書のメンテナンスと運用作業の負荷を軽減 開発と運用を一体化したプロセスを策定して、 ソフトウェアとインフラのライフサイクルの統合を 実現することが最終的な目標(いわゆる「DevOps」) 18 Open Cloud Campus
19.
クラウドが実現するソフト開発・運用の変革と自動化 自動化の追求で開発と運用の断絶を乗り越える
運用引き継ぎのプロセスを可能な限り自動化して、「デプロイ」の苦痛を 軽減することが「継続的デリバリー」実現の鍵 1. デプロイ処理を自動化して、開発、テスト、本番、すべて同じプロセスでデ プロイしたアプリケーションを使用する。 ⇒ 環境差異を小さくして、「環境の違いで起きる問題」の発生を防止 2. 受け入れテストなど、運用引き継ぎに伴う作業を可能な限り自動化して、さ らには、既存サービスに影響を与えずに自動更新する仕組みを導入する。 今回は、まずは この部分のツールに注目 ⇒「安全で容易、そして頻繁なデプロイ」を可能に 3. 運用業務を手順書による手作業から、プログラムによる自動化に置き換え。 ⇒ 手順書のメンテナンスと運用作業の負荷を軽減 開発と運用を一体化したプロセスを策定して、 ソフトウェアとインフラのライフサイクルの統合を 実現することが最終的な目標(いわゆる「DevOps」) 19 Open Cloud Campus
20.
アプリケーションデプロイ自動化の現状
21.
クラウドが実現するソフト開発・運用の変革と自動化 アプリケーションデプロイにおける管理対象
エクセルシートに DVDメディアから エクセルシートに 手書き入力 手動インストール したがって設定 手作業による デプロイ パラメータシート記述 OS導入・環境設定 アプリケーション / 作業手順書作成 導入・環境設定 環境構築における管理対象 環境設定(Config) OS・アプリケーションの構成管理 アプリケーションプログラム アプリケーションの導入管理 インフラ環境 仮想マシン構成、OSイメージなどの管理 データ 21 Open Cloud Campus
22.
クラウドが実現するソフト開発・運用の変革と自動化 アプリケーションデプロイ自動化の現状
自動化の3大パターン 1. 仮想アプライアンス方式 • アプリケーション導入済みの環境をマシンイメージ化して利用。 2. JEOS(Just Enough OS)方式 • 最小限のOS環境をマシンイメージ化して利用。アプリケーションの導入・設定を自動化。 3. 自動インストール方式 • OSのインストールからアプリケーションの導入・設定まで、すべての作業を自動化して適用。 環境構築における管理対象 環境設定(Config) 1. すべてをイメージ化して利用 アプリケーションプログラム 2. インフラ環境をイメージ化して利用 インフラ環境 3. イメージ化せずにすべてを自動構築 データ 22 Open Cloud Campus
23.
クラウドが実現するソフト開発・運用の変革と自動化 各パターンの特徴
手軽に利用できるが 仮想アプライアンス方式 柔軟性にかける 「環境の塩漬け方式」 – メリット • テンプレートから仮想マシンを起動するだけで簡単に利用できる。 – デメリット • デプロイ時のカスタマイズが難しい。 • テンプレートの修正は手作業となり、メンテナンスに手間がかかる。 • クラウドごとに対応するテンプレートの作成が必要。 カスタマイズが容易だが 大掛かりな仕掛けが必要な 自動インストール方式 「自動生産方式」 – メリット • 自動化の大元となる設計ファイルを修正することで、デプロイ時のカスタマイズや 構成のアップデートが容易に行える。 – デメリット • 自動化ツールの整備が必要。 • テンプレート起動が前提の環境には適用できない。 • テンプレート方式に比べると、デプロイ処理に時間がかかる。 23 Open Cloud Campus
24.
クラウドが実現するソフト開発・運用の変革と自動化 各パターンの特徴
事前準備した環境から カスタマイズを行う JEOS (Just Enough OS) 方式 「サンドイッチ方式 (?)」 – メリット • テンプレート起動が前提の環境でも利用可能。 • デプロイ時にアプリケーションのカスタマイズが可能。 – デメリット • OSバージョンアップなどは、新規テンプレートの作成が必要。 • クラウドごとに対応するOSテンプレートの作成が必要。 • アプリケーションの構成によってはデプロイに時間がかかる。 ※ 自動インストールとJEOSの組み合わせについて – JEOS方式のデメリットを回避する方法として、JEOS作成の自動化があります。共通の 設定ファイルから、使用する環境(クラウド)ごとに同一内容のJEOSを事前に(自動 インストールで)作成して利用します。 – 複数環境(クラウド)に同一構成のアプリケーション環境を自動構築できるメリット があります。 • 後ほど紹介するAeolusでは、この方式を採用しています。 24 Open Cloud Campus
25.
クラウドが実現するソフト開発・運用の変革と自動化 アプリケーションデプロイ自動化ツールの例
個別ツールの組み合わせ – KickStart, virt-install, Oz, etc... • OS導入、JEOSイメージ作成の自動化 – Puppet, Chef, etc... • アプリケーション導入、環境設定の自動化 これらツールの一部を この後のセッションで 統合化された自動化ツールの例 デモと一緒に紹介します – Aeolus Conductor (Red Hat CloudForms) – Amazon Cloud Formation – Dell Crowbar – Dodai Project – juju – VMware vCloud Director – etc... 25 Open Cloud Campus
26.
サービス継続性から見る将来の自動化
27.
クラウドが実現するソフト開発・運用の変革と自動化 サービス継続性における自動化の役割
サービス継続性の観点で適用できそうな自動化のエリア – 既存サービスを停止せずに新規アプリケーションを自動デプロイ – 障害発生時にサービスを自動復旧 – キャパシティ不足時にシステムを自動増強 デプロイ アプリケーション 監視 予防保守 OS 障害対応 データ バックアップ システム増強 27 Open Cloud Campus
28.
クラウドが実現するソフト開発・運用の変革と自動化 サービスを停止せずにバージョンアップする手法の例
ブルーグリーン・デプロイメント – 本番環境を2種類用意して、旧バージョンと新バージョンを並行稼働させながら、切り替 える手法。新バージョンに問題が起きた場合は、すぐに旧バージョンにフォールバック が可能。 • クラウドでインフラ準備が自動化できるようになると、コスト的にも現実性がでてくる。 – ユーザデータの複製などが課題。 • アプリケーションのアーキテクチャから見直しが必要。 カナリアリリース – 一部のユーザのみに新機能を提供して、問題がなければ、全ユーザに新機能を開放する – 機能レベルで小さなバージョンアップを繰り返すことが前提。機能変更に伴うデータ構 造の変化の取り扱いが難しい。(とくに新機能使用ユーザと未使用ユーザは同じデータ を共有する場合) • アプリケーションのアーキテクチャから見直しが必要。 28 Open Cloud Campus
29.
クラウドが実現するソフト開発・運用の変革と自動化 障害復旧の観点での自動化
自動化による「障害復旧」の発想転換 – アプリケーション環境のデプロイが完全自動化されているのであれば、「壊れ た環境を修復する」よりは、「新しい環境を作り直す」方が安上がり。(単純 なインフラ障害は、すべて再デプロイで回復してしまう。) • 現実には、「再デプロイ」で復旧する問題かどうかの判断が難しい場合もあるが、復 旧オプションの一つとしては検討の価値あり。 – アプリケーション実行環境とユーザデータを明確に分離して、再デプロイが データに影響しないことが必要。 • AWSなどは、この方向性を示唆するクラウドインフラ。(インスタンスが停止したら インスタンス上のデータは全て消える。永続データは、EBS、S3への外部保存が前 提。) いずれにしても、ソフトウェア自体が自動化を前提とした 機能・アーキテクチャを持たないと実現は難しい 29 Open Cloud Campus
30.
クラウドが実現するソフト開発・運用の変革と自動化 ソフトウェア開発における自動化との融合
ソフトウェア開発では、既にさまざまな自動化が利用されています。 – 継続的インテグレーション実現の観点で、ビルド/テスト/エラーレポート作成の自動化 – 品質向上の観点で、コードインスペクションの自動化、形式手法適用の自動化など – その他には、DSLによるコードの自動生成など ⇒ 基本的には「機能要件の確実な提供」を目指したもので、「非機能要件の実現」という 観点は多くありません。 今後、運用の自動化が進むと、ソフトウェア開発の段階から「自動化されたイン フラとの連携」を想定した手法が生まれるのではないでしょうか? – 今まで「非機能要件」と思っていたものが、ソフトウェアで制御可能な「機能要件」に 変わる可能性はないでしょうか? 30 Open Cloud Campus
31.
クラウドが実現するソフト開発・運用の変革と自動化 最後に:継続的デリバリーのその先へ・・・
継続的デリバリー デプロイ手順 テスト手順 自動実行可能な手順 (ただし手順自体は人間が作成) 開発 運用 継続的??? デプロイ手順 テスト手順 環境変化に応じて 手順そのものを自動生成 開発 運用 31 Open Cloud Campus
32.
オープンクラウド・キャンパス クラウドの自動化とソフトウェア開発の 未来を一緒に考えて行きましょう!
中井悦司 Twitter @enakai00
Download