3月2日金曜日、バージニア州アシュバーンにあるAmazon AWSの米国東1地域全体で重大な停止が発生しました。この停電はAmazon Echoの頭脳であるAlexaに影響を与え、Slack、Twilio、Atlassian、 JIRAなど、IaaSプロバイダ内でホストされている複数のアプリケーションやサービスにも影響を与えました。インフラ自体はによる自然災害による停電から迅速に復旧しましたが、AWS上で実行される多くのソフトウェアアプリケーションやサービスには長期間にわたり影響を及ぼしました。
この停止は、主にAWSクラウドとエンタープライズネットワーク間の専用接続を提供するAWS Direct Connectに依存している顧客に影響を与えました。一方、インターネットアクセスは迅速に回復し、Amazonの提案する回避策は、インターネット上でIPSec VPNサービスを使用することでした。
![図1:AWSはDirect Connectの接続性の問題に直面しました。 VPNサービスは正常に動作していました。](/img/blog-legacy-jp/2018/03/Figure-1-AWS-Direct-Connect-connectivity-problems-1.png)
この事例は企業のIT担当者であるあなたにとって何を意味するでしょうか?さまざまなクラウドプロバイダーから提供されているプライベート・インターコネクト・オプションに加入するべきかどうか? 端的に答えるとそうすべきだと思いますが、だからと言って万能なソリューションとは言い切れません。もちろん可視性も必要ですし、アプリケーションに十分な冗長性と切り替えのオプションを設計する必要があります。
クラウド接続のオプション
Amazon AWS、Microsoft Azure、Google Cloud PlatformのようなIaaSとPaaSでは、オンデマンドで仮想サーバーインスタンスを作成できます。これらのインスタンスは、通常は独立したプライベートネットワーク上に存在する仮想プライベートクラウド(VPC)上に存在します。では、これらのクラウドプラットフォーム上にあるアプリケーションとはどう通信するでしょうか?
第1の選択肢は、パブリックIPをこれらのサーバに割り当て、インターネットを介してより広く通信できるようにすることです。これは、一般的に公開されているアプリのウェブレイヤーによる外部アクセスに最適ですが、内部データベースサーバーへのアクセスへには不向きです。
第2の選択肢は、企業ネットワークからクラウドプロバイダーへのIPSec VPNトンネルを構築し、企業内でプライベートアドレス空間をルーティング可能にすることです。これは、企業内ネットワーク内からのみアクセスされるマイクロサービスアーキテクチャや内部アプリケーションに適しています。しかし、IPSec VPNトンネルでは、高価な暗号化ハードウェア(通常は最新のファイアウォールの内部に埋め込まれている)が必要であり、アプリケーションフローに不要な遅延が生じる可能性があります。また、このオプションも結局は、インターネットをトランスポートとして使用します。はい、ルンバの掃除機に乗っている猫のビデオや動画配信サービスの最新映画を運んでいる同じインターネットを使うのです。これについては後で詳しく説明します。
第3の選択肢は、企業ネットワークとクラウドプロバイダーとの間に何らかの種類のプライベート接続を確立することです。その結果、クラウドネットワークアドレスは企業ネットワーク内からルーティング可能になります。 AWSはこのダイレクト接続サービスを「Direct Conect」と呼び、Microsoft Azureは「ExpressRoute」、Googleは「Cloud Interconnect」と呼んでいます。各プラットフォームにはアクセス方法と冗長性のバリエーションがありますが、本質的には同じ仕組みになっています。クラウドリソースを企業ネットワーク内からルーティングできるようにします。
![図2:AWS Direct Connectアーキテクチャ](/img/blog-legacy-jp/2018/03/Figure-2-AWS-Direct-Connect-architecture-1.png)
3つのサービスはすべて、利用可能な多くのエクスチェンジ・ポイントの1つでクラウドプロバイダーとの接続を確立し、そのクラウドプロバイダーとピアリングします。また、エクスチェンジ・ポイントまでの接続サービスを提供するサービスプロバイダもいます。これらの接続は、特定の帯域幅で上限を設定することができますし、実際の使用状況に基づいて随時支払うこともできます。ほとんどの場合、冗長オプションも用意されているため、1つのリンクまたはルータで障害が発生しても接続には影響しません。
![図3:ThousandEyesによって可視化されたAWS Direct Connect](/img/blog-legacy-jp/2018/03/Figure-3-AWS-Direct-Connect-ThousandEyes-Path-Visualization-1.png)
一般的なインターネット接続と専用接続との比較
プライベート接続とインターネット上のIPSecトンネルどうは比較できるでしょう?
プライベート接続の利点:
- パフォーマンス:特定の帯域幅レベルでは、IPSec VPNトンネルは非常に高価になり、クラウド帯域幅が絞られます。プライベート接続を使用すると、帯域幅のニーズが拡大するにつれてシームレスに拡張できます。
- 一貫性:高度に動的なインターネットとは異なり、時間とともに変化する可能性が低いため、ネットワークパスをよりよく制御できます。
- コスト:通常、インターネット帯域幅に比べてダイレクトコネクト帯域幅のGbpsあたりの料金は低くなります。
しかし、プライベートピアリング接続は万能ではありません。インターネットの最大の利点の1つは、その復元力です。高度な接続性は、通常、データがポイントAからポイントBに到達するパスを見つけることを保証します。実際、選択する経路はたくさんあります。ただし、インターネットルーティングプロトコルは、常に最速のパス、または最適なパスを見つけるとは限りません。また、このパスを他の多くのトラフィックストリームと共有する必要があります。
3月2日に多くのアプリケーションで目撃されたように、プライベートピアリング接続が単一障害点にならないように設計してください。これらのアプリケーションは、バックエンド接続の喪失を検出して回復することができませんでした。インターネットは常に利用可能の存在であり、サービスの可用性とビジネスの継続性を維持するのに役立つ素晴らしいバックアップパスにもなります。
![図4:適切な冗長性ないサービス接続には何が起こるか。](/img/blog-legacy-jp/2018/03/Figure-4-HTTP-Server-availability-drop-1.png)
さらに、プロトコルスタックの複数のレイヤーでクラウドアプリケーションの可視化と監視が必要となります。この可視性がなければ、今回のような障害の範囲と根本原因を特定することは非常に困難になります。 この金曜日には、AWSのインフラ上では非常に短時間な停止が、ホストされたアプリケーションにはより長い影響を与える停止につながったことが、目撃されました。クラウドは複雑な分散システムであり、デバッグは非常に困難です。クラウドでは、あなたはインフラ自体は所有していませんが、そのクラウドから出される結果を所有しているのです。
クラウドの接続性を可視化
オペレーションチームは、通常、どこに問題があるのかを把握するのに70%以上を費やし、その後で修正を実行します。 クラウドでは、アプリケーションのパフォーマンス、ネットワークパス、およびインターネットルーティングの間の相関を十分に把握していない限り、問題の切り分けに費やす比率はさらに悪化する可能性があります。 ここで、ThousandEyesの登場です。我々は、霧を晴らし、根本原因を迅速に見つけることができる、最新のクラウド対応ネットワークモニタリングを提供します。
クラウドのトラブルシューティング時間を大幅に短縮し、クラウドへの接続性を維持するThousandEyes。是非、デモをご覧いただくか、無料トライアル版をお試しください。