2011.9.16




    伊東 賢⼆
kenji@cloudpack.jp
⾃⼰紹介:伊東                  賢⼆

プロフィール

 ★アイレット株式会社
 ★アイレ ト株式会社             取締役
  cloudpack事業部     職⼈
  プログラム書きながらサーバー監視してます。
 ★好きなAWSサ ビス:cloudfront
 ★好きなAWSサービス:cloudfront
 ★ Email:kenji@cloudpack.jp
 ★ URL:www.iret.co.jp
 ★ 14年ぐらいIT業界で働いてます。




備考
     ★⽜タンが⼤好きです。
     ★東京の上野と⽥町によく出没します。
     ★AWSプレミアムサポートに⼤変お世話になってます。
cloudpack(http://www.cloudpack.jp/)とは

                                        ★2010年4⽉サービスイン
                                        ★Amazon EC2をはじめとす
                                        るクラウド導⼊設計、運⽤・
                                        保守サービス
                                         クラウド環境をバックエン
                                        ドとした⽉額費⽤固定型フル
                                        マネージドホスティング
                                        ★2011年1⽉AWS Solution
                                        Provider認定
                                        ★2011年9⽉現在、150イン
                                        スタンス以上を運⽤管理。ま
                                        だまだ増加中。
負荷対策はCloudFront


  ・⼀時的な負荷対策の究極は、やはりCloudFrontを使った完全ホスティング

  ・なんで今頃?今さら? CloudFrontみんな知ってるよ。CDNでしょ?




   ELBを使ってEC2を横にならべたバランシングやオートスケーリングなど

   強烈なソリューションが⽬⽴つなか、

   意外とまだそこまで、この最強のCloudFrontが使われてない

   じゃないか?って勝⼿に思ってます。
CloudFrontは便利なんです

  従来
  S3(Amazon Simple Storage Service)にファイルを置きそこをオリジン指定でキャッシュする
  ような従来なやり⽅は、何気に少しだけハードルが⾼かった。
  ファイルをアップロードする⽅法がいつも慣れたFTPやSFTP等でなく、普段と違ったツールの導
  ⼊が必須でしたのでクライアントとの調整でS3にアップするノウハウなどがやっぱ必要で断念す
   が                       プ        が  ぱ
  る形が多かった。




  2010年11⽉〜
  カスタムオリジン(EC2)が指定できることによってS3使わずに簡単にCloudFrontを使うことが可
  能になりました。
  そのナイスタイミングで、テレビ放送などでサイトが落ちてしまうというお客様からの相談が来
  ました。
今回モデルにするサイト          www.salvatore.jp




 テレビにも取り上げれ瞬間アクセスが通常の10倍以上になるサイト
  2010年12⽉15⽇ 18時〜   フジテレビ「スーパーニュース 」に紹介されました。
  2011年07⽉26⽇ 22時〜   TBS「リンカーン」という番組でメニューが紹介されました。
                     TBS「リンカ ン」という番組でメニュ が紹介されました
負荷対策の準備


                   ELBを使った負荷分散の準備
     (EC2を追加であげれるようにスレーブAMIを準備)
     (   を追加 あげれ よ     ブ   を準備)


                        Load Balancer




          Master            Slave             Slave




                                        AMI
負荷対策の準備2


 オリジンには org.salvatore.jp を新設し、cdn.salvatore.jpで準備
     画像やSWFなどを逃がすためだけに最初は考えていた…
     画像や   などを逃がすためだけ 最初は考   た




                        オリジン指定




                                  CloudFront




         org.salvatore.jp        cdn.salvatore.jp
放送1⽇前に準備ができたので




  クライアント担当者に連絡してみた
  クライアント担当者に連絡し みた
クライアントからの返事




⾮常に早く感動しました。早すぎます!
   なんとかこのクオリティ(スピード)状態で、放送迎えられないでしょうか…




       CloudFront(cdn)⼤絶賛
       だけど、ここで問題発覚…
問題点が⼆つ




  1. サイト内にSWFがあり、データ通信していた
  1 サイト内にSWFがあり デ タ通信していた


  2. ⼀部、問い合わせフォームなどでプログラム(CGI)が動作
    (CloudFrontではプログラムは動かない)
SWF通信問題点解決



   詳しく調べてみると、静的なXMLを読み込んでいることが判明
   そのXMLをWEBで拾える場所にあるので、CDNにキャッシュされているため問題なくSWFが動いていた




       EC2                                  CloudFront



             SWF                     SWF




              XML                     XML




   CloudFrontは、XMLも当然余裕でキャッシュしてくれる!
プログラム(CGI)解決



   問い合わせフォームのみだったので、cgi.salvatore.jpなどの
   問い合わせフォ ムのみだったので cgi sal ato e jpなどの
  VirtualHostを新設し、プログラムはそのURLで動作させて解決。
                     (ちょっとだけ⼒技)

       www.salvatore.jp
       www salvatore jp もしくは    cgi. salvatore.jp
          cdn. salvatore.jp




           問い合わせリンク            問い合わせフォームCGI
最終イメージ




 cgi.salvatore.jp   www.salvatore.jp(cdn.salvatore.jp)
問題は解決し放送⽇を迎える



  cdn.salvatore.jpで既にテスト済みなので、切り替えはDNSのみ
  cdn salvatore jpで既にテスト済みなので 切り替えはDNSのみ


         www IN A xxx.xxx.xxx.xxx




         www IN CNAME cdn.salvatore.jp.


  これでwww.salvatore.jpを完全にCloudFront化して放送に臨む
放送時間




       今までにない展開
       余裕過ぎて、落ちることなく無事終了
       余裕過ぎて 落ちることなく無事終了




          1⽇後、DNSを元に戻す
7⽉26⽇の2回⽬の放送




     cdn.salvatore.jpへwwwのDNSを変更して放送を待つのみ




監視すら忘れるくらいの展開
        余裕過ぎて、落ちることなく無事終了
まとめ




  1.   負荷対策の究極は、やはりCloudFront完全ホスティング!
       EC2を何台増やしたところでキャッシュには勝てない。
       EC2を何台増やしたところでキャッシ には勝てない
       まさしく最強!! ということである。


  2.   FLASHやプログラムなどあっても
       やり⽅によってはCloudFrontにHTMLごともっていけるので
       諦めないことが重要!
Thank You

負荷対策はCloudFront

  • 1.
    2011.9.16 伊東 賢⼆ kenji@cloudpack.jp
  • 2.
    ⾃⼰紹介:伊東 賢⼆ プロフィール ★アイレット株式会社 ★アイレ ト株式会社 取締役 cloudpack事業部 職⼈ プログラム書きながらサーバー監視してます。 ★好きなAWSサ ビス:cloudfront ★好きなAWSサービス:cloudfront ★ Email:kenji@cloudpack.jp ★ URL:www.iret.co.jp ★ 14年ぐらいIT業界で働いてます。 備考 ★⽜タンが⼤好きです。 ★東京の上野と⽥町によく出没します。 ★AWSプレミアムサポートに⼤変お世話になってます。
  • 3.
    cloudpack(http://www.cloudpack.jp/)とは ★2010年4⽉サービスイン ★Amazon EC2をはじめとす るクラウド導⼊設計、運⽤・ 保守サービス クラウド環境をバックエン ドとした⽉額費⽤固定型フル マネージドホスティング ★2011年1⽉AWS Solution Provider認定 ★2011年9⽉現在、150イン スタンス以上を運⽤管理。ま だまだ増加中。
  • 4.
    負荷対策はCloudFront ・⼀時的な負荷対策の究極は、やはりCloudFrontを使った完全ホスティング ・なんで今頃?今さら? CloudFrontみんな知ってるよ。CDNでしょ? ELBを使ってEC2を横にならべたバランシングやオートスケーリングなど 強烈なソリューションが⽬⽴つなか、 意外とまだそこまで、この最強のCloudFrontが使われてない じゃないか?って勝⼿に思ってます。
  • 5.
    CloudFrontは便利なんです 従来 S3(Amazon Simple Storage Service)にファイルを置きそこをオリジン指定でキャッシュする ような従来なやり⽅は、何気に少しだけハードルが⾼かった。 ファイルをアップロードする⽅法がいつも慣れたFTPやSFTP等でなく、普段と違ったツールの導 ⼊が必須でしたのでクライアントとの調整でS3にアップするノウハウなどがやっぱ必要で断念す が プ が ぱ る形が多かった。 2010年11⽉〜 カスタムオリジン(EC2)が指定できることによってS3使わずに簡単にCloudFrontを使うことが可 能になりました。 そのナイスタイミングで、テレビ放送などでサイトが落ちてしまうというお客様からの相談が来 ました。
  • 6.
    今回モデルにするサイト www.salvatore.jp テレビにも取り上げれ瞬間アクセスが通常の10倍以上になるサイト 2010年12⽉15⽇ 18時〜 フジテレビ「スーパーニュース 」に紹介されました。 2011年07⽉26⽇ 22時〜 TBS「リンカーン」という番組でメニューが紹介されました。 TBS「リンカ ン」という番組でメニュ が紹介されました
  • 7.
    負荷対策の準備 ELBを使った負荷分散の準備 (EC2を追加であげれるようにスレーブAMIを準備) ( を追加 あげれ よ ブ を準備) Load Balancer Master Slave Slave AMI
  • 8.
    負荷対策の準備2 オリジンには org.salvatore.jpを新設し、cdn.salvatore.jpで準備 画像やSWFなどを逃がすためだけに最初は考えていた… 画像や などを逃がすためだけ 最初は考 た オリジン指定 CloudFront org.salvatore.jp cdn.salvatore.jp
  • 9.
  • 10.
    クライアントからの返事 ⾮常に早く感動しました。早すぎます! なんとかこのクオリティ(スピード)状態で、放送迎えられないでしょうか… CloudFront(cdn)⼤絶賛 だけど、ここで問題発覚…
  • 11.
    問題点が⼆つ 1.サイト内にSWFがあり、データ通信していた 1 サイト内にSWFがあり デ タ通信していた 2. ⼀部、問い合わせフォームなどでプログラム(CGI)が動作 (CloudFrontではプログラムは動かない)
  • 12.
    SWF通信問題点解決 詳しく調べてみると、静的なXMLを読み込んでいることが判明 そのXMLをWEBで拾える場所にあるので、CDNにキャッシュされているため問題なくSWFが動いていた EC2 CloudFront SWF SWF XML XML CloudFrontは、XMLも当然余裕でキャッシュしてくれる!
  • 13.
    プログラム(CGI)解決 問い合わせフォームのみだったので、cgi.salvatore.jpなどの 問い合わせフォ ムのみだったので cgi sal ato e jpなどの VirtualHostを新設し、プログラムはそのURLで動作させて解決。 (ちょっとだけ⼒技) www.salvatore.jp www salvatore jp もしくは cgi. salvatore.jp cdn. salvatore.jp 問い合わせリンク 問い合わせフォームCGI
  • 14.
    最終イメージ cgi.salvatore.jp www.salvatore.jp(cdn.salvatore.jp)
  • 15.
    問題は解決し放送⽇を迎える cdn.salvatore.jpで既にテスト済みなので、切り替えはDNSのみ cdn salvatore jpで既にテスト済みなので 切り替えはDNSのみ www IN A xxx.xxx.xxx.xxx www IN CNAME cdn.salvatore.jp. これでwww.salvatore.jpを完全にCloudFront化して放送に臨む
  • 16.
    放送時間 今までにない展開 余裕過ぎて、落ちることなく無事終了 余裕過ぎて 落ちることなく無事終了 1⽇後、DNSを元に戻す
  • 17.
    7⽉26⽇の2回⽬の放送 cdn.salvatore.jpへwwwのDNSを変更して放送を待つのみ 監視すら忘れるくらいの展開 余裕過ぎて、落ちることなく無事終了
  • 18.
    まとめ 1. 負荷対策の究極は、やはりCloudFront完全ホスティング! EC2を何台増やしたところでキャッシュには勝てない。 EC2を何台増やしたところでキャッシ には勝てない まさしく最強!! ということである。 2. FLASHやプログラムなどあっても やり⽅によってはCloudFrontにHTMLごともっていけるので 諦めないことが重要!
  • 19.