AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発...

71
リーンクラウドで行こう クラウドで実現するリーンスタートアップ アマゾンデータサービスジャパン ソリューションアーキテクト 松尾康博([email protected])

Transcript of AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発...

Page 1: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーンクラウドで行こう クラウドで実現するリーンスタートアップ

アマゾンデータサービスジャパン

ソリューションアーキテクト

松尾康博([email protected])

Page 2: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

自己紹介

松尾康博(まつお やすひろ)

所属

• アマゾンデータサービスジャパン

• ソリューションアーキテクト

ソーシャルネットワーク(連絡先)

• Twitter: @understeer

• Mail: [email protected]

好きなAWSサービス • HPCインスタンス、High I/Oインスタンス

Page 3: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

本日のアジェンダ

リーンクラウドとは?

クラウド以前のスタートアップ

AWSで楽するスタートアップ

リーンクラウドの事例

Page 4: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーンクラウド

Page 5: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーンクラウドとは

インフラストラクチャ

運用

開発

経営・マネジメント

AWS

DevOps

リーン開発

リーンスタートアップ

すべてのレイヤで ・ムダを無くし ・すべてのレイヤでサイクルを速く回す

Page 6: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

TOYOTA

Production

System

トヨタ生産方式

Page 7: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

トヨタ生産方式(トヨタ方式, TPS)

トヨタの大野耐一氏が体系化

業務改善手法、プロセスに昇華

大野耐一 (1912-1990)

Page 8: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

トヨタ生産方式(TPS) の基本概念

ジャストインタイム(JIT)

カンバン (Kanban)

ムダ(Muda)・ ムリ(Muri)・ムラ(Mura)

平準化(Heijunka)

アンドン(Andon)

ポカよけ(Poka-yoke)

自働化 (Jidoka)

カイゼン (Kaizen)

見える化(Mieruka)

Page 9: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

7つの“ムダ”

作りすぎのムダ

手待ちのムダ

運搬のムダ

加工のムダ

在庫のムダ

動作のムダ

不良をつくるムダ

顧客に価値を与えないものは全てムダ

Page 10: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

ムダとLean

ムダ=「会社という巨人についた贅肉」

贅肉のとれたスリムな状態 = Lean

ムダを無くす「文化」と「仕組み」

Page 11: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

トヨタ生産方式(トヨタ方式, TPS)

派生した考え方

• リーンスタートアップ

• アジャイル・リーン開発(XP, Scrum)

• DevOps

インフラストラクチャ

運用

開発

経営・マネジメント

AWS

DevOps

リーン開発

リーンスタートアップ

Page 12: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーン・スタートアップ

Page 13: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

スタートアップとは

「不確実性のあるマーケット」に対し何かしらの製品を出していく組織 • 世に無いモノを作り出し価値を生み出す

• 会社の大小や年数は関係ない

課題が曖昧で正確な解決方法など無い • 組織と不確実性のマネジメントが重要

• 実験的アプローチ

• リソースも必要な時に必要なだけ調達し不要になれば開放

Page 14: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーンスタートアップ原則

起業家はどこにでもいる

起業とはマネジメント

立証された学び

構築-計測-学習

Page 15: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

MEASURE & LEARN

計測と学習

Page 16: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

開発・計測・学習のサイクルを速く回す

構築 学習

計測

データ

アイディア

製品

Page 17: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

継続的に速く回すことがリスク低減に

Page 18: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

MVP Minimum Viable Product

市場評価を得るための最小の製品

Page 19: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

‘95年のamazon.com

Page 20: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

継続的な開発・テスト・リリース

開発 学習

計測

データ

アイディア

製品

Page 21: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

様々なデータを定常的に計測

開発 学習

計測

データ

アイディア

製品

Page 22: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

なぜ?を繰り返し真因と対策を

開発 学習

計測

データ

アイディア

製品

Page 23: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

現在のamazon.com

Page 24: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

クラウド以前の

スタートアップの

インフラストラクチャー

Page 25: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

インフラの選択肢

レンタルサーバ(専用・VPS)

自社オフィス&自作サーバ

データセンター

Page 26: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

クラウド以前の苦労

リソース

• インフラ・N/Wが得意なエンジニアが少ない、採用大変

• インフラ作業は不人気職(地味、24/365、、、)

• エース級エンジニアがサービス開発に集中できない(Dev:Ops=2:8)

• スケールさせるための作業が多すぎ

堅牢性

• 自社設置サーバは言わずもがな

• DC設置でもH/WやN/Wについては自己責任

Page 27: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

クラウド以前の苦労

バックアップ

• バックアップサーバを用意するコスト

• バックアップサーバ自体の信頼性確保

スケール

• ロードバランサー、DBのMaster/Slaveも全部自前

サーバ調達

• かなり前から準備しないとトラフィック増加に間に合わない

• 資金の問題

• 実は要らなかった時のコスト・リスクをどう考えるか?

Page 28: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

素晴らしいアプリをリリースし

http://www.flickr.com/photos/scobleizer/398502087

6/

Page 29: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

多くの人が使い始め

Page 30: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 31: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

