
目次
はじめに
本記事では、エッジネットワークサービスであるAmazon CloudFront(以降、CloudFront)のユースケースをご紹介します。CloudFrontでAWSの構成を検討されている方は是非ご参考にお願いします。
エッジネットワークサービスの特徴
エッジネットワークとは
インターネットの利用区間を短くしより長い区間をAWSグローバルネットワークで利用することで、より高速で安定したユーザー体験を提供します。CloudFrontは、エッジネットワークサービスの一つです。

Amazon CloudFront特徴
- コンテンツ配信ネットワーク(CDN)として機能します。
- 主に静的および動的なウェブコンテンツ(画像、スタイルシート、JavaScriptファイルなど)を高速かつ効率的に配信します。
- エッジロケーションを利用して世界中のユーザーにコンテンツを提供します。
- ユーザーのリクエストは最適なエッジロケーションにルーティングされ、最小のレイテンシーでコンテンツが配信されます。
- オリジン(例:Amazon S3バケット、HTTPサーバー)からコンテンツを取得し、キャッシュして配信します。
- 高速かつ信頼性の向上を実現します。
CloudFrontユースケースのご紹介
1.静的ウェブサイトのコンテンツ配信の加速
世界中からアクセスされる静的コンテンツをEdge LocationやRegional Edge Cacheの利点を活用し、静的ウェブサイトのコンテンツ配信を高速化します。
Edge LocationやRegional Edge Cacheの動作について
- 1.
Edge LocationにCacheが残っている場合はそこからユーザーに返す
- 2.
Edge LocationにCacheが残っていない場合はRegional Edge Cacheからユーザーに返す
- 3.
Edge LocationとRegional Edge CacheにCacheが残ってない場合にオリジンからユーザーに返す

2.オンデマンドビデオおよびライブストリーミングビデオ配信
ビデオオンデマンド(VOD)ストリーミングの場合、CloudFrontを使用してHLS等の一般的な形式で任意のデバイスにストリーミングができます。
動画配信の流れについて
- 1.
アプリケーションからS3バケットに動画ファイルをアップロード
- 2.
AWS Elemental MediaConvertによってHLSなどに変換
- 3.
配信用のS3バケットに保存
- 4.
CloudFrontディストリビューションから再生アプリケーションやデバイスへ配信

3.フィールドレベル暗号化
フィールド固有の暗号化キー(お客様指定)を使用して、POSTリクエストがお客様のオリジンに転送される前に HTTPS内で機密データをさらに暗号化します。クレジットカード番号情報をユーザー情報と併せてサーバーに送る場合、データベース内に生のままで保存したくない場合に使用されます。

4.エッジのカスタマイズ
サーバーレスコードをエッジで実行すると、待ち時間を短縮しながらコンテンツとユーザーのエクスペリエンスをカスタマイズできます。たとえば、オリジンサーバーがメンテナンスのために停止しているときにカスタムエラーメッセージを返すことができるため、ユーザーには一般的な HTTPエラーメッセージが表示されません。 また、CloudFront がリクエストをオリジンに転送する前に、ユーザーを承認し、コンテンツへのアクセスを制御する関数を使用することもできます。

5.Lambda@Edgeカスタマイズを使用したプライベートコンテンツの供給
オリジンサーバー上にBasic認証を構築することも可能ですが、CloudFrontとLambda@Edgeを使用することでBasic認証をかけてサイトの閲覧者を制限しプライベートコンテンツを提供することが可能です。

6.アプリケーション保護を追加
AWS Shield Advanced は、Network ACL(NACL)から推測されるアプリケーションコンテキストを使用して、望ましくないトラフィックがさらにアップストリームするのをブロックします。これにより、ソースにより近い障害を隔離でき、正当なエンドユーザーへの影響が最小限に抑えられます。
AWS Shield Advanced は自動DDoS軽減機能により、既知のDDoSソースからのリクエストの量を制限し、ディストリビューションに関連付けられた AWS WAFウェブACLでレートベースのルールを維持します。さらに、AWS Shield Advanced は、アプリケーションのヘルスに影響を及ぼすイベントを検出すると、ウェブACLの緩和ルールを自動的に作成、テスト、および管理します。
ウェブアプリケーションレイヤーリクエストのフラッドに対する保護を提供します。AWS WAFウェブACLで設定するレートベースのルールは、ルールで許可されているよりも多くのリクエストを送信しているときに、ソースIPをブロックします。

まとめ
AWSが紹介ユースケースについてまとめてみました。CloudFrontは、Webコンテンツの配信を安全に高速化できるサービスとなっております。色々なユースケースがあるためお客様のご要望に沿った事項を検討する必要があります。当社では構成のポイントについて、お客様に詳細なヒアリングを行い、お客様の理解が深まるようご説明させていただきます。そのうえでお客様に最適なAWS環境の導入支援を行いますので、ご興味がある方はぜひお気軽にご相談ください。
参考文献
AWS Global Accelerator のよくある質問
https://aws.amazon.com/jp/global-accelerator/faqs/
CloudFrontユースケース
https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/IntroductionUseCases.html
作者プロフィール
名前 | 手塚 |
担当のAWS業務 | 営業支援、ソリューションアーキテクト |
AWSの持っている資格 | Solutions Architect - Professional Network - Specialty |
好きなAWSのサービス | Amazon FSx、Amazon CloudWatch |
趣味 | レザークラフト |
ひとこと | とりあえず、やってみる! |
