CloudFrontで負荷分散

2016/01/14 AWS, 技術系 投稿者:千本木

恒例のAWSシリーズです。今回取り上げるのはCloudFrontです。

CloudFrontって何?

CloudFrontはAWSで提供されるCDNのサービスです。

CDNはContents Delivery Networkの略で、画像や動画等のHTMLファイル等に比べてファイルサイズが大きなコンテンツを分散させ、スムーズに配信させるネットワークのことです。

ちなみにCDNはakamaiとかが有名ですね。

HTMLファイルやCSS等のテキスト系のコンテンツはは今まで通りのサーバで運用し画像を別サーバに移すことで、サーバ自体の負荷が下がるほか、画像分のApacheのプロセス数も減るので理論的には同時アクセス数も増えることになります。

CloudFrontの特徴

CloudFrontの特徴は公式ページによると以下のようになっています。

  1. 表示を高速化!
  2. 大量アクセスに対応!
  3. サーバー引っ越し不要!
  4. すぐはじめられて低価格

ちなみにサーバ環境自体はAWSを使用しているかどうかの制限はないので、自社サーバ等で表示速度に不満がある場合には検討してみても良いのではないでしょうか。

CloudFrontを使ってみる

対象バーチャルドメインの準備(AWS以外のサーバでもOK)

ではCloudFrontを実際に使ってみたいと思います。

まず、当社のWEBサーバ内にawstest.nedia.ne.jpというバーチャルドメインを作成しました。当社ホームページのTOPページのみ丸ごとコピーしたものです。

cf01

もちろんEC2でApacheを立ち上げて使ってもOKですし、以前ご紹介したようにS3で公開したページでもOKです。

CloudFrontの設定

CloudFrontにアクセスして設定を進めます。Create Distributionをクリック。

cf02

次の画面ではWebかRTMPかを選択しますが通常はWebを指定することになると思います。なおRTMPは動画等のストリーミング配信で使用されるものです。

cf03

CroudFrontのオリジンサーバ(データを格納する大元のサーバ)の設定です。

cf04
  • Origin Domain Name:ここで指定したサーバが大元のデータを格納するサーバとなります。
  • Origin Path:Origin Domain Nameで指定したサーバ内で更にパスを指定するときに使用します。今回は空欄。
  • Origin ID:Origin Domain Nameを入力すると自動的に入力されます。
  • Origin Protocol Policy:オリジンサーバのプロトコル指定。今回はHTTPのみなのでHTTP Onlyを選択。
  • HTTP Port:HTTPポート。通常は80。
  • HTTPS Port:HTTPSポート。通常は443。

以降はデフォルトのまま設定しました。

次のページに進むと10分ほどで設定が完了します。Domain Nameのところにあるのが今回CDNとして使用するドメイン名になります。

cf05

動作の確認

これでWebページが丸ごとCDNにコピーされました。

例えば
http://awstest.nedia.ne.jp/img/bnr_blog.png
で表示されている画像が
http://d4u76n627nig5.cloudfront.net/img/bnr_blog.png
で表示できればOKとなります。

cf06

無事表示できましたね。

どれくらいのサーバで負荷分散しているのか

試しにNSLOOKUPコマンドで指定されたドメイン名を正引きしてみたところ、NSLOOKUPを行う度に表示されるIPアドレスが変わるので、多くのサーバが使われているんだなぁということが分かります。

cf07

最後にHTMLソースで画像のパスをCloudFront指定のドメイン名に変更すれば完了です。

まとめ

サーバ管理者としての視点から考えると、やはりサーバの負荷が減るので健全なサーバ運用が期待できるのではないかと感じました。

特に画像系のコンテンツが大量にあるとI/Oで足を引っ張られてしまうこともあるので、高負荷なサイトでは導入検討をしても良いのではないかと思います。

また、実は検証段階でEC2等で運用しているドメインでないとCloudFrontは運用できないという先入観がありましたが、実際に弊社管理下のサーバでも運用ができることが分かったので、導入の敷居は低いのではないかと思いました。

CloudFrontはまだ終わりません。次回は今回設定したCloudFrontにWAFを設定したいと思います。

カレンダー

      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728     
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
1234567
891011121314
15161718192021
22232425262728
29      
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
      1
2345678
9101112131415
16171819202122
232425262728 
       
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
2425262728  
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       

カテゴリー

PRODUCE ネディアプロデュース
群馬データセンター
群馬の法人ITサポートサービス Wide Net[ワイドネット]
ワイドオフィス
イヤホンのブランドでハイクラスを誇る | n+um(エニューム)