type
status
date
slug
summary
tags
category
icon
password
 

理論

AWS Global Acceleratorとは

AWS Global Accelerator は、アプリケーションのグローバルユーザーに対する低レイテンシー、信頼性、パフォーマンスを向上させるサービスです。

主な特徴:

  1. グローバルエンドポイント管理:
      • 複数のAWSリージョンやリソース(ALB, NLB, EC2インスタンスなど)を単一のエンドポイントで公開。
      • 障害時にはヘルスチェックで健全なエンドポイントへ自動的にトラフィックを切り替え。
  1. AWSバックボーンネットワーク:
      • ユーザーのリクエストを最も近いエッジロケーションからAWSバックボーンネットワーク経由で処理。
      • インターネット経由よりも高速で信頼性の高いルーティング。
  1. DNSベースではない:
      • クライアントからGlobal Acceleratorへの接続は静的IPアドレスを使用するため、DNSキャッシュの影響を受けない。

主なユースケース:

  • グローバルなユーザーに対する高可用性アプリケーション。
  • 複数リージョンを跨ぐ負荷分散やフォールトトレランス。
notion image

CloudFrontとは

Amazon CloudFront は、静的および動的コンテンツを高速に配信するコンテンツデリバリーネットワーク (CDN) です。

主な特徴:

  1. エッジロケーション:
      • 世界中のエッジロケーションを活用して、ユーザーに最も近いポイントからコンテンツを配信。
  1. キャッシュの活用:
      • 静的コンテンツをキャッシュし、オリジンサーバーへの負荷を軽減。
      • 動的コンテンツもリアルタイムで配信可能。
  1. セキュリティ機能:
      • AWS Shield StandardやAWS WAFと統合し、DDoS攻撃や不正アクセスを防止。

主なユースケース:

  • ウェブサイトや動画の配信。
  • APIの高速化。
  • セキュリティ強化(SSL/TLS暗号化やオリジンシールド)。

Route 53のフェイルオーバーとCloudFrontの比較表

特徴
Route 53 フェイルオーバー
CloudFront
主な用途
DNSベースでのリソース切り替え
コンテンツの高速配信
切り替え対象
IPアドレスやDNSレコード
オリジン(ALB, S3バケットなど)
動作方法
ヘルスチェックに基づいてレコードを切り替え
プライマリとセカンダリのオリジングループ
応答速度
DNSキャッシュに依存し、数分かかる場合あり
即時切り替え(オリジングループ機能)
セキュリティ
DNSベースのセキュリティ(簡易的)
AWS WAFやShieldでDDoS対策が可能
主な制約
DNSキャッシュの影響を受ける
配信対象がCloudFront経由である必要

ALBはリージョン間のフォールトオーバーができない理由

ALB(Application Load Balancer)は、単一のAWSリージョン内でトラフィックを分散するためのサービスです。

理由:

  1. リージョンスコープの制限:
      • ALBはリージョン内のリソース(EC2インスタンスやターゲットグループ)のみを管理可能。
  1. グローバルIPアドレスがない:
      • ALBは静的なグローバルIPアドレスを提供しないため、他リージョンとの直接的なトラフィック切り替えができない。
  1. 代替ソリューション:
      • グローバルフォールトオーバーには、AWS Global AcceleratorやCloudFrontを利用してリージョンを跨ぐトラフィック管理を実現。

これらの知識を活用することで、信頼性の高いAWSアーキテクチャを設計できます。

実践

notion image

一問道場

質問 #52
ある会社が AWSクラウド で Web アプリケーションを運用しています。このアプリケーションは、以下の構成になっています:
  • Amazon EC2 インスタンス で作成された動的コンテンツ
  • EC2 インスタンスは Auto Scaling グループ に属しており、Application Load Balancer (ALB) のターゲットグループとして設定されている。
さらに、会社は以下のサービスを使用しています:
  • Amazon CloudFront: アプリケーションをグローバルに配信。CloudFront ディストリビューションは ALB をオリジンとして使用している。
  • Amazon Route 53: DNS 管理に利用。www.example.comA レコード を CloudFront ディストリビューションに設定済み。
課題
ソリューションアーキテクトは、このアプリケーションを 高可用性 かつ フォールトトレラント にするように構成する必要があります。
どのソリューションがこれらの要件を満たしますか?

選択肢
A.
  1. 異なる AWS リージョンに、フルセットのセカンダリアプリケーションデプロイメントを構築する。
  1. Route 53 の A レコードをフェイルオーバーレコードに更新する。
  1. 両方の CloudFront ディストリビューションを値として追加し、Route 53 のヘルスチェックを作成する。
B.
  1. 異なる AWS リージョンに ALB、Auto Scaling グループ、および EC2 インスタンスを構築する。
  1. CloudFront ディストリビューションを更新し、新しい ALB をオリジンとして追加する。
  1. 2 つのオリジンを含むオリジングループを作成し、一方をプライマリ、もう一方をセカンダリとして設定する。
