ハイブリッド&マルチクラウド時代のグローバルトラフィックマネジメント
※ この記事は2019.3.6に執筆されたThe Akamai Blogの記事を翻訳した内容を元に作成しています。
20年前は複数のデータセンターを負荷分散するために専用デバイスを利用することは一般的であり、複数のデータセンターにホストされたアプリケーションはDNSを使用して宛先となるデータセンターに割り振られていました。DNSシステムはデータセンター単位で設定するため、データセンター間を「ラウンドロビンに割り振られる」結果となっていました。仮に4つのデータセンターを利用している場合であれば、ユーザーは各データセンターを「ラウンドロビンに割り振られる」結果となってしまいます。DNS参照によるラウンドロビンは本質的には負荷分散とは言えるのものではありません。設計者は複数の物理的な場所またぎトラフィックを分散し、過負荷となっているデータセンターに対してはトラフィックを減少させるツールを必要としていました。また、ユーザに最も近いデータセンターが選択され、地理的に負荷分散できるツールについても必要としていました。さらにデータセンターに障害が発生した場合にはトラフィックが再ルーティングされるリカバリーオプションも必要としていました。これらに対応するソリューションとしてグローバルサーバーロードバランサー (GSLB) が生み出されました。GSLBはアプリケーションが属するゾーンに対するプライマリ DNS サーバーになります。通常GSLBはデータセンター毎に1つ設置され、他のデータセンターの負荷を監視し、各ユーザーのクエリを最も適切で、最も近い、かつ負荷の低いデータセンターに割り振ります。またGSLBはデータセンターの障害や過負荷を回避することが可能です。GSLBは異なるデータセンターに配置されたプライマリおよびセカンダリGSLBが連動しリカバリーを実現します。
従来の「データセンターの GSLB」は、「すべてがデータセンターのみ」の世界ではうまく機能していましたが、近年のハイブリッドクラウド、エッジコンピューティングの世界では通用しないものとなりました。
すべてのグローバルロードバランシングに対する認識の変化
近年の IT 担当者はインターネット上でアプリケーションを提供、保守する必要があります。アプリケーションは変わらずデータセンターにも構築されていますが、新しいアプリケーションはクラウドに構築されるようになっています。また、多くのアプリケーションはCDNにより配布されています。場合によっては複数のクラウドオペレータを利用することもあります。さらに言えば他の手法としてデータセンターとクラウドのハイブリッドや複数のCDNを利用することもあります。
これらすべての場合においても、IT担当者は99.999%のSLAを維持することが求められています。例えば、クラウドにおいてインスタンスが失われた場合は新しいインスタンスにフェイルオーバーすることを確認する必要があります。 データセンターで障害が発生した場合はトラフィックが新しいデータセンターに確実に到達されるようにする必要があります。 データセンターとクラウドのハイブリッドの場合はインスタンス間の負荷を管理する必要もあります。
この「近代的なインターネットにおける複雑な環境」の中では負荷分散、地理的分散、およびパフォーマンス監視がすべて必要であり、昨今の要件はさらに複雑になっています。データセンター内の従来のGSLBモデルは近代的なインターネットにおける複雑な環境に対応することを強いられています。 そのため、GSLBがデータセンターからクラウドに移動するのはごく自然な潮流と言えます。
クラウドGSLBは物理データセンターから切り離されています。 実際、独立したGSLBであればすべてのアプリケーションが「ホストされている」場所とは異なり「オーバウォッチ」ロールになることができます。 クラウドGSLBは外部からアプリケーションやサービスを監視できます。外部にあることでユーザー体験をより精度高くシミュレートできます。 独立したクラウドGSLBは複数のクラウド環境を管理できます。これにより、組織は固有のアプリケーション要素(コンピューティング、ストレージ、分析、配布など)に最適なクラウドサービスを選択できます。 クラウドGSLBを使用すると、さまざまなデータセンターやさまざまなクラウドプロバイダの中でも優れた要素を使用してより簡単にハイブリッドアーキテクチャを実現できます。
なぜGSLB機能はクラウドにあるべきか?
クラウドGSLBは近年の複雑なインターネットトポロジに必要とされるソリューションです。例としてIT担当者には以下の要件があります。
- ヨーロッパ、米国東部/西部、ラテンアメリカ、アジアに7つのデータセンター/クラウドを提供し、グローバルなカバレッジを実現する。(アジアとラテンアメリカはクラウド環境)
- 地理的リージョンのトラフィックをそのリージョン内のデータセンターに制限する地理的マッピング機能。
- ネットワークとユーザーのフィードバックトランザクションを監視することでデータセンター/クラウドのパフォーマンスを測定する。
- APIトランザクションを利用してプログラム的にポリシーデータの変更を行う。
- 各データセンター/クラウド間を接続しトラフィックの負荷を管理する。
- メンテナンスのために7つのデータセンター/クラウドのうち1つをオフラインにできるメンテナンスモードを確立する。そのときGSLB は他の6つのデータセンター/クラウドにトラフィックをルーティングする。
このような地理的配置は近年のインターネットでは普通のことです。 GSLBはすべての機能をサポートすべく複数のプロトコルとサービスをサポートするよう求められます。 このGSLB機能を7つのデータセンターの内部から実行しようとすると、設計に無理が生じます。クラウドベースでグローバルに展開されているGSLBであれば、IT担当者はより高いアーキテクチャの柔軟性を得ることができます。
アカマイが提供する2つのクラウドベースGSLMソリューション
アカマイは世界中の何千ものお客様によって利用されている、強固でスケーラブルで堅牢な2つのGSLMサービスを提供しています。多くの人々はアカマイをグローバルなロードバランシングプロバイダと認識していませんが、アカマイのビジネスの本質はインターネットを拡大することです。GSLM機能をクラウドに移行することは、お客様のビジネス規模拡大にアカマイが貢献できる重要な要素です。現在、アカマイはお客様に2つのGSLBツールを提供しています。一つは、さまざまなトラフィックをデータセンターに分配するGlobal Traffic Management(GTM)であり、もうひとつはオリジントラフィックフローとセッションアフィニティを最適化するApplication Load Balancer(ALB)です。GTMは、データベース、データセンター、複数のCDN、およびその他の広範囲のオプションを柔軟に管理できるマルチユース、マルチプロトコルのツールです。 ALB は、アカマイの大規模なインテリジェントエッジを活用しトラフィック管理をレイヤー7に移動させる Akamai Cloudlet オプションです。GTMとALBはいずれも根本的な「ストレッサー」とは無関係に、あらゆる条件下で最大限の信頼性、可用性、およびスケールを実現するアカマイプラクティスに従っています。
以下にGTMとALBのユースケースの要約をご紹介します。
Global Traffic Management (GTM)
アカマイのGTMは、近代的で信頼性が高く開発者向けに最適化されたGSLBサービスであり、多様な分散ネットワークを介してネットワークのエッジで動作します。アカマイの情報セキュリティプログラムは、ワールドクラスの統制とコンプライアンスを束ねており、そのNetwork Operations Command Centerは年中無休で24時間稼働しています。
GTMはさまざまな負荷分散、トラフィックルーティング、パフォーマンス監視、地理的マッピング、および障害監視を可能にします。グローバルなGTMはAkamai Intelligent Edge Platformの欠かすことができない要素であり、地理的に最適な場所にサービスを移動するオプションをお客様に提供します。地理的マッピングなどのGTMサービスを使用すると複数のクラウドにアプリケーションを展開し、ユーザーアプリケーション接続を地理的またはトポロジ的に最も近いエッジサーバーにルーティングできます。アカマイのパフォーマンス監視は世界中にモニターを設置する外部アプローチです。アカマイのGTMパフォーマンス監視は、アカマイのメディア、ウェブ、クラウド、セキュリティ製品に使用されているものと同じモニタリングを活用しています。
Application Load Balancer (ALB)
アカマイの最新のロードバランシングソリューションであるALBは、GTMの機能を活用しアカマイプラットフォームを通じてトラフィックが配信される際にレイヤ7の可視性と制御を可能にし、オリジンに対するトラフィックルーティングオプションを強化します。 ALBには、次の追加機能があります。
- レイヤ7ルーティングによりURL、デバイスタイプ、コンテンツ特性などのヘッダー情報に基づいてルーティングを決定できます。
- セッションアフィニティはログイン、ショッピングカート、その他のユーザー固有のデータなどの重要な情報を維持するため、ユーザーを個々のオリジンに固着することでユーザーエクスペリエンスを保護します。
- インスタントフェイルオーバーはユーザーエクスペリエンスを損なうことなくユーザーの要求をバックアップのオリジンに転送することで、予期しない機能停止が発生した場合のダウンタイムリスクを軽減します。
ALB Plus GTM
一部機能のリカバリーを行うためにGTMを利用し、特定のアプリケーションをカバーするためにALBを利用するというアーキテクチャは多数存在しています。 ALBとGTMの組み合わせにより開発者、ネットワーク設計者、およびシステムエンジニアは、クラウドベースの最適なGSLBソリューションを柔軟に選択できます。 アプリケーション設計者の中には、アカマイが提供するインラインエクスペリエンスを管理するためにCloudlet ALB機能が必要な場合があります。 同時にネットワーク設計者は複数のクラウドとプロバイダー間のトラフィックをデザインする必要があるかもしれません。 GTMとALBを使用するとシステムエンジニアとアプリケーション開発者双方ががフルコントロール可能となります。
最後に
GTMとALBは、Akamai Intelligent Edge Platformに不可欠な要素です。今後もお客様のニーズに答えるべく絶えず進化してまいります。
参考リンク
アカマイのGTMおよびALBについての詳細は以下のリンク先をご覧ください。
- Global Traffic Management (GTM) - すべてのデータソース(クラウドとオンプレミスの両方)のトラフィックのバランスを取ることで、高速で信頼性に優れたユーザー体験を実現
- Application Load Balancer Cloudlet (ALB) - アプリケーションのパフォーマンスと可用性を最大化しながら、Akamai Intelligent Edge Platformで柔軟性と信頼性の高い高速の負荷分散を実行