AWS CLOUDFRONTとは? 知っておくべきこと
このような高速で瞬時につながれる現代において、配信の速さは、企業が繁栄し、競合他社を凌駕するための鍵となります。そのためのツールとしてAWS CloudFrontがあります。
AWS CloudFrontは、レイテンシー(データの遅延)を抑えてコンテンツ転送の流れを単純化するだけでなく、プライバシーの安全性も高いため、企業はより注意を払うことを強く推奨されています。基本的に、AWS CloudFrontは、高いデータ転送速度で時間効率の良いコンテンツ配信を実行します。全体として、AWS CloudFrontは、コンテンツ配信における利用可能なアクセシビリティ、信頼性、および保護を強化し保証します。
本記事では、必要な知識を提供するために、主要な知識である概念的な定義、操作プロセス、長所、価格帯を包括的にカバーしています。。
Table of Contents
CloudFront.Netとは?
当然ながら、Amazon CloudFrontはエンドユーザーにとって最も高機能なコンテンツベースの配信サービスの1つであり、世界規模の配信でプレミアムなユーザー体験サービスを提供しています。
Cloudfront.netは、Amazon.comの本拠地であるAmazon Web Servicesに属し、コンテンツ配信ネットワーク(Content Delivery Network_CDN)、インターネットを介してコンピュータマシン間で相互接続されたネットワークとして構成されています。グローバルに分散されたネットワークであるAmazon CloudFrontは、PoP(Point of Presence)やAWSのリージョナルセンター(キャッシュ)からなるエッジロケーションにより、コンテンツを迅速かつ安全に目的地に届けます。
配信されるコンテンツパッケージは、ウェブサイト、API、画像、動画、アプリなど、静的および動的なスペクトルで異なる場合があります。さらに、AWS CloudFrontは、カスタマイズの選択肢も提供しています。その結果、サービス利用者は、コンテンツ配信の速度、料金、セキュリティの調整と更新を積極的に行うことができます。
Amazon CloudFrontは、ビデオストリーミングにRTMPプロトコルをウェブコンテンツにHTTPまたはHTTPSを使用します。
AWS CloudFrontの仕組み
AWS CloudFrontの仕組みは、以下のようにステップバイステップで確認することができます。以下は、AWS CloudFrontがコンテンツを配信する方法について説明します。
コンテンツが配信される前に、コンテンツの種類や使用するアプリケーションに応じて、AWS CloudFrontを事前に設定する必要があります。
- ステップ1では、ユーザがWebサイトにアクセスし、ファイル(画像ファイル)をダウンロードするためのオブジェクト(HTMLファイル、画像ファイルなど)を探し求める最初のステップを踏みます。
ステップ1
- ステップ2では、DNSはCloudFrontを通じて最も隣接するエッジロケーションにリクエストをルーティングし、ユーザーにサービスを提供します。
ステップ2
- ステップ3では、CloudFrontはエッジロケーションで要求されたキャッシュファイルの検索を開始します。
ここで、以下のシナリオは2つの異なる方向性を持つことができます。
- 1. 仮に、要求されたファイルが利用可能であるとします。一旦、CloudFrontはエッジロケーションから低レイテンシーでそのファイルを要求者に送り返します。
キャッシュファイル – CloudFront
- 2. 残念ながら、要求されたオブジェクトが最も近いエッジロケーションで見つからない場合、オリジンサーバーはフェッチ援助を提供しながらリクエストを受け付けます。CloudFrontはリクエストを詳細と比較し、一致するサーバーと共有します。
ステップ4
- 次に、オリジンサーバーは、見つかったファイルをユーザーの最寄りのエッジロケーションに送り返します。
ステップ5
- 最後に、エッジロケーションがオブジェクトを受信すると、すぐにユーザーと共有し、将来のリクエストに備えてエッジロケーションに保存します。
CloudFrontのユースケース
AWS CloudFrontは、様々なジョブを実行するために使用することができ、そのようなコンテンツ配信ネットワークは、適切に膨大なデータを配信することができます。ビデオストリーミング、大きなファイルやソフトウェアのダウンロード、および高速なウェブアクセスを含みます。
以下にいくつかのユースケースをご紹介します。
静的アセットキャッシング
AWS CloudFrontバックボーンの利点は、お客様のアプリケーションに役立ち、エンドユーザーに迅速かつ安全であり、信頼できるユーザー体験を提供することができます。
静的アセットキャッシング
例えば、Amazon S3 Bucketsは、シンプルなストレージと静的コンテンツの配信に使用することができます。CloudFrontとともに、Origin Access Identity (OAI)は、S3コンテンツへのアクセスを制限するのに役立ちます。
ダイナミックなライブストリーミング&VOD
ライブストリーミング
録画したイベントも、リアルタイムのライブイベントも、グローバルにストリーミング配信して視聴することが可能です。
例:MPEG DASH、Apple HLS、Microsoft Smooth Streaming、CMAFの各フォーマットを使用することができます。
ライブストリーミングの場合、メディアフラグメントはエッジに配置されるため、それを順番に配信する複数のリクエストを組み合わせることで、オリジンサーバーの負荷を軽減することができます。
高速な静的コンテンツ配信
スタイルシート、画像、JavaScriptなどのファイルを、AWS S3バケットのアクセスコントロールコマンドを使って、リクエスト者に迅速、安全、確実に配信することができます。このような静的オブジェクトの配信は、基本的にAWSのエッジネットワークとそのエッジロケーションによって支援されます。
セキュアデリバリーのため特定のフィールドを暗号化
フィールドレベルで暗号化を実装するための公開鍵は、特定のデータを保護することができます。また、CloudFrontでHTTPSを設定することで、オリジンサーバーのセキュリティを確保し、特定のアプリケーションのアクセスにのみ限定することができます。
エッジの位置のカスタマイズ
AWS CloudFrontのサーバーレス運用コードにより、低レイテンシーを実現することができます。また、コンテンツリクエストをオリジンサーバーに向ける前に、ユーザーの認証を行うことができます。最後に、Lambda Edgeは様々なコンテンツのカスタマイズを提供します。
例えば、連絡先のサーバーにメンテナンス障害が発生している場合、AWS CloudFrontはカスタムエラーメッセージを返します。そうでない場合は、HTTPSのエラーメッセージが表示さ
AWS CloudFrontの特徴とメリット
AWS CloudFrontは、グローバルエッジネットワーク、エッジコンピューティング、セキュリティ強化、DevOpsフレンドリー、リアルタイムメトリクス、可用性向上などの強力な機能を備えており、ユーザーに多大な利益をもたらします。
グローバルエッジネットワーク
グローバルエッジネットワーク
グローバルエッジネットワークは、地域の中層キャッシュの13のAWSリージョンにまたがる410以上のグローバルベースのPoPからなるAWS CloudFrontの世界規模のコンテンツ配信エッジネットワークです。このバックボーンは、すべてのエッジロケーションとAWSリージョンを接続する、このサービスの生命線です。
提供されるメリット:
- グローバル:信頼性が高く、遅延がなく、安全で、高出力の接続ネットワークを確保する
- 高速:コンテンツが最も近いエッジロケーションにプリキャッシュされるAmazon CloudFrontは、高いデータ転送速度で光速のスピード配信を実現する
- アプリケーションの可用性
エッジコンピューティング
CloudFront機能とAWS Lambda@edgeは、プログラマブルでセキュアなエッジコンピューティングを実現するための重要なドライバーです。
まず、CloudFrontは、大規模でレイテンシーに敏感なコンテンツ配信プロセスを簡素化し、スケーリングにも優れています。
次に、AWS Lambdaは、基本的に汎用のサーバーレスコンピューティング手法です。カスタマイズのほか、コンピューティングの負荷が高い手順を簡略化することもできます。
提供されるメリット:
- 数百万件/秒のリクエストを同時かつスピーディーに処理できる
- コンテンツ配信プロセスのカスタマイズが可能
高いセキュリティ
AWS Shield、AWS Route S3、AWS Web Application Firewallなどの複数のAWSサービスを簡単に導入でき、強力でスケーラブル、かつ信頼性の高いセキュリティレイヤーで、AWS CloudFrontのグローバルエッジネットワークを保護します。
コンテンツ・プライバシー機能は、より高いセキュリティを提供します。その結果、DDoSやその他の可能性のあるセキュリティ攻撃を防ぐことができます。さらに、AWS CloudFrontは、コンテンツ、アプリケーション、API配信のための高度なトランスポートセキュリティレイヤーを顧客に提供します。このプロトコルにより、通信の暗号化とセキュリティが可能になります。
高いセキュリティ
提供されるメリット:
- AWSがサポートするすべてのサービスを、コンテンツ/アプリケーションのCloudFrontに統合することで、エクスペリエンスを高めることができます。
リアルタイムのメトリックスとロギング
AWS CloudFrontは、単一のインスタンスに対して6つの運用指標を生成します。AWSで作られた CloudWatchの補助です。AWS CloudFrontは、標準とリアルタイムの2種類のログを提示します。
- 標準のログ:AWS S3バケットに配信されます。
- リアルタイムのログ:Kinesisの選択したデータストリームに配信されます。
また、リアルタイムログのサンプリングレートを任意に調整することができます。
提供されるメリット:
- CloudFrontコンソールでの表示グラフのセット
- コンソール上、またはAPI経由でクリック数以内で粒度の細かいメトリクスが利用可能
DevOpsフレンドリー
本格的なAPIのサポートにより、AWS CloudFrontインスタンスを迅速に作成、維持、設定することができます。AWS Cloudformation、Code commit、Codedeploy、開発者向けAWS SDKなどのシームレスなアクセスツールにより、インスタンスアクションのカスタマイズ(圧縮モードの決定、データのキャッシュ&コミット)が可能です。
提供されるメリット:
- 無効化かつ高速伝送
- 国レベルのユーザーの所在地を見つける
- ユーザーフレンドリーで生産性を高める
- APIやDevOpsツールの本格的な機能
- エッジカスタマイズされた動作
費用対効果が高い
以前は、企業が所有するコンテンツデリバリーが珍しく、希少な時代もありました。
ネットワークは、その膨大なコストと高度なITインフラのために、利用することができませんでした。
しかし、AWS CloudFrontは、低レイテンシーを実現し、ユーザーのデータ要求に応えます。
ネットワークトラフィックが少なく、かつタイムリーなデータアクセスが可能です。しかし、そのすべてが最小限の費用で運用できるため、普及が進んでいます。
提供されるメリット:
- すべての利用クラスに対応した複数の料金体系
- オリジン取得のためのAWSクラウドサービス間での無料データ転送
- オンデマンドのデータ転送にのみ課金されるリーズナブルな価格設定
- オリジンの運用経費を削減
アベイラビリティ
AWS CloudFrontはエッジロケーションとAWSリージョナルリージョンのネットワークを使用してコンテンツをキャッシュしているため、リクエストに応じてコンテンツを取得し、そこからユーザーに配信することができます。
提供されるメリット:
- オリジンサーバーのアプリケーションの可用性を大幅に増幅可能
継続的なデプロイメント
最後に、AWS CloudFrontの特徴として、Continuous Deploymentが挙げられる。
CI/CD(継続的インテグレーションとデリバリー)パイプラインを簡単に実現するために、ブルーとグリーンという2つの分離された同一の環境をデプロイすることができます。このような統合により、ドメインネームシステム(DNS)の変更なしに、徐々にロールアウトをリリースすることができます。
提供されるメリット:
- 高いセキュリティで展開
- 視聴者は均一で一貫した体験を得ることができる
- 変更のパフォーマンスは、標準およびリアルタイムログの監視で比較することができ、否定的な変更に接触して簡単に元に戻すことができる
- 後方互換性の調査、展開後の検証、少ない視聴者数で新機能を検証する
AWS CloudFrontを利用している企業
AWS CloudFrontが提供する紛れもなく魅力的なメリットをさらに証明するために、以下にAWS CloudFrontを自社サービスに導入している鋭敏で先見性のある企業をリストアップします。
CloudFrontを用いて、Spotifyは新機能のアップデートやアクセスした楽曲を即座に配信しています。
同社は、15ペタバイトのオーディオとビデオのグローバル配信を行うために、このサービスを利用しています。
ここでは、Sky newsがCloudFrontを使用して、コンテンツを統一し、より速く流通させるために使用しています。
ここでも、CloudFrontのサービスは、コンテンツ配信のレイテンシーとパフォーマンスを向上させます。
WordPressは、より高速なデータ転送速度で、低遅延かつコミットメントなしでコンテンツを配信することができ、より熱心な訪問者と販売量の増加のために全体的な訪問者体験を強化します。
AWS CloudFrontの価格帯
読者の皆さんがこのテーマを十分に理解したところで、AWS CloudFrontサービスのコストも確認しておきましょう。
Amazon CloudFrontはオンデマンドで提供されるため、多くの料金体系が用意されており、特に7つの料金体系は、各顧客の個別で多様な利用目的に合わせて設定されています。
フリーティア
- この階層では、お客様は最大1TBのデータを転送することができます。また、HTTPおよびHTTPSのリクエストは10,000,000回、関数呼び出しは2,000,000回まで可能です。。
- 無料ユーザーには、毎月計算されたユーザースキームがあり、手つかずのデータが翌月に拡張されないことが条件となります。
オンデマンドプライシング
- この価格帯では、すべてのHTTPおよびHTTPSリクエストに課金されます。
- なお、10TB/月以上のご利用のお客様には、割引が適用されます。料金設定は、地域によって異なります。
セービングバンドル
- この価格設定により、1年間のコミットメントで最大30%のコスト削減が可能です。
- さらに、AWS Web Application Firewall(WAF)の利用が無料です。
- 重要なのは、契約データ使用量の10%までWAFを使用できるという点です。
カスタムプライシング
- お客様は最低でも10TB/月のデータ転送を12ヶ月間約束する必要があります。
- 割引率は、お客様のデータ転送量に応じて変動します。
ファンクションプライシング
- CloudFrontは、すべての機能でまとめて行われたすべての呼び出しを基準として、ユーザーに課金します。
- 呼び出しは通常、CloudFrontの機能によるイベントに応答して行われ、100万回の呼び出しごとに0.10ドルを課金します。
リアルタイムのログリクエストの価格
- この階層は、CloudFrontによって作成されたログラインの量によって決定します。
- 顧客によって生成された1,000,000のログラインごとに0.01ドルの費用がかかります。
カスタムSSL証明書
- 本サービスは、カスタムSSL証明書連携インスタンスごとに月額600ドルの費用が発生します。
重要なポイントと最後の言葉
簡単にまとめると、Amazon CloudFrontは、Amazon Web Servicesの運営下にあるコンテンツデリバリーネットワーク(Amazon CDN)です。
このサービスは、基本的に静的および動的なWebコンテンツ(.html、.css、.js、画像ファイル)をエンドユーザーの要求元へ安全かつ低遅延でコンテンツ配信することを高速化し、それによってエンドユーザーの体験を最適化します。また、その運用プロセスや機能、関連するメリット、一般的な使用例や自社においての使用例、価格体系などを網羅したマニュアルハンドブックも掲載されています。
AWS CloudFrontに関してわからない点や困っていることがある企業様は、CMC Japanにご相談ください。CMC Japanは、30年の開発ノウハウと2200人以上のIT専門家をもって、お客様のプロジェクトをお手伝いさせていただきます。お気軽にお問い合わせください。