Your SlideShare is downloading. ×
Update 2010/7/21
瞬間高アクセス対策のための
...
注意事項2
本資料は、2014年9月の事例&#x...
Update 2010/7/21
自己紹介
3
2012.04 株式会社ロックオン入社
インフ&...
株式会社ロックオン
会社紹介5
2001.6 設...
今回持ち帰って頂きたいこと6
サー...
1. AWSのCDNサービス CloudFrontの説明
• CDNとは、C...
Update 2010/7/21
AWSのCDNサービス CloudFront
8
CDN(コンテンツデリバリーネットワ&#x30F...
CDN(コンテンツデリバリーネットワ&#x30F...
CDNがWEBコンテンツを
一時的にキャッ&#x...
各種CDN12
(1) Akamai
• 最大手のCDN
• 全世界の&#x...
CloudFrontとは13
< 特徴 >
• AWSアカウントが&#x304...
CloudFrontの利用料金14
<費用計算式>
CloudFront&#...
Update 2010/7/21
ロックオンでの利用事例(IPO対&#x7B...
当時のサイト構成16
一般的なWordPressの&#x30B...
IPO :影響が想定しきれない17
すべて&#x...
VM
WP
実施した対策18
CloudFrontを設置
各ペー&#x30B...
結果19
IPO公表時刻のアクセス増(前日&#x...
Update 2010/7/21
CloudFrontの利用方法
20
1. 設計
A) キャッシュ対象
B) キャッシ&#x30E5...
設計 キャッシュ対象22
静的なコン&#x30C...
設計 キャッシュ時間23
変更を反映&#x305...
設計 その他注意点24
1. 無料のSNI独自SSL&#x30...
設計 その他注意点25
3. ログイン機能&#x...
実装 CloudFrontの設定26
WEBブラウザでAWSの管&#x740...
実装 Apacheの設定27
Apacheの設定ファイル(*.conf,.h...
試験と公開 CloudFront動作確認28
hostsファイ&#x30EB...
DNS
www.lockon.ne.jp -> 11.22.111.222
hoge.lockon.ne.jp -> 11.22.111.222
試験と公開 Cl...
DNS
www.lockon.ne.jp -> 11.22.111.222
hoge.lockon.ne.jp -> 11.22.111.222
試験と公開 Cl...
DNS
www.lockon.ne.jp -> 11.22.111.222
hoge.lockon.ne.jp -> 11.22.111.222
試験と公開 Cl...
DNS
www.lockon.ne.jp -> d~.cloudfront.net
hoge.lockon.ne.jp -> 11.22.111.222
試験と公...
Update 2010/7/21
まとめ
33
まとめ
1.アクセス変動に低コスト&#x3067...
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply
iPhone sideview for SlideShare app

Innovation EGG 第4回 発表資料 瞬間高アクセス対策のためのCloudFront活用

156

Published on

Innovation EGG 第4回で発表させて頂いた資料です。
https://innovationegg.doorkeeper.jp/events/23300

* 概要
プライベート環境で、コーポレートサイトやプロダクトの紹介サイトを運用されている方は多いのではないでしょうか。
今回は、弊社のコーポレートサイトをAWSのCDNサービスであるCloudFrontを使って、瞬間的な高アクセス増に耐えられるインフラ構成にした事例をご紹介します。
この方法であれば、クラウド環境かオンプレミス環境かに関係なく、少ないコストで、ニュースサイトに取り上げられた時などに発生する瞬間高アクセスに耐えることができます。

* 出てくる技術やソフト
AWS、CDN、CloudFront、DNS、WordPrees

* 想定対象者
CloudFrontというサービスは知っているが使ったことがない方
コーポレートサイトやプロダクトの紹介サイトを運用している方

Published in: Engineering
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
156
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript of "Innovation EGG 第4回 発表資料 瞬間高アクセス対策のためのCloudFront活用"

  1. 1. Update 2010/7/21 瞬間高アクセス対策のための CloudFront活用 2015/07/04 innovation EGG 株式会社ロックオン 三原俊介 1
  2. 2. 注意事項2 本資料は、2014年9月の事例をご紹介しております CloudFrontの最新仕様をご確認したい場合は、公 式のドキュメントをご確認下さい。 <参考> http://aws.amazon.com/jp/cloudfront/ http://aws.amazon.com/jp/documentation /cloudfront/
  3. 3. Update 2010/7/21 自己紹介 3
  4. 4. 2012.04 株式会社ロックオン入社 インフラユニット 現在 匠部所属 主にインフラ全般、開発環境の改善、 ロックオフの管理人などなどやってます 三原 俊介– Shunsuke Mihara 自己紹介4
  5. 5. 株式会社ロックオン 会社紹介5 2001.6 設立 2014.9 マザーズ上場 現在 従業員約60名 アメリカ、ベトナムに子会社
  6. 6. 今回持ち帰って頂きたいこと6 サーバをクラウドに移行させることなく、アクセス 量に応じた自動スケール可能なWEBサイトの構築 サイト運営者の以下の思いに応えたい 1. WEBサイトの突発的なアクセス増に対応したい 2. WEBサイトの構成を変えたくない 3. 低価格かつ、運用の手間がほとんどかかわらな いようにしたい
  7. 7. 1. AWSのCDNサービス CloudFrontの説明 • CDNとは、CloudFrontとは 2. ロックオンでの利用事例(IPO対策) • 背景、実施内容、成果 3. CloudFrontの利用方法 • 設計、実装、試験、公開の流れ 4. まとめ アジェンダ7
  8. 8. Update 2010/7/21 AWSのCDNサービス CloudFront 8
  9. 9. CDN(コンテンツデリバリーネットワーク)とは WEBコンテンツ配信に特化したサービス CDNとは9 自社WEBサイト(サーバ)通常(CDN無し)
  10. 10. CDN(コンテンツデリバリーネットワーク)とは WEBコンテンツ配信に特化したサービス CDNとは10 自社WEBサイト(サーバ)CDN有り CDN 世界各国で稼働
  11. 11. CDNがWEBコンテンツを 一時的にキャッシュして利用者に配信する CDNの仕組みとは11 DBサーバWEBサーバCloudFront CDNインターネットからの アクセス キャッシュの切れた ページの問合せ WordPressの処理 http リクエスト(初回アクセス) http リクエスト SQL(WordPressのリクエスト) 記事のデータなどweb ページweb ページ web ページ http リクエスト(2度目以降アクセス) web ページ TTL(Time to live)が過ぎる まで保持される 既存環境(例 :WordPress)大量アクセスに耐えられ るサーバとネットワーク
  12. 12. 各種CDN12 (1) Akamai • 最大手のCDN • 全世界のネットワーク通信量の数割がここから配信 (2) Amazon CloudFront • AWS提供のCDN • 今回紹介するサービス < CDNの利用例 > • N/W、H/W機器のドライバやミドルウェアの配信 • Windows等のOSのupdate
  13. 13. CloudFrontとは13 < 特徴 > • AWSアカウントがあればWEBコンソールから利用可能 • キャッシュルールを詳細に設定可能 • 世界各地のサーバでキャッシュ • 明瞭会計 詳しくはこちらのページ http://aws.amazon.com/jp/cloudfront/ AWSがサービスの一部として提供しているCDN
  14. 14. CloudFrontの利用料金14 <費用計算式> CloudFront費用 = (1) CloudFrontからのデータ転送費用(1GB当り約17円) + (2) CloudFrontへのデータ転送費用(1GB当り約8円) + (3) CloudFrontへのリクエスト回数(1万リクエストで 約1円) ほぼデータの転送量で決定 (1GB当り約17円) 月間10万PVのサイトなら月間2000円程度 急なアクセス増に対応するエンジニアの人件費を考えると、 十分に安い価格と思います 一般的なコーポレートサイトを想定 月間10万PV、 1.2MB/PVの転送が発生
  15. 15. Update 2010/7/21 ロックオンでの利用事例(IPO対策) 15
  16. 16. 当時のサイト構成16 一般的なWordPressのコーポレートサイト 理由 1. 事業サービスほどの高スペックは不要 2. コンテンツの運用が中心 VM WP VMのスペック CPU: 仮想1コア メモリ: 1GB
  17. 17. IPO :影響が想定しきれない17 すべてが未知なため、 何をどのくらい対応すればよいかがわからない 1. 妥当な想定アクセス数が出せない(性能を何倍にするべき??) 通常の10倍?、100倍??、1000倍??? 2. 新規にロックオンのファンになってくれるかもしれない人がアクセ スするので、アクセス数に制限をかけたくない 3. 株価操作のために、大量アクセス攻撃を仕掛けられる可能性も否定 できない 4. 24時間稼働が必須のWEBサービス提供会社として、誇りと信用に かけて、絶対サーバを落とすわけにはいかない
  18. 18. VM WP 実施した対策18 CloudFrontを設置 各ページ1時間に数回だけ配信
  19. 19. 結果19 IPO公表時刻のアクセス増(前日同時刻比約80倍) でも、サーバの負荷はいつも通り IPOの公表日 DBサーバWEBサーバCloudFront CDN 通常80倍のアクセス (瞬間的にはそれ以上) アクセスの5%程度 既存環境(例 :WordPress) CPU
  20. 20. Update 2010/7/21 CloudFrontの利用方法 20
  21. 21. 1. 設計 A) キャッシュ対象 B) キャッシュ時間 C) その他 注意点 2. 実装 A) CloudFrontの設定 B) Apacheの設定 3. 試験と公開 タスク21 キャッシュルールについて、 設計、実装、試験を実施する
  22. 22. 設計 キャッシュ対象22 静的なコンテンツ、動的なコンテンツについて キャッシュする対象URLを決める WordPressの例 1. 静的なコンテンツのキャッシュ 静的なファイルの識別子がついたURL(/~/~.htmlなど) html,css, js, (画像)git, Git, (フォント)svg, (ファイル)zip .. 2. 動的なコンテンツのキャッシュ アクセス傾向をもとにキャッシュするべきページを選定 (トップページ)/, /index.php, (ニュース)/news/ .. ※ 想定外ページのキャッシュによる、ユーザ情報の流出や画面崩れ が発生する危険があるため、指定ページのみキャッシュをおすすめ
  23. 23. 設計 キャッシュ時間23 変更を反映させるまでの時間を考えて、 TTL(キャッシュ時間)を決める TTLを長くする -> ページ更新して実際に反映される時間が長くなる TTLを短くする -> CDNを通過するアクセス量が増える 細かく設計しても良いが、ロックオンで実施したのは3分類 1. 静的なキャッシュ対象コンテンツ [TTL] 86400秒(24時間) 2. 動的なキャッシュ対象コンテンツ [TTL] 3600秒(1時間) 3. キャッシュしないコンテンツ [TTL] 0秒
  24. 24. 設計 その他注意点24 1. 無料のSNI独自SSLか、月6万円の専用IP独自SSLが使用可能 ※ 無料のSNI独自SSLを使うリスク SNIを使えない古いブラウザには、危険なサイトとして警告 2. アクセスカウンターによってはアクセス数の取得不可能 WEBサーバまでアクセスが来なくなるため、WordPressのアクセ スカウンタープラグインなどは動作しなくなる ※ AD EBiSや、Google Analytics等のタグ計測ツールは影響なし SSL証明書、アクセスカウンター、ログイン機能、 およびIP制限には注意
  25. 25. 設計 その他注意点25 3. ログイン機能があるサイト(WordPressも管理者画面の機能あり) はユーザの識別子毎に別ページとして扱うように設定 ※ 他のユーザ向けのデータが他のユーザに見えてしまうリスク 4. CloudFrontを経由すると、IPがすべてCloudFrontからのアクセ スに見えるので、通常のIP制限が不可能 CloudFrontを経由しない、アクセス方法を用意しIP制限をかける SSL証明書、アクセスカウンター、ログイン機能、 およびIP制限には注意
  26. 26. 実装 CloudFrontの設定26 WEBブラウザでAWSの管理コンソールから CloudFrontを設定
  27. 27. 実装 Apacheの設定27 Apacheの設定ファイル(*.conf,.htaccessなど)を 利用して、httpのCache-Controlヘッダを設定 # デフォルトキャッシュ無し Header set Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0" Header set Pragma "no-cache" # 静的コンテンツのキャッシュ設定 <Files ~ ".(crt|css|eot|GIF|gif|gz|html|ico|ja|JPG|jpg|md|mo|otf|pdf|PNG|png|svg|swf|ttf|txt|woff|xap|xls|xml|zip)$"> Header set Cache-Control "max-age=86400" Header unset Pragma </Files> # WordPressが生成する動的コンテンツのキャッシュ設定 <Files "index.php"> Header set Cache-Control "max-age=3600" Header unset Pragma </Files> 例) WordPress
  28. 28. 試験と公開 CloudFront動作確認28 hostsファイル、DNSを使って 各ページが想定通りに動作するのか検証して公開 WEBサーバCloudFront www.lockon.ne.jp 外部からの流入 11.22.111.222d~.cloudfront.net[CloudFrontのドメイン] DNS www.lockon.ne.jp -> 11.22.111.222 初期状態
  29. 29. DNS www.lockon.ne.jp -> 11.22.111.222 hoge.lockon.ne.jp -> 11.22.111.222 試験と公開 CloudFront動作確認29 hostsファイル、DNSを使って 各ページが想定通りに動作するのか検証して公開 WEBサーバCloudFront www.lockon.ne.jp 11.22.111.222 hoge.lockon.ne.jp www.lockon.ne.jp リバプロ 外部からの流入 Step1 d~.cloudfront.net[CloudFrontのドメイン]
  30. 30. DNS www.lockon.ne.jp -> 11.22.111.222 hoge.lockon.ne.jp -> 11.22.111.222 試験と公開 CloudFront動作確認30 hostsファイル、DNSを使って 各ページが想定通りに動作するのか検証して公開 WEBサーバCloudFront www.lockon.ne.jp 11.22.111.222 hoge.lockon.ne.jp www.lockon.ne.jp リバプロ 外部からの流入 hostsファイルを使ったテスト hosts www.lockon.ne.jp -> 10.20.10.20 ※ 10.20.10.20はCloudFrontのIP Step1 d~.cloudfront.net[CloudFrontのドメイン]
  31. 31. DNS www.lockon.ne.jp -> 11.22.111.222 hoge.lockon.ne.jp -> 11.22.111.222 試験と公開 CloudFront動作確認31 hostsファイル、DNSを使って 各ページが想定通りに動作するのか検証して公開 WEBサーバCloudFront www.lockon.ne.jp 11.22.111.222 hoge.lockon.ne.jp www.lockon.ne.jp リバプロ 外部からの流入 Step1 d~.cloudfront.net[CloudFrontのドメイン]
  32. 32. DNS www.lockon.ne.jp -> d~.cloudfront.net hoge.lockon.ne.jp -> 11.22.111.222 試験と公開 CloudFront動作確認32 hostsファイル、DNSを使って 各ページが想定通りに動作するのか検証して公開 WEBサーバCloudFront www.lockon.ne.jp 11.22.111.222 hoge.lockon.ne.jp www.lockon.ne.jp リバプロ 外部からの流入 Step2 d~.cloudfront.net[CloudFrontのドメイン]
  33. 33. Update 2010/7/21 まとめ 33
  34. 34. まとめ 1.アクセス変動に低コストで自動対応 2.WEBブラウザで簡単に利用開始 3.オンプレ環境、クラウド環境問わず、 WordPressなどのCMSにも適用可能 34 CloudFrontはスモールスタートな Innovatoin事業を支援できる有益なツール

×