Amazon CloudFrontとは?表示速度改善の方法や導入手順、料金について
静的・動的コンテンツを高速かつ安全に配信するためのソリューションとして、CDNを導入する企業が増えています。さまざまなサービスが登場していますが、今回はAWSのCDNであるAmazon CloudFrontについて、概要や活用方法、具体的な導入手順などを解説します。
目次
Amazon CloudFrontとは
引用元:https://aws.amazon.com/jp/cloudfront/
Amazon CloudFrontとは静的および動的なインターネットコンテンツ配信を高速化するAWSのCDN(コンテンツデリバリネットワーク)サービスです。
エッジロケーションという世界的ネットワークを経由してコンテンツを配信するため、レイテンシー(遅延時間)を最小限におさえ、高速かつ安全にユーザーへコンテンツを提供することができます。Amazon Prime VideoやHuluを始め、国内外の大手企業が活用しています。
Amazon CloudFrontの構造
引用元:https://aws.amazon.com/jp/cloudfront/media/
まずはAmazon CloudFrontの構造について見ていきましょう。
Amazon CloudFrontは、オリジンサーバーとエッジロケーションの2つの要素で構成されています。
オリジンサーバー
オリジンサーバーとは、ウェブサイトのコンテンツが置かれたサーバーのことです。Amazon EC2やS3のほか、オンプレミスのサーバーを指定することもできます。
はじめてサイトへ訪問した時、もしくはキャッシュが切れた時にオリジンサーバーからWebコンテンツを取得しますが、その他はキャッシュサーバーと呼ばれるデータを一時的に保存しているサーバーから取得します。
キャッシュサーバーを利用することでユーザーへのWebページ表示の遅延やアクセス集中によるサーバーダウンを避けることができます。
エッジロケーション
エッジロケーションとは、AWSのコンテンツを配信するために世界中に分散されたネットワーク拠点のことです。記事公開時点では世界33カ所のリージョンに105カ所のアベイラビリティーゾーンがあり、エッジロケーションは400カ所以上も配置されています。
Amazon CloudFrontを利用するメリット
引用元:https://aws.amazon.com/jp/getting-started/hands-on/deliver-content-faster/
Amazon CloudFrontを利用するメリットには、以下の4点が挙げられます。
- コンテンツの高速配信が実現
- サーバの負荷軽減
- セキュリティの強化
- 初期コストを抑えらえる
それぞれについて解説します。
コンテンツの高速配信が実現
通常、国内のサーバーから海外へコンテンツを配信すると、レイテンシーが高くなるのが一般的です。しかしAmazon CloudFrontでは、ユーザーからリクエストがあった際、そのユーザーからもっとも近いエッジロケーションから自動的にコンテンツを配信します。そのため、レイテンシーを最小限に抑え、コンテンツ配信を高速化することが可能です。当然ながらエッジロケーションが多ければ多いほどレイテンシーを抑えられるため、Amazon CloudFrontでは現在もエッジロケーションの追加に取り組んでいます。
サーバの負荷軽減
オリジンサーバーが直接応答するリクエストの数が減少することで、オリジンサーバーの負荷を減らすことができる点もメリットの1つです。Webサイトのアクセス数向上を目的にさまざまなキャンペーンを実施する際、一時的であれ予測を上回るアクセス増によりサーバーやネットワークが高負荷状態になることは珍しくありません。Amazon CloudFrontを利用することで、このようなリスクを予防することが可能です。
セキュリティの強化
Amazon CloudFrontはクラウドセキュリティを最優先課題とし、安全なサービスの提供に務めています。具体的にはAWS Shield、AWS WAF(Web Application Firewall)といったセキュリティ機能との連携により、DDoS攻撃やそのほかの脅威からの保護を強化できます。
初期コストを抑えらえる
Amazon CloudFrontは利用する地域によって単価が異なりますが月額基本料はなく、使用した分だけを支払う従量課金制のため、初期コストを抑えることができます。トラフィックの量や使用する機能に応じて柔軟にコスト管理をおこなえるため、導入しやすいのも利点といえます。
Amazon CloudFront の料金体系
Amazon CloudFrontはHTTPまたはHTTPSリクエストに加えて、エッジロケーションからのデータ転送の料金を課金します。また以下の内容は無料利用枠に含まれています。
- 1 カ月あたり 1TBのインターネットへのデータ転送
- 1 カ月あたり 10,000,000 件のHTTPまたはHTTPSリクエスト
- 1 カ月あたり 200万件のCloudFront関数呼び出し
- 1 カ月あたり 2,000,000回のCloudFront KeyValueStoreの読み取り
- 無料のSSL証明書
- 制限なし、すべての機能が利用可能
なおAWSリソース(S3やEC2など)からAmazon CloudFront エッジロケーションへのデータ転送には料金は発生しません。
Amazon CloudFrontのユースケース
引用元:https://aws.amazon.com/jp/getting-started/hands-on/deliver-content-faster/
Amazon CloudFrontのユースケースは、おもに以下の2種類です。
- 静的Webサイトのコンテンツ配信の高速化
- オンデマンドビデオおよびライブストリーミングビデオの配信
それぞれについて解説します。
静的Webサイトのコンテンツ配信の高速化
Amazon CloudFrontはエッジロケーションの仕組みによりユーザーにもっとも近いサーバーからコンテンツが配信されるため、静的Webサイトのコンテンツ配信を高速化できます。サーバーは自動的に選択されるので、特段の設定作業は必要ありません。また訪問者の急増にともないトラフィック量が増えたとしても、Amazon CloudFrontを利用していればトラブルの心配なく、スムーズに配信されるでしょう。
オンデマンドビデオおよびライブストリーミングビデオの配信
昨今動画配信は世界的に需要の高い市場であり、顧客体験やWebサイトの評価を高めるためにユーザーのストレスを軽減することが最重要タスクとなっています。Amazon CloudFrontはオンデマンドビデオ (VOD)やライブストリーミングビデオを始め、あらゆる動画ファイルの形式(MPEG DASH、Apple HLS、Microsoft Smooth Streaming、CMAF など)に対応しており、優れた環境下で世界中のユーザーに快適な視聴を提供することができます。
Amazon S3との組み合わせがおすすめ
引用元:https://aws.amazon.com/jp/s3/
Amazon CloudFrontはAWSで汎用的に利用されているAmazon S3やAmazon EC2などと統合された環境で利用できるため、可用性の高さが特徴です。またAWSのストレージサービスを利用するとエッジロケーションへのデータ転送料が無料になることもあり、S3と組み合わせて利用することをおすすめします。
その理由はまず第一に、S3がEC2のブロックストレージと比べて約5倍も大きな容量を有している点が挙げられます。ストレージ料金のみを比較した場合、EC2よりS3の方がコストを抑えられるほか、動的コンテンツはEC2に、静的コンテンツはS3に格納するなど、コンテンツ内容に応じて利用することでも費用を抑えられます。
Amazon CloudFrontの導入方法
引用元:https://aws.amazon.com/jp/getting-started/hands-on/deliver-content-faster/
ここでは、S3バケットを指定して静的コンテンツを配信する際の手順を解説します。
オリジンサーバーの指定
- AWSマネジメントコンソールへログインする ※AWSアカウントが必要
- 「サービスメニュー」>「ストレージ」>「S3」を選択する
- 新規の「バケットを作成」をクリックする
- バケット名を入力し、「バケットを作成」をクリックする
コンテンツのアップロード
- 使用するバケット名をクリックし、オブジェクトをアップロードする
- オブジェクトはHTTP経由で提供できるものであれば、ウェブページ、画像、メディアファイルなど何でもOK
- バケット内のコンテンツを「読み取り可能にして公開する」に設定すればアクセス可能になります
ディストリビューションの作成
- AWSマネジメントコンソールの「サービスメニュー」>「CloudFront」を選択する
- 「ディストリビューションを作成」をクリックする
- オリジンのドメイン名を入力して、「ディストリビューションを作成」をクリックする ※必要があればそのほかの設定オプションも
- ステータス値が、Inprogress(進行中)からDeployes(デプロイ中)に変わっていれば作成成功
- 新しいディストリビューションにドメイン名を割り当てる
バケットポリシーの適用
- 作成したディストリビューションのオリジンを選択し、「編集」をクリックする
- 「ポリシーをコピー」をクリックする
- 「S3バケットアクセス許可に移動」からS3のバケットポリシーのリンクに移動する
- 「編集」に進み、先ほどコピーしたポリシーをペーストし、「変更を保存」をクリックする
CloudFrontの画面からドメイン名をコピーし、新規タブでサイトが確認できれば成功です。
まとめ:Amazon CloudFrontは可用性の高いCDNサービス
引用元:https://aws.amazon.com/jp/getting-started/hands-on/deliver-content-faster/
Amazon CloudFrontは堅牢なセキュリティ環境下でコンテンツを高速配信できるCDNサービスです。サーバーから直接コンテンツをダウンロードするよりもパフォーマンスを向上させることができるほか、AWSのストレージサービスと組み合わせることでコスト削減も実現します。
ギャプライズはWebサイトの表示速度改善やパフォーマンス向上に関するノウハウや実績を豊富に持ち合わせており、企業の課題に合わせたさまざまなソリューションを提案しています。現在インターネットコンテンツ配信について何らかの疑問や課題をお持ちでしたら、ぜひ一度弊社へお問い合わせください。
MarTechLab編集部
このブログでは、ABテスト、サイト改善、UI/UXデザイン、広告最適化、インフルエンサーマーケティングなど、多岐にわたるトピックを取り扱っています。また、業界の専門家にインタビューを行い、実際の事例や成功事例を紹介することで、読者に有益なインサイトとアイデアを提供しています。