クラウドデザインパターン #1 CDP 概要編 アマゾンデータサービスジャパン株式会社テクニカルエバンジェリスト堀内康弘
堀内康弘の 自 己紹介 AWS テクニカルエバンジェリスト Twitter: @horiuchi 1978 年年 7 月 12 日 山梨梨県 生まれ 経歴 2004 年年 Vcube BtoB Webシステム開発 2006 年年 FlipClip 動画共有サービスの開発 運 用 2009 年年 gumi ソーシャルゲーム 2012 年年 AWS テクニカルエヴァンジェリスト
AWS でインフラがソフトウェアに インフラもプログラムで制御する時代に
プログラマブル! $options = array('keyname' => "User's Keys", 'InstanceType' => "m1.small"); $res = $ec2- >run_ instances("ami- 48aa4921", 1, 1, $options);
AWS のサービス お客様のアプリケーション ライブラリ & SDKs Java, PHP,.NET, Python, Ruby Web インターフェース Management Console IDE プラグイン Eclipse Visual Studio デプロイと 自動化 AWS Elastic Beanstalk AWS CloudFormation 認証 & 請求 AWS IAM Identity Federation Consolidated Billing モニタリング Amazon CloudWatch スケーリング Auto Scale ネットワーク & ルーティング Amazon VPC Amazon Elastic LB Amazon Route 53 AWS Direct Connect コンテンツ配信 Amazon CloudFront メッセージング Amazon SNS Amazon SQS 分散処理理 Elastic MapReduce メール配信 Amazon SES コンピュータ処理理 Amazon EC2 ストレージ Amazon S3 Amazon EBS データベース Amazon RDS Amazon SimpleDB Amazon DynamoDB Amazon Elasticache AWS のグローバルなインフラ
うまく組み合わせると ピーク対応が楽セキュアなシステム構築安価に世界展開障害にも強いシステム設計
理理想
よく聞く話 サービスが多くてよく分からない 組み合わせ 方が分からない 使い 方が正しいのか分からない
現実
新世代の アーキテクティング が必要
やりたいこと AWS クラウドを より伝わりやすくしたい 既存ノウハウを伝えたい ( 暗黙知 形式知化 )
そこで AWS クラウドデザインパターン [beta] ( 略略して CDP)
AWS クラウドデザインパターンとは AWS
クラウドアーキテクティング原則 (Design For Failure)
例例 : Clone Server パターン Web Web Web
例例 : Job Observer パターン
例例 :FloatingIP パターン
- 基本パターン Snapshot Stamp Scale Up Ondemand Disk - 可 用性を 高める Multi- Server Multi- Datacenter Floating IP Deep Health Check - 動的コンテンツを処理理 Scale Out Clone Server NFS Sharding NFS Replica State Sharing URL Rewriting Rewrite Proxy Cache Proxy - 静的コンテンツを処理理 Web Storage Direct Hosting Private Distribution Cache Distribution Rename Distribution - クラウドへのアップロード Write Proxy Storage Index Direct Object Upload - リレーショナル データベース DB Replication Read Replica Inmemory DB Cache Sharding Write - バッチ処理理 Queuing Chain Priority Queue Job Observer Scheduled Autoscaling - 運 用保守 Bootstrap Cloud DI Stack Deployment Server Swapping Monitoring Integration Web Storage Archive - ネットワーキング OnDemand NAT Backnet Functional Firewall Operational Firewall Multi Load Balancer WAF Proxy CloudHub
全 48 パターン (2012 年年 8 月現在 )
パターンを活 用した実装シナリオ -> Movable Type E -> EC-CUBE -> WordPress -> ffmpeg
CDP を使 用すると CDP
CDP 誰が作ったの? Ninja of Three
Ninja of Three
Wiki でノウハウを共有 http://aws.clouddesignpattern.org
facebook.com/awscdp
まさかの書籍発売!
AWS - -
App NFS Sharing NFS Replica
NFS Sharing パターン NFS EC2 NFS AutoScale
NFS Replica パターン EBS NFS NFS SPOF
DB Replication Read Replica Sharding Write
Amazon RDS(Relational Database Service) マネージされたRDBMSサービス (MySQL Oracle SQLServer) DBのインストール 最適化不不要バックアップ パッチ当ても 自動化 ( メンテナンスフリー ) スペック (CPU メモリ ディスク容量量) を後から変更更可能マルチAZで別 DCにスタンバイ作成 自動フェイルオーバー 自動バックアップ AZ-a 自動フェイルオーバー AZ-b スナップ データ同期 ショット リード パッチ更更新 レプリケーション
RDS の作成
DB Replication パターン AZ RDS 1DC
マルチ AZ に変更更
Read Replica パターン RDS DB
Sharding Write パターン RDS DB DB AZ
Scheduled Scale Out
EC2 のオートスケール機能 負荷に応じてEC2の台数を増やしたり減らしたりできるピーク対応が楽になる! CPU 負荷が80% が5 分間続いたらサーバを1 台増やす CPU 負荷が30% が15 分間続いたらサーバを1 台減らす最 小台数は2 台で 最 大台数は5 台とする オートスケールする 方法は ポリシーまたは時刻典型的なユースケース 突発的なピークが来た場合予め来るとわかっているトラフィックでスケールさせたい場合障害のあったサーバがあっても 自動リカバリして 一定台数保ちたい場合
Scheduled Scale Out パターン AutoScaling EC2
Web Storage Archive
Amazon S3 は データ保存 / 配信の基盤 データ置くだけ インフラ 電源 気にしない 容量量無制限 S3 東京リージョン 世界中の 7 拠点から選択 保存するデータは 自動で暗号化する ことも可能 バケット データセンター A データセンター B 高い耐久性で データ失わない : 99.999999999% データセンター C 3 か所以上で 自動複製 ファイル ( バイナリ テキスト 画像 動画 ) 安価な従量量課 金金 例例 :1GB/ 月 約 10 円 全てのファイルに URL が付き 配信可能
Web Storage Archive パターン S3
EMR Amazon S3 Hadoop Clusters Amazon DynamoDB Amazon EMR AWS 1 2 3
Job Observer Storage Index
Job Observer パターン
Storage Index パターン S3 KVS
Next Step ミッション : 新しい CDP を 追加してみよう 目標 : Ninja of Thousand
ご静聴ありがとうございました
今 日のクラウドデザインパターン この後は?
CDP 画像 動画配信編 (MovableType) アマゾンデータサービスジャパン 片 山暁雄 14:30 よりこの部屋にて!
書籍コーナーにて販売中!