11.10. 第 7 层负载平衡策略位置

对于 Red Hat OpenStack Platform (RHOSP)负载均衡服务(octavia),当多个第 7 层(L7)负载均衡策略与监听器关联时,策略位置参数的值非常重要。position 参数用于决定评估 L7 策略的顺序。策略位置通过以下方法影响监听程序行为:

  • 在负载均衡服务(haproxy amphorae)的引用实现中,HAProxy 强制执行以下有关策略操作的顺序:

    • REJECT 策略优先于所有其他策略。
    • REDIRECT_TO_URL 策略优先于 REDIRECT_TO_POOL 策略。
    • REDIRECT_TO_POOL 策略仅在以上所有之后评估,并根据策略指定位置的顺序进行评估。
  • L7 策略以特定顺序评估,如 location 属性所定义,第一个与给定请求匹配的策略是其操作的操作。
  • 如果没有策略与给定请求匹配,则请求将路由到侦听器的默认池(如果存在)。如果侦听器没有默认池,则返回错误 503。
  • 策略位置编号以一(1)开头
  • 如果创建了具有与现有策略匹配的位置创建新策略,则新策略将插入到给定位置。
  • 如果在没有指定位置的情况下创建新策略,或者指定大于列表中已存在的策略数量的位置,则新策略会附加到列表中。
  • 当策略插入、删除或附加到列表中时,策略位置值会在不跳过数字的情况下从一个(1)重新排序。例如,如果策略 A、B 和 C 分别具有 123 的位置,如果您从列表中删除策略 B,策略 C 的位置将变为 2