C.
  1. 異なる AWS リージョンに Auto Scaling グループと EC2 インスタンスを構築する。
  1. 新しい Auto Scaling グループのターゲットを ALB に追加する。
  1. ALB にフェイルオーバールーティングアルゴリズムを設定する。
D.
  1. 異なる AWS リージョンに、フルセットのセカンダリアプリケーションデプロイメントを構築する。
  1. 新しい CloudFront ディストリビューションを作成し、新しいアプリケーションセットアップをオリジンとして追加する。
  1. AWS Global Accelerator を作成し、両方の CloudFront ディストリビューションをエンドポイントとして追加する。

どれが適切なソリューションですか?
 

問題の解説

問題概要

この問題では、AWS CloudFrontを利用してアプリケーションをグローバルに配信しつつ、高可用性 (High Availability)フォールトトレランス (Fault Tolerance) を実現する構成を選ぶ必要があります。
以下の要素がポイントです:
  • 高可用性: アプリケーションが障害発生時でも稼働し続けること。
  • フォールトトレランス: 一部のコンポーネントに障害が起きても、全体の機能が停止しない設計。
  • CloudFrontとALBの役割: CloudFrontがユーザーに近いエッジでコンテンツを配信し、ALBがオリジンとしてEC2インスタンスへの負荷分散を行う。

選択肢の評価

A: Route 53によるフェイルオーバー

  • 構成: 2つのCloudFrontディストリビューションを異なるリージョンに配置し、Route 53のフェイルオーバーレコードを使用。
  • 評価:
    • DNSフェイルオーバーは動作に数分の遅延が生じる可能性があります(DNSキャッシュの影響)。
    • 高可用性とフォールトトレランスを実現しますが、切り替えの速度が遅く、ユーザー体験に影響を及ぼす可能性があります。
    • 結果: 適切だが、より迅速な切り替えが可能な方法が優先されます。

B: CloudFrontのオリジングループ

  • 構成: 2つのALB(異なるリージョン)をCloudFrontのオリジンとして設定し、プライマリとセカンダリをオリジングループで管理。
  • 評価:
    • CloudFrontのオリジングループはヘルスチェックを利用して、プライマリの障害時にセカンダリへ即座に切り替えます。
    • DNSキャッシュの影響を受けず、迅速かつシームレスな切り替えが可能です。
    • 結果: この方法が最も高可用性とフォールトトレランスを効率的に実現します。 正解。

C: ALB内でのフォールトオーバー

  • 構成: 単一のALB内に複数リージョンのターゲットを設定。
  • 評価:
    • ALBは単一リージョン内での負荷分散しか対応しておらず、複数リージョン間でのフォールトトレランスを実現できません。
    • 結果: 不適切。

D: AWS Global Acceleratorの利用

  • 構成: Global Acceleratorを使用し、複数のCloudFrontディストリビューションをエンドポイントとして設定。
  • 評価:
    • 高可用性とフォールトトレランスを実現可能。
    • ただし、Global Acceleratorは通常、非常に低レイテンシーを要求するリアルタイムアプリケーション向けで、今回のWebアプリケーションには過剰なアプローチです。
    • 結果: 適切だが、コストと複雑さの観点から非推奨。

正解

B: CloudFrontのオリジングループを使用

ポイントとなる本質的な知識

  1. CloudFrontのオリジングループ:
      • プライマリオリジンが利用不可になると、セカンダリオリジンに即座に切り替え可能。
      • DNSキャッシュの影響を受けないため、迅速な切り替えを実現。
  1. ALBのリージョン制限:
      • ALBは単一リージョン内のリソースを管理するため、リージョン間でのフォールトトレランスには不適切。
  1. Route 53のフェイルオーバー:
      • ヘルスチェックによるフェイルオーバーが可能だが、DNSキャッシュにより切り替えの遅延が発生。
  1. Global Accelerator:
      • 非常に低レイテンシーを必要とするアプリケーションに適しているが、今回のケースではCloudFrontで十分対応可能。
これらを踏まえると、Bの構成が最適となります。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
054-AWS SAP AWS 「理論・実践・一問道場」AWS Compute Optimizer051-AWS SAP AWS 「理論・実践・一問道場」Amazon S3の暗号化
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
02-生成AIパスポート試験対策:第2章「生成AI」
2025-2-1
01-生成AIパスポート試験対策:第1章「人口知能」
2025-2-1
究極のAWS認定 AI 実践者 AIF-C01 - 学習メモ
2025-1-27
不要再傻傻的直接买NISA啦
2025-1-27
Kubernetes、仮想マシンとコンテナの概念を超簡単に解説!
2025-1-24
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
2025-1-22
公告
🎉欢迎访问我的博客🎉
- 感谢您的支持 --
本站点于2024/09/01建立
👏主要分享IT相关主题👏
系统管理:
Redhat…
容器和编排:
Kubernetes、Openshift…
云计算:
AWS、IBM…
AI入门
以及技术笔记和考证经验
定期更新,欢迎互动。
感谢访问!
快速浏览相关标签