[レポート] Global Acceleratorを使用した高可用性アプリケーションの構築 #NET318 #reinvent

2019.12.04

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ラスベガスからこんにちは、岩城です。

セッション「Building highly available applications using Global Accelerator」を聴講しましたのでレポートします。

概要

このセッションでは、AWS Global Acceleratorを使用して、アプリケーションの可用性とパフォーマンスの高いアーキテクチャを構築する方法を学びます。AWSGlobal Acceleratorは、AWSエッジネットワークからのグローバルな静的IPアドレスエニーキャストを使用してマルチリージョンエンドポイントを管理できるサービスです。 Global Acceleratorアーキテクチャに飛び込み、顧客間の影響を分離し、ホストレベルの障害、サイトレベルの障害、ソフトウェアの欠陥、エニーキャストシフトなどのさまざまな障害モードを緩和することにより、サービスがグローバルな復元力を提供する方法を説明します。

  • Session Type:Session
  • Topic:Networking & Content Delivery
  • Session Level:300 - Advanced

スピーカー

  • Harvo Jones
    • Principal Software Engineer, Amazon Web Services
  • James Wenzel
    • Sr Solutions Architect, Amazon Web Services

※敬称略

レポート

Agenda

  • AWSでの構築
    • インターネットの課題
    • アクセラレーターの作成と使用
    • トラフィックコントロール
  • AWS Global Acceleratorのパワー
    • セキュリティ、可用性、パフォーマンス
  • AWS Global Acceleratorを使用した構築

学習する主な機能

  • グローバルな静的エニーキャストIPを持つ単一のエントリポイント
  • TCPおよびUDPトラフィックのインテリジェントな配信
  • ターゲットec2インスタンスおよびエラスティックロードバランサー(ALBおよびNLB)はクライアントIPを保持します
  • シングルリージョンとマルチリージョンの両方のワークロードを加速
  • すべてのトラフィックはバックボーン(中国を除く)を通過し、DDoS攻撃から保護されます

Internet wheather

  • Internet wheatherにより、レイテンシーを引き起こす可能性がある
  • アプリケーションへのアクセスは簡単ではないし、アプリケーションとの間のパスは異なる場合がある
  • 各ホップはパフォーマンスに影響し、リスクを引き起こす可能性がある

リスクへの対応方法

  • Route53
    • ルーティング機能を備えたグローバルなDNSソリューション
  • CloudFront
    • WAFおよびEdge Computeを使用したHTTP/S CDNソリューション
  • Global Accelerator
    • AWSグローバルネットワークを介してTCPおよびUDPトラフィックを最適なエンドポイントに転送するアクセラレータ

AWSグローバルネットワーク

  • Amazon Global Network
    • 冗長100 GbEネットワーク
    • 中国を除くすべてのAWSリージョン間のプライベートネットワークキャパシティ
  • The AWS Cloud spans:
    • 199 Points of Presence
    • 69 Availability Zones
    • 22 Regions
      • ケープタウン、ジャカルタ、ミラノ、スペインの13のアベイラビリティゾーンと4つのリージョンの計画が発表

グローバルバックボーンを持つことは顧客に何をもたらすか?

  • Security
    • トラフィックはインターネットではなくインフラストラクチャを通過します
    • エンドツーエンドのバックボーン暗号化
  • Reliable performance
    • 顧客のトラフィックが通過するパスの制御
  • Availability
    • スケーリングと冗長性の制御
  • Connecting closer to customers
    • インターネットのホットスポットまたは最適でない外部接続を回避する

  • Global Acceleratorを使用したワークロードではどのように見えるか?
  • トラフィックは、エッジロケーションでawsグローバルネットワークに入り、グローバルawsネットワークを活用します
  • Jitterと遅延を削減でき、パフォーマンスが向上する

  • Anycastとは、単一の宛先アドレスがN+エンドポイント宛先への複数のルーティングパスを持つネットワークアドレス指定およびルーティング方法

  • 2IPのみホワイトリスト登録可能
  • グローバルアドレスの複雑さを軽減
  • ソースの難読化 -(エンドポイントはプライベートにすることが可能)

アクセラレーターの作成と使用

デモのため割愛します。

Traffic control

  • Regional traffic dials

  • Endpoint weights

  • Client affinity

  • Optional endpoint selection

  • 世界中での伝播には約30秒かかる

Security

  • Networkレベルの暗号化
    • AES-256 リンク暗号化によりトラフィックを保護
  • Security groups
  • AWS WAF on ALB
    • レートベースのIPアドレスルールを活用
    • クロスサイトスクリプティングやインジェクションから保護
  • Internal EC2 instanves and ALBs
    • パブリックアドレスがないため、外部のアクターがVPCに到達する方法がない

Availability

  • 以下のようなことが起きても可用性は担保されている
  • Haevy workloads-noisy neighbors
  • Network event affecting onezone
  • Noisy neighbor affecting one cell per zone

  • AWS ShieldはL3/L4 DDoS攻撃から保護する

Performance

  • Single Regionにデプロイした場合

  • Multi Regionsにデプロイしている環境で、FailOver発生した場合

AWS Global Acceleratorを使用した構築

デモのため割愛します。

ユースケース

  • Skyscanner事例:DNS management
    • Skyscannerは、世界中の旅行検索サイトをリードしている
    • 人々は何百万もの旅行オプションを最良の価格で直接計画し、予約するよう促されている
    • AWS Global Acceleratorを使用すると、回復力のあるマルチリージョンサービスを効率的に構築できるため、旅行者に最高のエクスペリエンスを提供することに集中できる

  • par事例:IP whitelisting + API acceleration
    • すべてのPOS端末は、AWS Global Acceleratorを使用して、AWSで実行されているアプリケーションに高可用性と低遅延でアクセスする

  • flowplayer事例:Live video ingest
    • 当社のビデオプラットフォームはAWSでホストされ、Global Acceleratorを使用して、世界中のユーザーのビデオインジェストのパフォーマンスと可用性を向上させている

  • CrazyCall事例:Voice over IP
    • AWS Global Acceleratorの静的エニーキャストIPとグローバルネットワークを使用してVoice over IPトラフィックを処理し、お客様が最高のサービス品質を確保できるようにしている

  • 事例:マルチプレイヤーのリアルタイムゲーム

おわりに

Global Accelaratorのセキュリティ、可用性、パフォーマンス、ユースケースについて知ることができるセッションでした。
セッション自体は30分位で終わり、残りの時間は延々聴講者からの質問に壇上から回答していくものでした。私の英語スキルが乏しくて何を質問されているのかは分かりませんでしたが、何人もの方が質問していたことから、注目度の高いサービスなんだと感じました。 普段案件ではあまり利用する機会の無いサービスなので、これを機にGlobal Accelaratorのことを勉強したいと思います。

本エントリがどなたかのお役に立てれば幸いです。