全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

应用型负载均衡快速入门(进阶版)

最近更新时间:2024-01-04 11:37:32

本快速入门主要介绍如何通过配置基于URL的转发策略,将来自同一个域名不同URL的请求转发到不同的后端服务器进行处理。

准备工作

您需要根据业务需求规划ALB实例的地域,创建VPC和后端服务器KEC实例等。

步骤一:新建ALB实例

  1. 登录应用型负载均衡ALB控制台

  2. 实例页面,单击新建负载均衡

  3. 在新建页面,根据需要配置实例。

    配置

    说明

    地域

    选择实例所属的地域。目前只支持北京、俄罗斯。

    功能版本

    选择实例的功能版本。

    • 标准版:支持10万QPS量级的版本。

    • 高阶版:支持100万QPS量级的版本。

    负载均衡名称

    输入实例名称。本文将ALB实例命名为Test-ALB。

    所属项目

    选择实例所属项目。

    所属虚拟私有网络

    选择实例所属的VPC。

    负载均衡版本

    选择实例的协议版本。本文选择IPv4

    • IPv4:表示ALB实例仅支持客户端使用IPv4地址访问。

    • IPv6:表示ALB实例支持客户端使用IPv6地址访问。

    网络类型

    选择实例网络类型,系统会根据您的选择分配私网或公网服务地址。本文选择公网

    • 私网:ALB只有私网IP地址,只能被ALB所在VPC内的资源访问,无法从互联网访问。

    • 公网:ALB具有公网IP和私网IP地址。公网ALB默认通过弹性IP提供公网能力,选择公网将会收取弹性IP的实例费、流量费用。

      • 公网IP:弹性公网IP对外提供服务,支持通过互联网访问ALB。

      • 私网IP:支持云上VPC内的资源访问ALB。

  4. 单击购买,然后根据所选配置完成实例开通。

  5. 返回实例页面,选择对应的地域即可看到新建的实例。

步骤二:创建后端服务器组

  1. 在左侧导航栏,选择负载均衡>应用型(新) > 服务器组

  2. 服务器组页面,单击新建服务器组

  3. 在新建服务器组页面配置服务器组相关的参数,然后单击确定

    参数

    描述

    服务器组名称

    输入服务器组名称。本文新建两个服务组,分别命名为Test-Group-01和Test-Group-02。

    虚拟私有网络

    选择服务器组所属的VPC。

    服务器组类型

    选择一种服务器组类型:

    • 服务器:可以将云服务器、裸金属服务器添加为后端服务器。

    • 边界网关:按照IP地址添加后端服务器。

    本文选择服务器类型。

    开启后端长连接

    选择后端是否开启长连接:

    • 短连接短连接只能进行一项业务数据的发送,每次传输数据之前新建一个连接,在数据传输完成后,该连接断开。

    • 长连接:当开启后端长连接后,ALB到后端服务器之间会维持一定数量的TCP长连接,当新请求到达时,如果有空闲的TCP长连接,ALB优先使用TCP长连接转发请求到后端服务器,从而减少TCP握手建连次数,减轻后端服务器压力。

    • 自适应:根据client的connection header,判断后向为长连接或者短连接。

    可添加的服务器

    勾选后端服务器,设置端口权重,添加到服务器组中。

  4. 单击确定,返回服务器组页面,查看完成配置的服务器组。

