Movable Typeのスケールアップデ
ザインパターン with AWS
自己紹介
 名前
荒木 靖宏(twitter: ar1)
 肩書
 JAWS-UG→AWSへ
 プリンシパルソリューション
アーキテクト
 好きなAWSサービス
Amazon Virtual Private
Cloud
AWS Direct Connect
AWSの様々なサービス
お客様のアプリケーション
認証
AWS IAM
モニタリング
Amazon
CloudWatch
Web管理画面
Management
Console
デプロイと自動化
AWS Elastic
Beanstalk
AWS CloudFromation
IDEプラグイン
Eclipse
Visual Studio
ライブラリ & SDKs
Java, PHP, .NET,
Python, Ruby
Development &
Administration
AWS グローバルインフラ
Geographical Regions, Availability Zones, Points of PresenceAZRegion
ネットワーク & ルーティング
Amazon VPC / Amazon Elastic Load Balancer / Amazon Route 53 /AWS Direct Connect
Infrastructure
Service
コンピュータ処理
Amazon EC2
Auto Scale
ストレージ
Amazon S3
Amazon EBS
Amazon Glacier
AWS StorageGateway
データベース
Amazon RDS
Amazon DynamoDB
Amazon SimpleDB
コンテンツ配信
Amazon CloudFront
メッセージ
Amazon SNS
Amazon SQS
Amazon SES
分散処理
Elastic MapReduce
検索エンジン
Amazon Cloud Search
キャッシング
Amazon Elasticache
ワークフロー管理
Amazon SWF
Application Service
うまく組み合わせると・・
ピーク対応が楽
セキュアなシス
テム構築
安価に世界展開
障害にも強いシ
ステム設計
よく聞く話
サービスが多くてよく分からない
組み合わせ方が分からない
使い方が正しいのか分からない
書籍や日本語資料が少ない
© MSクリップアート
AWSクラウドデザインパターンとは...
 AWSクラウドを使ったシステムアーキテクチャ設計を
行う際に発生する、典型的な問題とそれに対する解決
策・設計方法を、分かりやすく分類して、ノウハウとし
て利用できるように整理したもの。
例えば... (Web Storage Archive)
 解決したい課題
サーバで大量に発生するログを一元管
理したい
 クラウドでの解決
容量無制限ウェブストレージを利用し、
キャパシティを気にすることなく格納
可能
 実装
EC2上でローテートされたログをAPI等
のツールを利用しS3に転送
 利点
ディスクスペース管理が不要になり、
堅牢性の高いストレージでログを管理
 注意点
AutoScale時には、停止前に該当ログ
の退避の仕組みを実装する必要がある
 構造
Webでノウハウを共有
WIKI
http://aws.clouddesignpattern.org/index.php
FACEBOOK
https://www.facebook.com/awscdp
書籍でノウハウを共有
http://www.amazon.co.jp/dp/4822211967/
Amazon Web Services クラウドデザインパターン 設計ガイド
CDPカテゴリ
 基本
Snapshot
Stamp
Scale Up
Ondemand Disk
 可用性を向上
Multi-Server
Multi-Datacenter
Floating IP
Deep Health Check
 動的コンテンツを処理
Scale Out
Clone Server
NFS Sharing
NFS Replica
State Sharing
URL Rewriting
Rewrite Proxy
Cache Proxy
Scheduled Scale Out
 静的コンテンツを処理
Web Storage
Direct Hosting
Private Distribution
Cache Distribution
Rename Distribution
 データをアップロード
Write Proxy
Storage Index
Direct Object Upload
 リレーショナルデータベース
DB Replication
Read Replica
In-memory DB Cache
Sharding Write
 バッチ処理
Queuing Chain
Priority Queue
Job Observer
Scheduled Autoscaling
 運用保守
Bootstrap
Cloud DI
Stack Deployment
Server Swapping
Monitoring Integration
Web Storage Archive
Weighted Transition
Hybrid Backup
 ネットワーク
