10.10. レイヤー 7 負荷分散ポリシーの位置

Red Hat OpenStack Platform (RHOSP) Load-balancing サービス (octavia) の場合には、複数のレイヤー 7 (L7) 負荷分散ポリシーがリスナーに関連付けられると、ポリシーの位置パラメーターの値が重要になります。位置パラメーターは、L7 ポリシーが評価される順序を決定する際に使用されます。ポリシーの位置は、次の方法でリスナーの動作に影響を与えます。

  • 負荷分散サービス (haproxy amphora) の参照実装では、HAProxy はポリシーのアクションに関する以下の順序を強制します。

    • REJECT ポリシーは、他のすべてのポリシーよりも優先されます。
    • REDIRECT_TO_URL ポリシーは、REDIRECT_TO_POOL ポリシーよりも優先されます。
    • REDIRECT_TO_POOL ポリシーは、上記のすべての後で、ポリシーの位置が指定する順序でのみ評価されます。
  • L7 ポリシーは、位置属性で定義されるように特定の順序で評価されます。指定のリクエストとマッチする最初のポリシーのアクションが実行されます。
  • いずれのポリシーも指定のリクエストにマッチしない場合、リクエストはリスナーのデフォルトプール (存在する場合) にルーティングされます。リスナーにデフォルトのプールがない場合は、エラー 503 を返します。
  • ポリシーの位置の番号は、1 から始まります。
  • 既存ポリシーの位置に一致する位置で新しいポリシーが作成されると、新しいポリシーが指定の位置に挿入されます。
  • 位置を指定せずに新しいポリシーが作成されるか、または一覧にすでにあるポリシーの番号よりも大きい位置を指定すると、新しいポリシーはただ一覧に追加されます。
  • ポリシーが一覧に挿入、削除、または追加されると、ポリシーの位置の値は数字を飛ばさずに 1 から並べ替えられます。たとえば、ポリシー A、B、および C の位置の値がそれぞれ 12、および 3 の場合、一覧からポリシー B を削除すると、ポリシー C の位置は 2 になります。