キャパシティの見積りは

http://www.flickr.com/photos/mutsmuts/4695658106

/

勘と経験と度胸で行い

Page 32: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

インフラに投資し

少ない資金から捻出して

Page 33: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

http://eddie.niese.net/20090313/dont-pity-incompetence/

インフラを管理

H/Wメンテナンス。。

H/W監視。。。。

H/W調達

H/W構築。。。

Page 34: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

サービスが続く限り

http://www.old-computers.com/news

運用も続く

Page 35: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

段違いのスピード差

会社・開発のサイクル・スピードに対して

絶望的にインフラのサイクルが遅い

Page 36: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

既存インフラのボトルネック

構築 学習

計測

データ

アイディア

製品

調達

構築

再構築

メンテナンス

Page 37: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

まとめ:クラウド以前の「ムダ」

作りすぎのムダ

手待ちのムダ

運搬のムダ

加工のムダ

在庫のムダ

動作のムダ

不良をつくるムダ

顧客に価値を与えないものは全てムダ

Page 38: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

クラウド時代の

スタートアップの

インフラストラクチャー

Page 39: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

低額な従量課金

初期投資不要

クラウドコンピューティングの特徴

自由自在なスケールアップ・ダウン

Deploy

市場投入時間の

短縮

物理インフラ管理から解放、

本来のサービス開発・提供へ集中

Page 40: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

最小構成なら数十分で構築可能

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

まずは この構成に!

Page 41: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

でもお高いんでしょ?

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2(Small) ×2

→150$/月程度

ELB

→25$/月程度

RDS(Small)

→100$/月程度

ざっくりの目安 (動画や高画質写真を扱わない一般的なWebサービスの場合)

合計:300$/月程度

*データ転送量等で価格は上下します。目安としてご覧ください

Page 42: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

クラウドでインフラ構築を速く!

構築 学習

計測

データ

アイディア

製品

調達

構築

再構築

メンテナンス

Page 43: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

機会損失

インフラ費用

time

大きな

インフラ投資

過剰なコスト

想定負荷

既存インフラの

キャパシティ

実際の負荷

クラウドの

キャパシティ

クラウドなら負荷変動に柔軟に追随

Page 44: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

一時的なアクセス集中時には

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2

Web App

EC2

Web App

Webサーバ増

↑スペックUP

Page 45: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

一時的なアクセス集中時には

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2

Web App

EC2

Web App

Webサーバ増

↑スペックUP

メディア掲載前に対策、 翌日などアクセスが戻ったら、 元に戻せば、最小限のコストで サーバ落ち/レスポンス低下による

機会損失を防げる

Page 46: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

もちろん継続的なサービス成長時にも

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2

Web App

さらに Webサーバ増

↑さらに スペック

UP

Page 47: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

もちろん継続的なサービス成長時にも

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2 EC2

RDS

Web App

Web App

DB

ELB

Availability Zone

AWS Cloud

EC2

Web App

さらに Webサーバ増

↑さらに スペック

UP

… 一度この構成にすれば…

ユーザが1,000万人になっても、 基本的にはWeb/Appサーバ増設、

RDSスペックアップを 繰り返せばOK!

(それでも耐えられなくなったらご相談ください)

Page 48: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

本当に必要なことは

徹底的な計測と調整で

http://ms.toyota.co.jp/public/images/gp2008/09_greatbritain/free/l_02.jpg

Page 49: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

AWSでムダを削減

AWSのクラウド ベースの環境

本来の 業務

本来の業務に よりフォーカス

クラウドの 管理

70%

30% 70%

オンプレミス 環境

30%

差別化につながらない 付帯的で面倒な作業

Page 50: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 51: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 52: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 53: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 54: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 55: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 58: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

データを基にした学習

Page 59: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

1. 出来る限りのデータを集める準備

Page 60: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

1. 出来る限りのデータを集める準備

2. A/B testingを行う

Page 61: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

1. できる限りのデータを集める準備

2. A/B testing を行う

3. ユーザのフィードバックを基に開発を進める

Page 62: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

A/B TESTING

Page 63: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 64: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 65: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 66: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは
Page 67: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

まとめ

Page 68: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーンクラウドでスタートアップ

リーンスタートアップ+アジャイル+DevOps

• ムダを減らして速く進める

ビジネス ・ 開発 ・ 運用

• 柔軟な(仲の良い)組織と文化

Page 69: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

7つのムダもAWSなら

作りすぎのムダ -> DevOps

手待ちのムダ→ オンデマンド≒JIT

運搬のムダ →管理コンソール

加工のムダ → AMIですぐにサーバ追加

在庫のムダ →オンデマンド≒JIT

動作のムダ →管理コンソール

不良をつくるムダ →すぐに交換

Page 70: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

« Want to increase innovation?

Lower the cost of failure »

Joi Ito

Page 71: AWS Deck Templated36cz9buwru1tt.cloudfront.net/jp/summit2012/pdf/aws...AWS DevOps リーン開発 リーンスタートアップ リーン・スタートアップ スタートアップとは

リーンクラウドで ムダの無いビジネスを!