为了节省成本,有可能将多个应用共享(复用)一个负载均衡实例,使用同一个公网IP地址和端口对外暴露,但仍希望通过转发策略将请求转发到对应的应用。本文介绍多应用共享负载均衡实例和端口时,如何使用域名实现流量的转发。

前提条件

创建SLB实例。具体操作,请参见创建负载均衡实例

背景信息

说明 在ECS集群中,仅HTTP监听协议支持流量分发。

例如有两个应用:一个提供订单查询的功能的应用User,一个提供用户登录的应用Order,这两个应用对外提供同一个公网IP地址,且端口默认都是 80 。您可以通过为两个应用设置不同的域名(u.domain.com为应用User的域名,o.domain.com为应用Order的域名),来实现流量分发。

通过域名实现流量分发

为第一个应用绑定SLB并配置域名转发策略

为第一个应用绑定负载均衡实例,并配置监听端口、虚拟服务器组及域名转发策略。

  1. 登录EDAS控制台
  2. 在左侧导航栏单击应用列表
  3. 应用列表页面的顶部菜单栏选择地域,并在页面上方选择微服务空间,在集群类型列表中选择ECS集群,然后在应用列表中单击目标应用名称。
  4. 基本信息页签的应用设置区域,单击负载均衡(公网)右侧的添加
    说明 如果您已经配置过负载均衡实例,则在此处会显示负载均衡实例的IP和端口信息,您可单击修改进入配置页面修改负载均衡实例信息,或单击解绑解除与当前负载均衡实例的绑定。
  5. 添加SLB与应用的绑定配置向导中配置负载均衡实例。
    1. 选择SLB页签中负载均衡(公网)的下拉列表中选择您创建的SLB实例,然后单击下一步
      选择SLB实例

      如果选择的负载均衡实例已经被其他应用绑定,页面中有如下提示:

      SLB已被其他应用绑定提示
    2. 选择配置监听页签中配置监听端口,然后单击下一步
      • 如果想使用为选定SLB实例配置过的监听端口,选择选择已有监听端口,并在下方选择已有的监听端口。
      • 如果没有为选定的SLB实例配置过监听端口,或想为当前应用配置一个新的监听端口,选择添加新监听端口,并为该SLB实例新建一个监听。

        监听参数说明:

        参数 说明
        协议 支持TCP和HTTP协议,请根据实际需求选择。更多信息,请参见监听概述
        前端端口号 负载均衡实例对外提供服务的端口。
        注意 如果想添加的前端端口号已经被其他监听协议占用,请另外设置一个端口号,或者需登录SLB控制台删掉该监听端口后,再在EDAS控制台上重新创建。
        健康检查路径(URI) 负载均衡检查后端应用存活状态的URI。默认为/_ehc.html。请根据应用输入正确的健康检查路径,具体操作,请参见配置健康检查
        后端端口号 应用的服务端口,不可设置。
        选择配置监听
    3. 配置虚拟分组与转发策略页签中配置SLB实例的虚拟服务器组和基于域名的转发策略,然后单击下一步
      说明 默认服务器组不支持配置转发策略,所以在使用域名实现流量分发时,不可以选择默认服务器组,只能选择虚拟服务器组。

      为应用配置虚拟服务器组(虚拟分组)和基于域名的转发策略包含以下两种方式:

      • 如果想使用为选定的SLB实例创建过的虚拟服务器组,请执行以下操作:
        1. 选择现有虚拟服务器组,并在下方选择已有的虚拟服务器组。
          注意 同一个虚拟服务器组只允许与一个应用或应用分组进行绑定。
        2. 设置转发策略。
          • 如果想使用为该虚拟服务器组配置过的转发策略,选择修改当前虚拟服务器组的转发策略略,并选中已有转发策略。
          • 如果该虚拟服务器组没有配置过转发策略,或想要为其新增转发策略,选择新增转发策略,并在转发策略右侧的文本框中输入域名和路径规则。
        已有虚拟服务器组已有转发策略
      • 如果没有为选定的SLB实例配置过虚拟服务器组,或想为当前应用配置一个新的虚拟服务器组,请执行以下操作:
        1. 选择新建虚拟服务器组,并输入虚拟服务器组名称
        2. 选择新增转发策略,并在转发策略右侧的文本框中输入域名和路径规则。
        新虚拟服务器组新转发策略
    4. 确定变更SLB页签中查看设置的SLB实例信息,无误后,单击确认变更
  6. 验证当前应用通过设置的域名转发策略能否正常访问第一个应用,具体操作,请参见结果验证

为第二个应用绑定SLB并配置域名转发策略

为第二个应用绑定和第一个应用相同的负载均衡实例和监听端口,设置不同于第一个应用的虚拟服务器组及域名转发策略。

  1. 登录EDAS控制台
  2. 在左侧导航栏单击应用列表
  3. 应用列表页面的顶部菜单栏选择地域,并在页面上方选择微服务空间,在集群类型列表中选择ECS集群,然后在应用列表中单击目标应用名称。
  4. 基本信息页签的应用设置区域,单击负载均衡(公网)右侧的添加
    说明 如果您已经配置过负载均衡实例,则在此处会显示负载均衡实例的IP和端口信息,您可单击修改进入配置页面修改负载均衡实例信息,或单击解绑解除与当前负载均衡实例的绑定。
  5. 添加SLB与应用的绑定配置向导中配置负载均衡实例。
    1. 选择SLB页签中负载均衡(公网)的下拉列表中选择第一个应用绑定的SLB实例,然后单击下一步
      选择SLB实例

      选择的负载均衡实例已经被第一个应用绑定,页面中有如下提示:

      SLB已被其他应用绑定提示
    2. 选择配置监听页签中选择选择已有监听端口,并在下方选择和第一个应用相同的监听端口,然后单击下一步
      选择已有监听端口
    3. 配置虚拟分组与转发策略页签中配置SLB实例的虚拟服务器组和基于域名的转发策略,然后单击下一步
      说明 默认服务器组不支持配置转发策略,所以在使用域名实现流量分发时,不可以选择默认服务器组,只能选择虚拟服务器组。

      同一个虚拟服务器组只允许与一个应用或应用分组进行绑定,所以选择的已有虚拟服务器组不能和第一个应用绑定的虚拟服务器组相同。为了操作简单,推荐选择新建虚拟服务器组新增转发策略

      如果您前期已经进行了负载均衡规划,并在负载均衡控制台配置了虚拟服务器组和转发策略,可以选择已有虚拟服务器组和已有转发策略,具体操作请参见5

      新虚拟服务器组和新转发策略
    4. 确定变更SLB页签中查看设置的SLB实例信息,无误后,单击确认变更
  6. 验证当前应用通过设置的域名转发策略能否正常访问第二个应用,具体操作,请参见结果验证