AWS Cloud Design Pattern
-コンテンツ配信編-
Twitterタグ:
#jawsug #awscdp
自己紹介
 名前
片山暁雄
 所属
アマゾンデータサービスジャパン
 ID
@c9katayama
 好きなAWSサービス
Amazon Simple Workflow
 好きなAWSクラウドデザインパターン
Cloud DI
Cloud DI
タグ情報を使って、インスタンスへパラ
メータをインジェクト
ec2-describe-tagsでインスタンス内から取得
タグなのでコンソールから容易に変更可能
コンソールから確認しやすい
#!/bin/bash
AWS_PRIVATE_KEY=/home/ec2-user/my-pk.pem
AWS_CERTIFICATE=/home/ec2-user/my-cert.pem
#EIP Tag name
EIP_KEYNAME=EIP
AWS_REGION=`curl -s http://169.254.169.254/latest/meta-data/placement/availability-
zone | sed -e 's/[a-z]$//'`
INSTANCE_ID=`curl http://169.254.169.254/latest/meta-data/instance-id`
ENDPOINT=https://ec2.${AWS_REGION}.amazonaws.com
#get EIP from TAG
EIP=`ec2-describe-tags -U ${ENDPOINT} -K ${AWS_PRIVATE_KEY} -C ${AWS_CERTIFICATE}
-F "key=${EIP_KEYNAME}" -F "resource-id=${INSTANCE_ID}"
| sed -e "s/.*${EIP_KEYNAME}//" | sed -e "s/[^.0-9]//g"`
#associate EIP
ec2assocaddr -U ${ENDPOINT} -K ${AWS_PRIVATE_KEY} -C ${AWS_CERTIFICATE} -i
${INSTANCE_ID} ${EIP}
CDPシナリオ[画像動画配信サイト]
このシナリオ
雲の写真を載せるブログサイト開始
はじめは個人的に開始
次第にサイトが大きく・・・
利用環境・ソフトウェア
Amazon Linux (64bit)
Movable Type 5.12 (MTOS)
Apache HTTP Server 2.2.21
MySQL 5.1.52
Perl 5.10.1
S3FS 1.61
雲の写真を載せるブログサイト開始
MovableType on EC2
Route53でDNSレコー
ドを管理
スタティック
パブリッシング
インスタンス1台
動画、過去画像集を公開
過去画像集Zipや動画を公開
コメント欄経由ののユーザー要望
サイズが大きく、ダウンロード負荷の高いコ
ンテンツの配信
必要なディスク容量は未知数
Web Storageパターン
容量の大きいデータを、
S3に逃がすパターン
S3のDNS名をCNAME登
録して利用
S3のWebサーバ機能
EC2に比べて安価
動画、過去画像集を公開
動画・過去画像集を
S3へ
メインサイトから
リンクを作成
まさかの大人気サイト化
雲マニア御用達のサイトへ
Facebookから火がつく
アクセス増により、アクセス出来ない状況に
イワシ雲!
イワシ雲!
イワシ雲!
Direct Hostingパターン
HTML、画像、CSSなど静
的コンテンツをすべてS3
でホスティング
EC2はコンテンツ更新と、
コメント投稿や動的な
ページだけで使用
ちなみに・・・
静的コンテンツだけしかないサイトであれ
ば、S3+Route53でホスティングすると
データ保管料:1Gbyteあたり月約10円
データ転送料:1Gbyteあたり約16円
DNSサーバ:1ドメインあたり約50円
->例えばデータ量1Gbyte、月間転送料10Gbyteの
サイトなら約220円でホスティング可能
(1ページ100Kで10万PV)
しかもシステム管理不要
S3メインのシステムへ
配信のメインサイトと
してS3を使用
スタティックパブリッ
シング利用
S3FSでMTからファイ
ルを配置
S3マウントソリューション
S3FS
http://code.google.com/p/s3fs/
S3FS-C,S3FS-C(Cloudpack special)
https://github.com/memorycraft/s3fs-cloudpack
S3Backer
http://code.google.com/p/s3backer/
S3QL
http://code.google.com/p/s3ql/
TntDriver(Windows)
http://tntdrive.com/
Gladinet(Windows)
http://gladinet.com/
まさかの海外展開
海外の雲マニアがサイトを発見
海外有名ニュースサイトへの掲載が決定
掲載までに海外からのアクセスへの対応
が必要
Cache Distributionパターン
ユーザーに近い場所からの配信
世界各地のエッジサーバを利用し、オリジン
サーバのコンテンツをキャッシング
Amazon CloudFrontを使用
よりよいレスポンスと負荷分散を実現
CloudFrontを利用した配信
3つのサブドメインを使用
www,data,mt
 S3から配信するデータは、Contents Distributionパ
ターンを適用
ブログコンテンツ
動画・画像集
コンテンツ管理・
コメント投稿
デザイン推移
動画 人気
海外
CDPでAWSをもっと楽しく
ご清聴ありがとうございました
@c9katayama

CDP Night #1 静的コンテンツ配信編