Fastly エッジクラウドプラットフォーム

革新的なデジタルソリューション

ブログに戻る

フォロー&ご登録

英語のみで利用可能

このページは現在英語でのみ閲覧可能です。ご不便をおかけして申し訳ございませんが、しばらくしてからこのページに戻ってください。

Fastly のレジリエンスの柱 : より堅牢なインターネットの構築

Brian Haberman

Distinguished Engineer

この記事は Fastly の「レジリエンスの柱」シリーズの第1回で、最大限の可用性とパフォーマンスを実現するために、グローバルネットワークをどのように設計、構築、運用しているかを解説します。シリーズ全編を読む。

すべてのリクエストが重要です。トランザクションからストリーミングに至るまで、ユーザーエクスペリエンスはレイテンシと信頼性に左右されます。Webサイトの速度遅延やダウンは、ユーザーを不快にさせるだけでなく、収益に影響を与え、ブランドの信頼を損ない、収益の損失につながります。グローバル規模では、コンテンツを安定して配信することの難しさは指数関数的に増大します。

これまでにも、レジリエンスについてお伝えしたことがあるかと思います。私たちはこのトピックに相当なこだわりを持っており、執着しているとさえ言えるかもしれません。これは、私たちの文化、アーキテクチャ、そしてプロセスに深く刻み込まれている核心的な理念です。ここで取り上げる原則のいくつかは、すでに公表されています [1][2]。しかし、Fastly が最大限のレジリエンスを実現するためにどのようにネットワークを設計してきたかを示すため、これらをすべてまとめてご紹介します。ここでは、コンテンツを超高速で配信するだけでなく、揺るぎない可用性を維持しながらそれを実現するための基本原則とテクノロジーについて詳しく解説します。私たちは、これらをレジリエンスの柱と呼んでいます。

グローバル配信の課題

画像などの1つのコンテンツを、世界中に散在する何億人ものユーザーに配信しようとすることを想像してみてください。これらすべてのユーザーが、そのコンテンツが存在する1つの場所の地理的近くにいるわけではありません。また、全員が同じアクセスネットワークを使用しているわけでもないでしょう。そのコンテンツはインターネット上のどこからでも発信される可能性があります。人気のあるコンテンツであれば、多くの人がそれを求めます。このグローバル分散パラダイムには、次のような独自の課題が伴います。

  • 地理的レイテンシ : 光速は物理的な限界です。シドニーのサーバーの処理能力がどれほど高くても、ロンドンのユーザーからのリクエストをシドニーの配信拠点 (PoP) へ送信する場合、パリの PoP へのリクエストに比べて常に遅くなります。

  • ネットワークの混雑 : インターネットトラフィックは一様ではありません。特定のルートが過負荷になり、ボトルネックやパフォーマンスの低下につながる可能性があります。

  • 単一障害点 : 光ファイバーの切断、停電、さらには単一のデータセンターにおける設定エラーでさえも、ネットワークの大部分をオフラインにする可能性があります。

  • 敵対的イベント : DDoS 攻撃から標的型の悪意あるアクティビティに至るまで、ネットワークは絶え間なく押し寄せる脅威を吸収し軽減する準備をしなければなりません。

サービス停止にうんざりしていませんか?専門家によるマルチ CDN のセットアップを無料で受けられます。

オファーを利用する

コンテンツ配信ネットワーク (CDN) にとって、これらは単なる理論上の問題ではなく、日常の現実に他なりません。CDN の価値は、これらの課題を一貫して克服し、エンドユーザーに顧客のコンテンツを配信する能力と直接結びついています。お客様にとって、可用性が高くレジリエンスに優れた CDN は「あれば便利」といったものではなく、根本的な要件です。Fastly のような CDN にコンテンツ配信をオフロードすることで、企業は次のような大きなメリットを得ることができます。

  1. 稼働時間の保証 : オリジンサーバーや主要なネットワークルートに問題が発生した場合でも、Webサイトやアプリケーションへのアクセスが維持されます。

  2. 優れたパフォーマンス : コンテンツは利用可能な最寄りの POP から配信され、レイテンシを最小限に抑え、より高速で応答性の高いユーザーエクスペリエンスを保証します。

  3. コスト削減 : トラフィックスパイクを吸収し、攻撃を軽減することで、レジリエントな CDN は自社のインフラストラクチャへの負荷を減らし、運用コストを削減します。

  4. 安心 : ベースとなる配信メカニズムがインターネットの予測不可能な性質に耐えられるように設計されていることを認識しつつ、お客様はコアプロダクトの構築に専念できます。

