AWSクラウドデザインパターン    -Eコマース編-
自己紹介 名前   北迫 清訓 (きたさこ きよのり) 所属   アマゾンデータサービスジャパン株式会社     ソリューションアーキテクト ID   Facebook: Kiyonori Kitasako 好きなAWSサービス ...
AWSクラウドデザインパターンとは... AWSクラウドを使ったシステムアーキテクチャ設計を  行う際に発生する、典型的な問題とそれに対する解決  策・設計方法を、分かりやすく分類して、ノウハウとし  て利用できるように整理したもの。
例えば... (Web Storage Archive) 解決したい課題                 構造 サーバで大量に発生するログを一元管 理したい クラウドでの解決 容量無制限ウェブストレージを利用し、 キャパシティを気にするこ...
Webでノウハウを共有WIKIhttp://aws.clouddesignpattern.org/index.php                                    FACEBOOK                    ...
書籍でノウハウを共有Amazon Web Services クラウドデザインパターン 設計ガイド  http://www.amazon.co.jp/dp/4822211967/
CDPカテゴリ (2012.09.13現在) 基本                     静的コンテンツを処理               運用保守  Snapshot                Web Storage       ...
シナリオ       Eコマースサイト編
今回のシナリオをご紹介する前に...CDP画像・動画配信編(Movable Type)雲の写真を載せるブログサイト開始はじめは個人的に開始動画や過去画像集も公開し始めるまさかの大人気まさかの海外展開
デザイン推移動画        海外   最終     人気
今回のシナリオまさかの
本実装シナリオの狙いEコマースサイトをとりあげ、 を高めるパターンを中心にAWSを活用 した実装方法を解説
利用環境・ソフトウェアEC-CUBE (2.12.2)Amazon Linux (64bit)Apache (2.2.22)MySQL (5.5.25)PHP (5.3.15)
ec.cloudesignpattern.org
初期のデザイン          Amazon                     ec.clouddesignpattern.org          Route 53            EIP            本番      ...
問題発生 (その1)問題: インストール製品にセキュリティホールが発覚! ソフトウェアのバージョンアップ作業が急務にアクション: ”Floating IP” テスト環境でバージョンアップ!! 検証後、本番環境のIPアドレスをテスト環境に付 ...
Floating IPパターンの適用                        Amazon                                   ec.clouddesignpattern.org              ...
Floating IPパターンの適用利点 検証環境を必要な時だけ準備できる 検証環境をそのまま本番環境として利用でき  るため、2重の作業もなく、本番/検証環境差  異が派生しない 切り戻しも簡単注意点 EIPの切換に通常数秒程度かかる
問題発生 (その2)問題: サーバに障害発生! 速やかにサーバを復旧したいアクション: “Server Swapping” 以前取得したマシンイメージから別サーバを起動 (壊れた)本番環境の最新データを持つディスクを 移行して、復旧実施
Server Swappingパターンの適用     サーバに障害発生     EIP      仮想          仮想                          サーバ起動      サーバ         サーバ       ...
Server Swappingパターンの適用利点 代替環境の準備が瞬時にできる Diskの付け替えでデータ移行も容易注意点 EBSの障害も考慮し、スナップショットなど  のバックアップも行うことを推奨
問題発生 (その3)問題:Webサーバが落ちても、システム全体で稼働し続けるようにしたいアクション: “Multi-Server” Webサーバを冗長化し、単一障害点を削減
Multi-Serverパターンの適用               Amazon               Route 53    ec.clouddesignpattern.org            ロードバランサ         オリ...
Amazon RDS(MySQL)とは 2009年に登場した設定と運用が容易なクラウド上での  マネージドRDBMSサービス RDSの特徴   Webコンソールから、設定済みでサイズ変更可能なDBインス    タンスを、数分で起動可能  ...
Amazon RDSの作成AWS Management   Console
Multi-Serverパターンの適用 DBのデータをダンプする $ mysqldump -u ユーザー名 -pパスワード デー  タベース名 > backups/backup.sql 作成したRDSのDBインスタンスにデータをイン  ポ...
Multi-Serverパターンの適用               Amazon               Route 53    ec.clouddesignpattern.org            ロードバランサ         オリ...
Amazon RDSのスナップショット取得AWS Management   Console
Multi-Serverパターンの適用               Amazon               Route 53    ec.clouddesignpattern.org            ロードバランサ         オリ...
ロードバランサの起動AWS Management   Console
ロードバランサの起動  EC-CUBEでは、SSLをサポート。  ELBでも対処可能だが、今回はELBではSSLの処理はしないことに。AWS Management   Console
ELB配下にWebサーバを追加  負荷分散させるWebサーバを確認   ELB配下にWebサーバを追加AWS Management   Console
Multi-Serverパターンの適用               Amazon               Route 53    ec.clouddesignpattern.org            ロードバランサ         オリ...
Multi-Serverパターンの適用利点 AMIによるシステムイメージの流用と、Elastic Load  Balancingにより、簡単にWebサーバの冗長化が可能 Amazon RDSの採用によりDBの運用負担を大幅に削  減注意...
問題発生 (その4)問題: Webサーバを冗長化したことで、 DBサーバの性能が低下し不安定にアクション: “Scale Up” DBサーバのインスタンスサイズを変更
Scale Upパターンの適用              Amazon              Route 53    ec.clouddesignpattern.org           ロードバランサ        オリジ       ...
Amazon RDSでScale UpAWS Management   Console
Scale Upパターンの適用利点 管理画面での設定だけで、インスタンスサイズ、D  Bサイズの変更が可能 アクセス状況を見ながら適時、適切なDBサイジング  を選択することが可能注意点 DBの再起動が発生するため、実施時間の調整が必要
問題発生 (その5)問題: DBのSPOF(単一障害点)を解消する 必要あり!アクション: “DB Replication” DBをマルチ構成に変更し、耐障害性を強 化!
マルチAZに変更AWS Management   Console
DB Replicationパターンの適用                  Amazon                  Route 53   ec.clouddesignpattern.org                 ロードバラン...
DB Replicationパターンの適用利点 管理画面での設定だけで、マルチAZ(フォールトレラ  ント)構成をとることが可能 スタンバイ側でDBのバックアップが行われるように  なり、サービスへの影響がより軽減注意点 DBのインス...
問題発生 (その6)問題: 災害対策の一環としてデータセンター レベルでのBCPの検討が必要に!アクション: “Multi-Datacenter” 物理的に別のデータセンターを利用し、 すべてのレイヤで冗長化
Multi-Datacenterパターンの適用                   Amazon                   Route 53   ec.clouddesignpattern.org                  ロ...
Multi-Datacenterパターンの適用利点 他のAZを利用することへの追加コストが発生しない DCレベルでの耐障害性構成を簡単に実現可能注意点 AZ(DC)間を跨いだWebサーバとDBサーバ間の通信  に少額の課金が発生
様々な対策を経てBCP対策までもが簡単かつ安価に実現!
デザインパターンの推移開始       復旧対応     可用性対応                           BCP対応保守対応     障害対策     SPOF回避
その他 適用可能なパターンMutli-Regionパターン   グローバル展開を見据えたBCP対策Deep Health Checkパターン   全レイヤー串刺しチェックによる可用性の向上Monitoring Integrationパ...
まとめデザインパターンを活用し システム規模に合わせた可用性を持つシステム を構築が可能に 低コストで耐障害性の高いシステムを簡単に構 築することが可能に システムが拡大しても、運用者の負担を削減す る仕組みづくりが可能に
まとめ (改善・革新)       今までできていたことを、改善     より早く、簡単に、安く実現できる       今までできなかったことが革新          実現できる
CDPでAWSをもっと楽しく
ご清聴ありがとうございました。   FACEBhttps://www.facebook.com/awscdp
Upcoming SlideShare
Loading in …5
×