On-Demand NAT
Backnet
Functional Firewall
Operational Firewall
Multi Load Balancer
WAF Proxy
Cloud Hub
このシナリオ
CDPコンテンツ配信編
雲の写真を載せるブログサイト開始
はじめは個人的に開始
次第にサイトが大きく・・・
本実装シナリオの狙い
個人で運営するブログサイトを取り上げ、
を持つコンテンツ配信システム構築に
AWSを活用した実装方法を解説
利用環境・ソフトウェア
Amazon Linux (64bit)
Movable Type
Apache HTTP Server
MySQL
Perl
S3FS
雲の写真を載せるブログサイト開始
MovableTypeをEC2にイン
ストール
Route53でDNS管理
月額約50円
サーバ1台で運用
t1.microで月額約1600円
アカウント作れば1年間無料
初期のデザイン
EC2
インスタンス
(t1.micro)
Blog
システム
Amazon
Route 53 www.clouddesignpattern.org
EIP
動画、過去画像集を公開
ユーザー要望により動画や過去画像集を公開
サイズが大きく、ダウンロード負荷の高いコ
ンテンツの配信
サーバの台数増は費用がかかる
必要なディスク容量・ネットワーク帯域は未
知数
Web Storageパターン
アクセス負荷の高い動画
や画像コンテンツを、
Amazon S3に逃がすパ
ターン
S3のWebサーバ機能を利
用する
EC2に比べて安価
サーバ稼働費用が不要
動画や過去画像はS3へ
EC2
インスタンス
(t1.micro)
Blog
システム
www.clouddesignpattern.org
EIP
data.clouddesignpattern.org
メインサイトから
S3上のコンテンツへ
リンクを作成
日本には想像以上の雲マニアがいた
まさかの大人気サイト化
積乱雲!
積乱雲!
まさかの大人気サイト化
アクセス過多で、つながりにくい状態に
サーバを増やせば対応出来る
しかし費用がかかる・・・
Direct Hostingパターン
配信のメインサイト
として、EC2ではな
くS3を使用
スタティックパブ
リッシングを利用し、
MT生成ファイルを
S3へ
Amazon S3
S3自体が負荷分散・冗長化されているた
め、アクセスが増えても問題ない
メンテナンスフリー
S3
S3 S3
S3をメインサイトに
EC2
インスタンス
(t1.micro)
Blog
システム
EIP
data.clouddesignpattern.org
www.clouddesignpattern.org
まさかの海外展開
世界の雲マニアがサイトを発見
海外ニュースサイトへの掲載が決定
Cache Distributionパターン
ユーザーに近い場所からの配信
世界各地のエッジサーバを利用し、オリジン
サーバのコンテンツをキャッシング
Amazon CloudFrontを使用
よりよいレスポンスと負荷分散を実現
CloudFrontを利用した配信
3つのサブドメインを使用
www,data,mt
 S3から配信するデータは、Contents Distributionパ
ターンを適用
ブログコンテンツ
動画・画像集
コンテンツ管理・
コメント投稿
デザイン推移
動画 人気
海外
CloundFrontをまず使いましょう
ユーザ体験の向上とサーバ運用の省力化
コンテンツの動的・静的サーバを分けましょう
静的なものはS3へ
DNSをRoute53化しましょう
Elasticache (memcachedもあるよ)
データベースやサーバのスケールアップ
突発イベント対応のまとめ
その他 適用可能なパターン
Storage Indexパターン
 S3上に配置した動画や画像アーカイブを検索
Write Proxyパターン
 動画アップロードを一旦EC2で受けて高速化
Private Cache Distributionパターン
 会員向け動画や画像の個別配信
Direct Object Uploadパターン
 投稿者がS3への直接画像や動画をアップロード
まとめ
デザインパターンを活用し
システム規模に合わせた可用性を持つシステム
を構築が可能に
低コストで耐障害性の高いシステムを簡単に構
築することが可能に
システムが拡大しても、運用者の負担を削減す
る仕組みづくりが可能に
まとめ (改善・革新)
今までできていたことを、
より早く、簡単に、安く実現できる
今までできなかったことが
実現できる
改善
革新
CDPでAWSをもっと楽しく
ご清聴ありがとうございました。
FACEBhttps://www.facebook.com/awscdp

MTのスケールアップパターン with AWS

Editor's Notes

  • #4 Need to insert AWS Storage Gateway?
  • #15 サ イト開設当初はトラフィックやデータ量を気にすることはないため、必要なソフトウェアをすべて1つのEC2インスタンスにインストールする。サーバには固 定IPアドレス(Elasitic IPアドレス)を割り当てている。ここでは、EC-CUBEのインストール手順や詳細な設定手順は割愛する。
  • #16 サ イト開設当初はトラフィックやデータ量を気にすることはないため、必要なソフトウェアをすべて1つのEC2インスタンスにインストールする。サーバには固 定IPアドレス(Elasitic IPアドレス)を割り当てている。EC-CUBE Amazon EC2を利用して、Eコマースサイトを立ち上げているため、バックアップやスケールアップも非常に簡単である。Snapshotパターンや、Scale Upパターンを適宜利用できるだろう。また、データのディスク部分が足りなくなれば、Ondemand Diskパターンを用いて、必要分のディスクを増やすことができる。Eコマースサイトのインフラ部分を、開始時点はスモールスタートし、必要に応じて迅速 にスケールアップ・スケールダウンできるのはクラウドならではといえるだろう。