はっきり申し上げて、誰もが免れることはできません。障害は発生するものです。複雑でグローバルなインフラストラクチャを運用する上では、それらは避けられないものです。レジリエンスとは、障害の発生を可能な限り迅速に検知することです。レジリエンスとは、障害の影響を最小限に抑えることです。レジリエンスとは、サービスが通常レベルに回復するスピードのことです。プラットフォームの真価は、障害を防ぐことではなく、障害に対してどのように対応し、そこから回復するかです。

システムのレジリエンスが、影響の谷の深さと幅を決定づけます。

レジリエンスの基盤 : オブザーバビリティ

具体的な柱について詳しく見る前に、まずは全体に通じる基礎的な機能であるオブザーバビリティについて説明します。

システムの動作を理解していなければ、レジリエントなシステムを構築することはできません。Fastly では、システムを観察することは、CPU 使用率や帯域幅のような単純なメトリクスを見るだけではないと考えています。それは、ネットワークの状態について、いつでも任意の質問に答えられるようにすることです。これには以下が含まれます。

  • メトリクス : リクエスト率、レイテンシ、キャッシュヒット率などのパフォーマンス指標を追跡する。

  • ログ : 問題を診断するために、イベントの詳細な記録をキャプチャする。

  • トレース : ボトルネックや障害点を特定するために、システム内を移動する単一のリクエストを追跡する。

シンプルなメトリクスでは、事後対応的なネットワークオペレーションしかサポートできません。特にグローバル CDN の複雑さを考慮すると、それでは十分なコンテキストを提供できません。以下の可視化について考えてみましょう。

本番環境 (コード、設定、ワークロード) の状態のあらゆるパターンは、それぞれ異なります。

システムの実際の状態は常に変化しています。ソフトウェアは静的ではありません。ネットワークの状態は静的ではありません。お客様のワークロードは静的ではありません。私たちは、比較の基準となるものがないネットワークを運用しなければなりません。これらの変数が変化するにつれて、私たちの「正常」に対する見解も変化します。

私たちのエンジニアは、ネットワークのあらゆる部分をリアルタイムで包括的に把握できます。データポイントは毎日2.1兆件。私たちのベースライン収集頻度は15秒ですが、診断やデバッグを容易にするため、一部のメトリクスをより高い頻度でキャプチャする機能を備えています。常に収集されるメトリクスのベースラインセットに加え、問題の発生が検知されたときに有効化できるその他のセットも用意されています。一部のイベントは異なる解像度で異なる現れ方をするため、メトリクス収集は異なるパーセンタイル(例:99.9999対99.99)でキャプチャするように設定することもできます。

この高度なオブザーバビリティは、プロアクティブなメンテナンスから迅速なインシデントレスポンスに至るまで、あらゆる面で不可欠です。これにより、問題を検出するだけでなく、その根本原因を正確に把握することが可能になります。これは、本当にレジリエントなシステムを構築するうえで欠かせないステップとなります。Fastly のオブザーバビリティ機能は、データ駆動型のキャパシティプランニングやシステムの最適化も促進します。これにより、何か問題が発生する前に対応することができます。

このような機能が無料でもたらされるわけではないことを、誰もが理解しておくことが重要です。これほど膨大な量のデータを収集するにはコストがかかります。メトリクスを収集するには、複数のデータパイプラインを維持する必要があります。メトリクスを保管するにはバックエンドストレージが必要です。データを情報に変換するには Compute リソースが必要です。オブザーバビリティが Fastly のインフラストラクチャ支出カテゴリーのトップ3の1つであることは、驚くことではありません。しかし、複雑なインフラストラクチャを真に理解するためには、この費用が必要であると考えています。

今後の展望

続く投稿では、Fastly のグローバルインフラストラクチャの基盤となるレジリエンスの個々の柱について詳しく見ていきます。ネットワークを高可用性を備えた構成に設計し、障害耐性を実現するように構築し、最も困難な事象にも耐えて復旧できるよう運用する方法について解説します。

始める準備はできましたか?

ぜひご連絡ください