[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)

2,889 views

Published on

クラウドデザインパターン#3
CDP Eコマース編 (EC-CUBE)

登壇者名・社名 北迫 清訓(アマゾン データ サービス ジャパン 株式会社)

Published in: Technology
  • Be the first to comment

[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)

  1. 1. AWSクラウドデザインパターン -Eコマース編-
  2. 2. 自己紹介 名前 北迫 清訓 (きたさこ きよのり) 所属 アマゾンデータサービスジャパン株式会社 ソリューションアーキテクト ID Facebook: Kiyonori Kitasako 好きなAWSサービス Amazon Glacier 好きなCDP Web Storage Archiveパターン
  3. 3. AWSクラウドデザインパターンとは... AWSクラウドを使ったシステムアーキテクチャ設計を 行う際に発生する、典型的な問題とそれに対する解決 策・設計方法を、分かりやすく分類して、ノウハウとし て利用できるように整理したもの。
  4. 4. 例えば... (Web Storage Archive) 解決したい課題  構造 サーバで大量に発生するログを一元管 理したい クラウドでの解決 容量無制限ウェブストレージを利用し、 キャパシティを気にすることなく格納 可能 実装 EC2上でローテートされたログをAPI等 のツールを利用しS3に転送 利点 ディスクスペース管理が不要になり、 堅牢性の高いストレージでログを管理 注意点 AutoScale時には、停止前に該当ログ の退避の仕組みを実装する必要がある
  5. 5. Webでノウハウを共有WIKIhttp://aws.clouddesignpattern.org/index.php FACEBOOK https://www.facebook.com/awscdp
  6. 6. 書籍でノウハウを共有Amazon Web Services クラウドデザインパターン 設計ガイド http://www.amazon.co.jp/dp/4822211967/
  7. 7. CDPカテゴリ (2012.09.13現在) 基本  静的コンテンツを処理  運用保守 Snapshot Web Storage Bootstrap Stamp Direct Hosting Cloud DI Private Distribution Stack Deployment Scale Up Cache Distribution Ondemand Disk Server Swapping Rename Distribution Monitoring Integration 可用性を向上 Web Storage Archive  データをアップロード Weighted Transition Multi-Server Write Proxy Hybrid Backup Multi-Datacenter Storage Index Floating IP Direct Object Upload Deep Health Check  ネットワーク  リレーショナルデータベース On-Demand NAT 動的コンテンツを処理 DB Replication Backnet Read Replica Functional Firewall Scale Out In-memory DB Cache Operational Firewall Clone Server Sharding Write Multi Load Balancer NFS Sharing WAF Proxy NFS Replica  バッチ処理 Cloud Hub State Sharing Queuing Chain URL Rewriting Priority Queue Rewrite Proxy Job Observer Cache Proxy Scheduled Autoscaling Scheduled Scale Out
  8. 8. シナリオ Eコマースサイト編
  9. 9. 今回のシナリオをご紹介する前に...CDP画像・動画配信編(Movable Type)雲の写真を載せるブログサイト開始はじめは個人的に開始動画や過去画像集も公開し始めるまさかの大人気まさかの海外展開
  10. 10. デザイン推移動画 海外 最終 人気
  11. 11. 今回のシナリオまさかの
  12. 12. 本実装シナリオの狙いEコマースサイトをとりあげ、 を高めるパターンを中心にAWSを活用 した実装方法を解説
  13. 13. 利用環境・ソフトウェアEC-CUBE (2.12.2)Amazon Linux (64bit)Apache (2.2.22)MySQL (5.5.25)PHP (5.3.15)
  14. 14. ec.cloudesignpattern.org
  15. 15. 初期のデザイン Amazon ec.clouddesignpattern.org Route 53 EIP 本番 環境 EC2 インスタンス
  16. 16. 問題発生 (その1)問題: インストール製品にセキュリティホールが発覚! ソフトウェアのバージョンアップ作業が急務にアクション: ”Floating IP” テスト環境でバージョンアップ!! 検証後、本番環境のIPアドレスをテスト環境に付 け替え
  17. 17. Floating IPパターンの適用 Amazon ec.clouddesignpattern.org Route 53 EIP「54.248.xxx.xxx」 EIP 本番 テスト 環境 環境 EC2 EC2 EC2 AMI
  18. 18. Floating IPパターンの適用利点 検証環境を必要な時だけ準備できる 検証環境をそのまま本番環境として利用でき るため、2重の作業もなく、本番/検証環境差 異が派生しない 切り戻しも簡単注意点 EIPの切換に通常数秒程度かかる
  19. 19. 問題発生 (その2)問題: サーバに障害発生! 速やかにサーバを復旧したいアクション: “Server Swapping” 以前取得したマシンイメージから別サーバを起動 (壊れた)本番環境の最新データを持つディスクを 移行して、復旧実施
  20. 20. Server Swappingパターンの適用 サーバに障害発生 EIP 仮想 仮想 サーバ起動 サーバ サーバ データ データ マシン イメージ 仮想ディスク 仮想ディスク
  21. 21. Server Swappingパターンの適用利点 代替環境の準備が瞬時にできる Diskの付け替えでデータ移行も容易注意点 EBSの障害も考慮し、スナップショットなど のバックアップも行うことを推奨
  22. 22. 問題発生 (その3)問題:Webサーバが落ちても、システム全体で稼働し続けるようにしたいアクション: “Multi-Server” Webサーバを冗長化し、単一障害点を削減
  23. 23. Multi-Serverパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ オリジ 冗長 ナル 構成 EC2 EC2 インスタンス インスタンス MySQL DB インスタンス
  24. 24. Amazon RDS(MySQL)とは 2009年に登場した設定と運用が容易なクラウド上での マネージドRDBMSサービス RDSの特徴  Webコンソールから、設定済みでサイズ変更可能なDBインス タンスを、数分で起動可能  AWSが自動バックアップ、パッチ更新を管理  スケールアップ、レプリケーション、リードレプリカの作成も 可能  現時点で、MySQL, Oracle, SQL Serverをサポート  OracleやSQL Serverの場合、時間単位の従量課金と、既存ラ イセンス持込みをサポート
  25. 25. Amazon RDSの作成AWS Management Console
  26. 26. Multi-Serverパターンの適用 DBのデータをダンプする $ mysqldump -u ユーザー名 -pパスワード デー タベース名 > backups/backup.sql 作成したRDSのDBインスタンスにデータをイン ポート $ mysql -u eccube_db_user -peccube -- database=eccube_db -- host=eccubedbins.xxxxxxxxxx.ap- northeast-1.rds.amazonaws.com < backups/backup.sql EC-CUBEのデータベースへの接続情報を書き換え “config/config.php” define (DB_SERVER, eccubedbins.xxxxxxxxxx.ap-northeast- 1.rds.amazonaws.com);
  27. 27. Multi-Serverパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ オリジ 冗長 ナル 構成 EC2 EC2 インスタンス インスタンス MySQL DB S3 インスタンス ストレージ
  28. 28. Amazon RDSのスナップショット取得AWS Management Console
  29. 29. Multi-Serverパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ オリジ 冗長 ナル 複製 構成 EC2 EC2 インスタンス インスタンス MySQL DB インスタンス
  30. 30. ロードバランサの起動AWS Management Console
  31. 31. ロードバランサの起動 EC-CUBEでは、SSLをサポート。 ELBでも対処可能だが、今回はELBではSSLの処理はしないことに。AWS Management Console
  32. 32. ELB配下にWebサーバを追加 負荷分散させるWebサーバを確認 ELB配下にWebサーバを追加AWS Management Console
  33. 33. Multi-Serverパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ オリジ 冗長 ナル 複製 構成 EC2 EC2 インスタンス インスタンス MySQL DB インスタンス
  34. 34. Multi-Serverパターンの適用利点 AMIによるシステムイメージの流用と、Elastic Load Balancingにより、簡単にWebサーバの冗長化が可能 Amazon RDSの採用によりDBの運用負担を大幅に削 減注意点 Webサーバ上の画像ファイル等の同期処理が必要と なる場合がある
  35. 35. 問題発生 (その4)問題: Webサーバを冗長化したことで、 DBサーバの性能が低下し不安定にアクション: “Scale Up” DBサーバのインスタンスサイズを変更
  36. 36. Scale Upパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ オリジ 冗長 ナル 構成 EC2 EC2 インスタンス インスタンス MySQL DB MySQL DB インスタンス インスタンス
  37. 37. Amazon RDSでScale UpAWS Management Console
  38. 38. Scale Upパターンの適用利点 管理画面での設定だけで、インスタンスサイズ、D Bサイズの変更が可能 アクセス状況を見ながら適時、適切なDBサイジング を選択することが可能注意点 DBの再起動が発生するため、実施時間の調整が必要
  39. 39. 問題発生 (その5)問題: DBのSPOF(単一障害点)を解消する 必要あり!アクション: “DB Replication” DBをマルチ構成に変更し、耐障害性を強 化!
  40. 40. マルチAZに変更AWS Management Console
  41. 41. DB Replicationパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ オリジ 冗長 ナル 構成 EC2 EC2 インスタンス インスタンス MySQL DB MySQL DB インスタンス スタンバイ
  42. 42. DB Replicationパターンの適用利点 管理画面での設定だけで、マルチAZ(フォールトレラ ント)構成をとることが可能 スタンバイ側でDBのバックアップが行われるように なり、サービスへの影響がより軽減注意点 DBのインスタンスコストが2倍になる RDSのフェイルオーバーに多少時間がかかる
  43. 43. 問題発生 (その6)問題: 災害対策の一環としてデータセンター レベルでのBCPの検討が必要に!アクション: “Multi-Datacenter” 物理的に別のデータセンターを利用し、 すべてのレイヤで冗長化
  44. 44. Multi-Datacenterパターンの適用 Amazon Route 53 ec.clouddesignpattern.org ロードバランサ ゾーン1a ゾーン1b オリジ 冗長 ナル 構成 EC2 EC2 インスタンス インスタンス MySQL DB MySQL DB インスタンス スタンバイ
  45. 45. Multi-Datacenterパターンの適用利点 他のAZを利用することへの追加コストが発生しない DCレベルでの耐障害性構成を簡単に実現可能注意点 AZ(DC)間を跨いだWebサーバとDBサーバ間の通信 に少額の課金が発生
  46. 46. 様々な対策を経てBCP対策までもが簡単かつ安価に実現!
  47. 47. デザインパターンの推移開始 復旧対応 可用性対応 BCP対応保守対応 障害対策 SPOF回避
  48. 48. その他 適用可能なパターンMutli-Regionパターン  グローバル展開を見据えたBCP対策Deep Health Checkパターン  全レイヤー串刺しチェックによる可用性の向上Monitoring Integrationパターン  運用プロセス向上のための監視ソフト環境導入WAF Proxyパターン  セキュリティ向上のためのWAF(Web Application Firewall)の導入
  49. 49. まとめデザインパターンを活用し システム規模に合わせた可用性を持つシステム を構築が可能に 低コストで耐障害性の高いシステムを簡単に構 築することが可能に システムが拡大しても、運用者の負担を削減す る仕組みづくりが可能に
  50. 50. まとめ (改善・革新) 今までできていたことを、改善 より早く、簡単に、安く実現できる 今までできなかったことが革新 実現できる
  51. 51. CDPでAWSをもっと楽しく
  52. 52. ご清聴ありがとうございました。 FACEBhttps://www.facebook.com/awscdp

×