Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

トラフィックのルーティング

最終更新 Markdown で表示Agent セットアップ

これまでに、リクエストがロードバランサーからプールへ、さらにプールから個々のサーバーへ進む流れを説明しました。

一方で、ロードバランサーとプールが どのように その判断をするかには触れていませんでした。

この仕組みがルーティングです。

仕組み

ルーティングでは、一般に次の 5 つの問いがあります。

  1. デフォルトでは、ロードバランサーはリクエストをどのようにプールへ振り分けますか。
  2. デフォルトでは、プールはリクエストをどのように個々のサーバーへ振り分けますか。
  3. プール内のどのサーバーが健全ですか。
  4. ロードバランサー内のどのプールが健全ですか。
  5. 特別なルーティングルールはありますか。

プールへのリクエスト振り分け

ロードバランサーの トラフィックステアリングポリシー が、リクエストをプールへどう振り分けるかを制御します。

経路の判断は、近接性、プールのパフォーマンス、地理などにもとづきます。

プール内のリクエスト振り分け

リクエストがプールに届くと、そのプールの エンドポイントステアリングポリシー が、プール内のサーバーへどう振り分けるかを制御します。

判断の根拠は、各サーバーへ送るトラフィックのデフォルト割合(Weight)、リクエストの属性(送信元 IP アドレスなど)、またはその両方です。

エンドポイントの健全性

エンドポイントがヘルスチェックに失敗すると、そのエンドポイントは不健全と見なされます。プールはエンドポイントステアリングポリシーに従って経路を調整します。

新規リクエストも既存リクエストも、不健全なエンドポイントを除き、プール内の健全なエンドポイントへ向かいます。

プールの健全性

不健全なエンドポイントが十分に増えると、プール自体も不健全と見なされることがあります。

プールが Critical ヘルスになると、ロードバランサーは Traffic steering ポリシー に従ってトラフィックを迂回し始めます。

  • Off:

    • アクティブなプールが unhealthy になると、トラフィックは順序どおり次のプールへ送られます。
    • 非アクティブなプールが unhealthy になっても、トラフィックはアクティブなプールへ送られ続けます(フェイルオーバー順では unhealthy なプールをスキップします)。
  • その他の方法: 残りのすべてのプールに、Traffic steering ポリシーに従ってトラフィックが分散されます。

フォールバックプール

ロードバランサーには、状況に関係なくトラフィックを受け取る特別なプール(Fallback Pool)があることがよくあります。

このプールは最終手段のプールです。トラフィックを振り分けるとき、このプールのヘルスは考慮されません。

フォールバックプールは重要です。すべてのプールに到達できない(無効または異常)場合でも、ロードバランサーへトラフィックが届くことがあります。ロードバランサーはこのトラフィックの送り先が必要なため、フォールバックプールへ送ります。

特別なルーティング

さらに、次のような設定も、ロードバランサーのトラフィック振り分けに影響します。

  • リクエストの 特定の属性 にもとづいてルーティングします。
  • 特定のエンドユーザー からのリクエストをすべて同じサーバーへ送り、ショッピングカートの中身などセッション情報を維持します。

役に立ちましたか?