应用服务网格 ASM-流量治理:配置流量策略

时间:2024-01-02 15:29:29

配置流量策略

  1. 登录应用服务网格控制台,在左侧导航栏中选择“流量治理”
  2. 选择组件所在的集群和命名空间。
  3. 在拓扑图中,单击组件名称。在服务流量策略中,进行流量策略配置。

    • 负载均衡算法
      • ROUND_ROBIN:轮询,默认负载均衡算法。
      • LEAST_CONN:随机选取两个健康的主机,再从所选取的两个主机中选择一个链接数较少的主机。
      • RANDOM:从所有健康的主机中,随机选取一个。
    • 会话保持
      • 根据HTTP头部中的内容获取哈希:
        • 选择Cookie:将以HTTP请求中的所有Cookie计算哈希,哈希相同的请求将会转发至同一个实例进行处理。
        • 选择User-Agent:将以HTTP请求中的User_agent来计算哈希,UA哈希值相同的请求将会转发至同一个实例进行处理。
        • 流量治理也支持用户使用自定义Key来计算哈希,只需选择自定义模式并且输入键的名称。
      • 根据Cookie键中的内容获取哈希:支持用户输入Cookie键的名称,转发方式则由设定的Cookie键对应的值来计算哈希,哈希相同的请求则会转发至同一个实例中。例如我们设定Cookie中的User为键,则通过计算User对应的值的哈希来确认转发规则。
      • 根据Sourcelp中的内容获取哈希:流量将会按照请求源IP地址的哈希值进行会话保持。

  4. 连接池管理。

    • 最大连接数

      到目标主机HTTP或TCP连接的最大数量。

    • 最大请求重试次数

      在指定时间内对目标主机最大重试次数。

    • 最大等待请求数

      等待列队的长度,默认为1024。

    • 每连接最大请求数

      对后端连接中最大的请求数量如果设为1则会禁止keep alive特性。

    • 连接超时时间

      TCP连接超时时间。

    • 最大请求数

      后端服务处理的最大请求数,默认为1024。

  5. 熔断配置。

    • 连续错误数

      在一个检查周期内,连续出现500及以上错误的个数,例502、503状态码。

    • 检查周期

      将会对检查周期内的响应码进行筛选。

    • 最大隔离实例比例(%)

      上游实例中,允许被隔离的最大比例。采用向上取整,如果10个实例,设为13%则最多会隔离2个实例。

    • 最短隔离时间

      实例第一次被隔离的时间,之后每次隔离时间为隔离次数与最短隔离时间的乘积。

  6. 是否开启Mutual TLS。

    • 开启Mutual TLS:组件仅会通过基于TLS建立的安全信道通信。
    • 关闭Mutual TLS:组件之间通过明文通信。

  7. 故障注入。

    在故障类型中选择时延故障或中断故障。当前版本仅支持基于请求内容策略。

    • 故障版本

      故障所作用的版本。

    • 故障类型
      • 不启用:取消故障注入。如果不需要继续触发故障,可单击故障类型中的“不启用”来删除已配置的故障。
      • 时延故障:对通往组件的请求有延迟。
        • 故障百分比:故障按比例发生。
        • 延时:设定的时间延迟单位。
      • 中断故障:会中断该组件的服务并返回预设状态码。
        • 故障百分比:故障按比例发生。
        • Http状态码:终止故障时返回的http状态码,默认返回500。

  8. 访问鉴权。

    • 开启访问鉴权:当前服务只能被指定的服务访问,并且自动开启Mutual TLS。
    • 关闭访问鉴权:当前服务能够被所有服务访问。

    访问鉴权会默认授权给网关实例(ingressgateway),通过网关间接访问当前服务不会受到访问授权配置的影响。

support.huaweicloud.com/usermanual-asm/asm_01_0011.html