記事の背景
AWSのグローバルネットワーキングの話が出てくるときに毎度ややこしいな~と思うので、一回ちゃんとまとめたいという願望です(笑)
それぞれのサービス概要
AWSのグローバルネットワークのサービスといえばCloudFront、Route53、Global Acceleratorかなと思うので、
それぞれ概要をまとめます。
CloudFront
Amazon CloudFront は、ユーザーへの静的および動的なウェブコンテンツ (.html、.css、.js、イメージファイルなど) の配信を高速化するウェブサービスです。
そもそもこれらのサービスを使わずとも、EC2インスタンスなりS3なりにURL使ってアクセスすりゃいいんじゃないの?って思われる方もいるかもしれません。
しかし、このようにすると、裏では複数のネットワークを経由していて、通信速度はあまりよくないです。
そこで、AWSが所有するネットワークを使用してルーティングすることで、複数のネットワークを経由することなく通信を行い、通信速度を向上させます。
さらにエッジロケーションにキャッシュを持たせることで、コンテンツの取得を高速化させます。
Route53(ホストゾーン)
Amazon Route 53 は、可用性と拡張性に優れたドメインネームシステム (DNS) ウェブサービスです。Route 53 を使用すると、ドメイン登録、DNS ルーティング、ヘルスチェックの 3 つの主要な機能を任意の組み合わせで実行できます。
こちらはDNSのサービスですね。
例えば、index.test.comというURLのサイトにアクセスしたいとなったら、そのリクエストを受け取って、対応するIPアドレスを返してくれる。というようなものですね。
Global Accelerator
アマゾン ウェブ サービスのグローバルネットワークインフラを利用して、ユーザーのトラフィックのパフォーマンスを最大 60% 向上させるネットワーキングサービスです。
グローバルなアプリケーションを構築する際に使用されますね。
バックボーン自体はCloudFrontとあまり変わらないんですね
(Global AcceleratorはS3には対応していない)
ユースケース
CloudFrontとGlobal Acceleratorがややこしいので、公式のユースケースを絵にしてみました!
イメージは沸いてきた気がする…!
CloudFront
静的ウェブサイトのコンテンツ配信の加速
オンデマンドビデオおよびライブストリーミングビデオの配信
AmazonCloudFrontとAWSMediaServicesを使用して簡単にビデオ配信、ライブ配信が可能になります。
参考:https://aws.amazon.com/jp/blogs/media/using-amazon-cloudfront-and-aws-media-services/
システム処理全体で特定のフィールドを暗号化する
フィールドレベルの暗号化を行うことで、特定のマイクロサービス(サブシステム)のみが機密情報を復号化することが可能になります。
エッジのカスタマイズ
エッジでサーバーレスコードを実行することで、「オリジンサーバーがダウンしている場合はカスタムエラーページを表示する。」「ユーザー認証を実装する」などが可能となります。
Lambda@Edge カスタマイズを使用したプライベートコンテンツの供給
エッジのカスタマイズを応用して、特定のユーザーにのみ配信することが可能です!
→ 図はエッジのカスタマイズと同じなのでスキップします。
Global Accelerator
アプリケーション使用率の向上のための拡張性
アプリケーションが拡大していくと、管理するIPアドレスとエンドポイントが増えていきますね。Global Acceleratorは2つの静的IPアドレスをエンドポイントと関連付けることで、この問題を解決します!
レイテンシーに敏感なアプリケーション向けのアクセラレーション
ゲームなどの優れたユーザーエクスペリエンスを実現するための、非常に低いレイテンシを提供します。
ディザスタリカバリとマルチリージョンの耐障害性
Global Acceleratorはリージョン間のDRに対応しています。
アプリケーションの保護
・アプリケーションエンドポイントをパブリックネットワークに公開しない!
・デフォルトでAWS Shieldを使用してDDoSをブロック! ←これはCloudFrontも同様ですね!
VoIPまたはオンラインゲームアプリケーションのパフォーマンスを向上
バトルロワイヤルのような複数のプレイヤーが1つのセッションに参加するアプリケーションでレイテンシーを削減します。
参照:https://aws.amazon.com/jp/blogs/news/introducing-aws-global-accelerator-custom-routing-accelerators/
まとめ
今回は個人的に違いをあまり理解できていなかった、AWSのグローバルネットワークについてユースケースで比較してみました。
やはり、文章だけ読んでいると、いまいち理解できないな~ということが多いので、こういった形で図に書き起こしてみるのは理解につながりますね!
(最後の画像は拝借しましたが…)
間違ってるところがあれば、教えてください!
Global Acceleratorなんかはあまり聞かないサービスですが、SAA-C02ではしっかり試験範囲に入っているので、
概要だけでもつかんでおくと、いいですね!