AWSクラウドデザインパターン
      -概要編-
自己紹介
名前
 玉川憲
所属
 アマゾンデータサービスジャパン株式会社
ID
 @KenTamagawa
好きなもの
 イカとミスチル
好きなAWSサービス
 AWS DynamoDB
AWSの良さ、いっぱいあります

瞬時のリソース調達で、ピーク対応が楽

広大なバックボーンで、画像配信が楽

柔軟なリソース調整で、障害対応が楽

AWSにお任せで、運用が楽
AWS使いは、こんなこと良く言う

「AWSいいよねーー」
「万が一障害おきても、EIP付け替えればいいや。
 EBSスワップして一瞬で復帰って、すごい楽
 じゃないですか?」
「EC2の前にELBを複数立てて、マルチAZに振
 り分け、最悪マルチリージョンすれば?」
「EC2にNFS入れて、インスタンスストレージ
 にrsyncすれば同期も楽でしょ?」
ネタが細かすぎて
  伝わらない
   選手権
AWS使いこなし度合と人数分布

        AWS使いこなし度合




                人数
AWS使いこなし度合と人数分布

        AWS使いこなし度合

         「そこのあなた、
          ちょっと、
          尖りすぎてませんか?」




                人数
「AWS使いこなし度合」と人数分布

        AWS使いこなし度合




          クラウドの良さを
          もっと知ってもらいたい




                 人数
やりたいこと

    AWSクラウドを
  より伝わりやすくしたい

  既存ノウハウを伝えたい
   (暗黙知→形式知化)
そこで
AWSクラウドデザインパターン
       [beta]

    (略して、CDP)
AWS クラウドデザインパターンとは


AWSクラウドを使ったシステムアーキテクチャ
 設計を行う際に発生する、典型的な問題とそれ
 に対する解決策・設計方法を、分かりやすく分
 類して、ノウハウとして利用できるように整理
 したものである。
www.facebook.com/awscdp
AWS クラウドデザインパターンとは


AWSクラウドを使ったシステムアーキテクチャ
 設計を行う際に発生する、典型的な問題とそれ
 に対する解決策・設計方法を、分かりやすく分
 類して、ノウハウとして利用できるように整理
 したものである。
http://aws.clouddesignpattern.org
Wikiでノウハウを共有
CDPでやりたいこと

 さまざまな課題に対して、
 適用できるAWS利用の技を
    パターンとして
   再利用可能に、
  伝達可能にしてみる
パターン例

FloatingIPパターン

サーバ障害時やバージョン
 アップ時に、瞬時にサーバ切
 り替えを行いたい場合に利用

EIPの付け替えを行い、サーバ
 を切り替える
例: Clone Serverパターン


                   ロードバランサ




       Web          Web         Web

     仮想
             マスタ
     サーバ
                          ②ディスクを同期
         仮想
        ディスク                 ①サーバ起動




                                マシン
                               イメージ
例: Job Observerパターン
デザインパターンの説明
パターン名/サマリー
  パターンの名前と、どのようなパターンなのかを簡単に説明した
   サマリー
解決したい課題
  このパターンが解決する課題や、このパターンが適用できる課題、
   またパターンとして定義するに至った動機についての説明
クラウドでの解決/パターンの説明
  クラウド上でどのように課題を解決するかという点の説明や、ど
   のようなパターンなのか、どのような構成のパターンとなってい
   るかについての説明
実装
  パターンをAWSでどのように実装するかについての説明
デザインパターンの説明(続き)
構造
  パターンの構造を図式化したもの
利点
  このパターンを適用した際の利点の説明
注意点
  このパターンを適用する際の注意点や、適用により生じるデメ
   リット、メリットとデメリットのトレードオフの説明
その他
  関連するパターンや、他のパターンとの比較、利用事例などの付
   加情報
CDPカテゴリ (as of 2012/03/03)
基本パターン               静的コンテンツを処理              バッチ処理
 Snapshot             Web Storage             Queuing Chain
 Stamp                Direct Hosting          Priority Queue
 Scale Up             Private Distribution    Job Observer
 Ondemand Disk        Cache Distribution      Scheduled Autoscaling
                      Rename Distribution
可用性を高める                                      運用保守
 Multi-Server        クラウドへデータをアップロード          Bootstrap
 Multi-Datacenter     Write Proxy             Cloud DI
 Floating IP          Storage Index           Stack Deployment
 Deep Health Check    Direct Object Upload    Server Swapping
                                              Monitoring Integration
動的コンテンツを処理           リレーショナル・データベース           Web Storage Archive
 Scale Out            DB Replication
 Clone Server         Read Replica           ネットワーキング
 NFS Sharding         Inmemory DB Cache       OnDemand NAT
 NFS Replica          Sharding Write          Backnet
 State Sharing                                Functional Firewall
 URL Rewriting                                Operational Firewall
 Rewrite Proxy                                Multi Load Balancer
 Cache Proxy                                  WAF Proxy
                                              CloudHub
Wikiでノウハウを共有
パターンを活用した実装シナリオ

画像動画配信サイト
 大量のユーザに配信したい


Eコマースサイト
 可用性、耐障害性高くしたい


キャンペーンサイト
 突発的アクセス増加に耐えたい
パターンを活用した実装シナリオ

画像動画配信サイト -> Movable Type
 大量のユーザに配信したい


Eコマースサイト -> EC-CUBE
 可用性、耐障害性高くしたい


キャンペーンサイト -> WordPress
 突発的アクセス増加に耐えたい
今日のセッションで実装を紹介
クラウドアーキテクティング原則

• できるだけサービスを利用
• 机上実験よりも実証実験
• スモールスタートからスケールアウト
• 変化に対し全レイヤで対処
• 故障のための設計(Design For Failure)
• 最初だけでなく周期的なカイゼン
CDP、誰が作ったの?




     Ninja of Three
Ninja of Three
まさかのNinja of Threeシール




      表千家    裏千家
ミッション:
    Facebookで
CDPのファンページにLike!
  →もれなくシールが
今日のセッション
Next Step

             ミッション:
            新しいCDPを
            追加してみよう

   目標: Ninja of “Thousand”
Wikiで編集できます!
ご清聴ありがとうございました
      @KenTamagawa

表千家

      しつこい

AWSクラウドデザインパターン(CDP) - 概要編 -