步骤三:配置监听

  1. 在左侧导航栏,选择应用型(新) > 监听器

  2. 监听器页面,找到目标ALB实例,单击新建监听器

  3. 新建监听器页面,完成以下配置,然后单击下一步

    参数

    描述

    基本信息

    监听器名称

    输入监听器的名称。本文将ALB实例命名为Test-Listener。

    前端协议

    选择监听的协议类型。本文选择HTTP

    监听端口

    用来接收请求并向后端服务器进行请求转发的监听端口,端口范围为1~65535,本文填写81。

    转发方式

    选择转发到后端服务器的负载算法:

    • 轮询:依据负载云服务器的权重,请求轮流发送。

    • 最小连接数:优先将请求发给拥有最小连接数的后端服务。

    会话保持

    选择会话保持是否开启,开启会话保持可以将同一客户端的请求始终转发给同一后端服务器。

    访问控制

    选择访问控制是否开启,若开启,需选择关联的ACL。通过设置入站允许/拒绝规则,对入监听器的流量进行精确控制。

    默认转发策略

    动作

    默认为转发

    服务器组

    选择默认转发的后端服务器组。

    健康检查

    健康检查开启

    健康检查方法:选择一种健康检查方法。

    • HEAD:HTTP监听健康检查默认采用HEAD方法。请确保您的后端服务器支持HEAD请求。如果您的后端应用服务器不支持HEAD方法或HEAD方法被禁用,则可能会出现健康检查失败,此时可以使用GET方法来进行健康检查。。

    • GET:如果响应报文长度超过8K,会被截断,但不会影响健康检查结果的判定。

    响应超时时间:健康检查请求返回的等待时间,超过此时间将会被判定为一次失败的检查,取值范围:1~3600秒,默认值为4秒。

    健康检查间隔:连续进行两次健康检查的时间间隔。取值范围:1~1000秒,默认值为5秒。

    健康阈值:健康检查连续成功多少次后,会将后端服务恢复,取值范围:1-10次,默认值为5。

    不健康阈值:健康检查连续失败多少次后,会将后端服务器屏蔽,取值范围:1-10次,默认值为4。

    健康检查路径:HTTP协议的健康检查将使用HEAD方法请求此URL。

    健康检查域名:健康检查的服务域名。

    个性化配置

    个性化配置开启

    可通过X-Forwarded-For字段获取客户端源IP,或者根据其他需求配置相应的字段。详情请见个性化配置

  4. 单击确定,返回监听器页面,查看完成配置的监听器。

步骤四:添加转发策略

  1. 在新添加的监听器的操作栏,单击“新建转发策略”。

  2. 在新建转发策略页面,配置转发策略。

    • 名称:填写转发策略的名称。

    • 添加域名:填写转发的域名,支持精确域名和泛域名。示例为”www.a.com”。

    • 添加路径:触发转发的URL路径,示例为“/ALB01”。

    • 转发动作:选择“转发”。

    • 后端服务器组:选择“Test-Group-01”。

  3. 单击“确定”,转发策略添加完成。

  4. 重复执行以上步骤,添加另一条转发策略,添加路径为“/ALB02”,后端服务器组选择“Test-Group-02”。

步骤五:部署后端服务

在后端服务器KEC实例上部署Nginx,具体步骤如下:

  1. 登录云服务器控制台新建两台云服务器Test-KEC-01和Test-KEC-02,分别移入后端服务器组Test-Group-01和Test-Group-02。

  2. 使用wget命令,下载对应当前操作系统版本的Nginx安装包。本文以CentOS 7.6版本的操作系统为例。

    wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  3. 执行以下命令,建立Nginx的yum仓库。

    rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
  4. 执行以下命令,安装Nginx。

    yum -y install nginx
  5. 执行以下命令,启动Nginx并设置开机启动。

    systemctl start nginx
    systemctl enable nginx
  6. 修改实例Test-KEC-01和Test-KEC-02里Nginx的相关配置,当有访问请求时,能标识到是来自Test-KEC-01还是Test-KEC-02的响应。

    6.1 执行以下命令打开配置文件。

    vi /etc/nginx/conf.d/default.conf

    6.2 按i键进入编辑模式。

    6.4 修改文件内容,涉及内容修改部分如下所示:

     ...
       location /ALB01{
           return 200 alb01;
       }
     ...
       location /ALB02{
           return 200 alb02;
       }

    6.5 编辑完后按Esc键退出编辑模式,并输入:wq保存后退出。

  7. 执行下述命令重启nginx。

    nginx -s reload

步骤六:验证负载均衡服务

负载均衡实例配置完成后,可通过访问ALB实例对应的域名,验证是否实现访问到不同的后端服务器。

  1. 登录云服务器控制台,新建一台KEC实例作为客户端。

  2. 使用vi /etc/hosts命令,在客户端的host文件中将域名映射到创建的ALB实例的EIP上。

  3. 客户端使用curl 域名:端口/路径命令访问负载均衡,显示如下,说明访问不同的路径能将请求转发到服务器组Test-Group-01和Test-Group-02,服务器组里的服务器能正常响应请求。

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