进阶实战03-SLB负载均衡实践

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
简介: 负载均衡学习与配置

心得体会:负载均衡是服务器业务中重要的组成部分,他是为客户端提供稳定服务的基础。通过本次实践,充分了解到了负载均衡的作用,以及权重对服务器相应的影响。同时阿里云提供的负载均衡服务效果配置简单有条理,可以快速为企业服务器搭建负载均衡服务。

场景体验目标

拥有大量用户的企业,经常会面临如下的难题:在高并发的情况下,经常会导致服务器响应速度慢,严重的情况会直接导致服务器停止服务。此时,会导致企业的业务中断,影响客户的正常访问。

本场景通过使用阿里云负载均衡SLB以及对负载均衡SLB后端服务器ECS的权重进行修改,可以快速解决上述的问题。

img

背景知识

阿里云负载均衡

  • 简介

负载均衡(Server Load Balancer)是将访问流量根据转发策略分发到后端多台云服务器(ECS实例)的流量分发控制服务。负载均衡扩展了应用的服务能力,增强了应用的可用性。

负载均衡通过设置虚拟服务地址,将添加的ECS实例虚拟成一个高性能、高可用的应用服务池,并根据转发规则,将来自客户端的请求分发给云服务器池中的ECS实例。

负载均衡默认检查云服务器池中ECS实例的健康状态,自动隔离异常状态的ECS实例,消除了单台ECS实例的单点故障,提高了应用的整体服务能力。此外,负载均衡还具备抗DDoS攻击的能力,增强了应用服务的防护能力。

  • 架构

负载均衡服务主要有三个核心概念:

  1. 负载均衡实例 (Server Load Balancer instances)

一个负载均衡实例是一个运行的负载均衡服务,用来接收流量并将其分配给后端服务器。要使用负载均衡服务,您必须创建一个负载均衡实例,并至少添加一个监听和两台ECS实例。

  1. 监听 (Listeners)

监听用来检查客户端请求并将请求转发给后端服务器。监听也会对后端服务器进行健康检查。

  1. 后端服务器(Backend Servers)

一组接收前端请求的ECS实例。您可以单独添加ECS实例到服务器池,也可以通过虚拟服务器组或主备服务器组来批量添加和管理。

img

  • 特点

1)负载均衡服务通过设置虚拟服务地址(IP),将位于同一地域(Region)的多台云服务器(Elastic Compute Service,简称ECS)资源虚拟成一个高性能、高可用的应用服务池;根据应用指定的方式,将来自客户端的网络请求分发到云服务器池中。

2)负载均衡服务会检查云服务器池中ECS的健康状态,自动隔离异常状态的ECS,从而解决了单台ECS的单点问题,同时提高了应用的整体服务能力。在标准的负载均衡功能之外,负载均衡服务还具备TCP与HTTP抗DDoS攻击的特性,增强了应用服务器的防护能力。

3)负载均衡服务是ECS面向多机方案的一个配套服务,需要同ECS结合使用。

  • 产品优势
  1. 高可用

采用全冗余设计,无单点,支持同城容灾。搭配DNS可实现跨地域容灾,可用性高达99.95%。

根据应用负载进行弹性扩容,在流量波动情况下不中断对外服务。

  1. 可扩展

您可以根据业务的需要,随时增加或减少后端服务器的数量,扩展应用的服务能力。

  1. 低成本

与传统硬件负载均衡系统高投入相比,成本可下降60%。

  1. 安全

结合云盾,可提供5Gbps的防DDOS攻击能力。

云服务器状态确认

  • 打开浏览器,在输入框中输入 云产品资源 提供的 云服务器ECS-1弹性IP

image-20200925121601180

image-20200925121541741

  • 可以发现部署的网站内容相同,只是显示的后端服务器IP不同。说明:在真实场景下,负载均衡后端的服务器中部署的应用都是一致的。

负载均衡配置

  1. 登录控制台->负载均衡服务->配置
  2. 配置负载均衡的 监听端口后端服务器健康检查
  • 协议&监听 页面,输入如下信息

    • 负载均衡协议:选择 HTTP
    • 监听端口:设为 80
    • 高级配置保持默认

image-20200925121850436

  • 后端服务器 页面,监听请求转发至 默认服务器组,在已添加服务器处点击 继续添加 。在弹出的待添加服务器页面,在预先配置好的两台云服务器前打勾选择,

image-20200925122020273

  • 在后端服务器界面的已添加服务器列表中,可以看到新增的两台云服务器,分别将 端口 设置为 80

image-20200925122035252

  • 健康检查 配置中,开启健康检查按钮为绿色 开启状态

image-20200925122653140

负载均衡验证

  1. 验证负载均衡的工作原理;
  • 两台后端服务器的权重比例相同。在浏览器中新建页面,并访问 负载均衡服务地址 。界面显示的 后端服务器IP 为 云服务器ECS-1(或 云服务器ECS-2) 的 内网地址

image-20200925122844411

  • 刷新后界面显示的 后端服务器IP 为 云服务器ECS-2(或 云服务器ECS-1) 的 内网地址**

image-20200925122913843

  • 经过重复刷新操作,观察 后端服务器IP 是在两个云服务器的 内网地址 间轮流更换。可以说明负载均衡会将用户的请求发送到后端不同的服务器进行处理。这样,可以减轻单台服务器的负载压力,从而确保业务不会中断。
  1. 验证通过配置不同后端服务器权重,将用户的请求按比例分发到不同后端服务器;
  • 修改权重:默认服务器组->已添加的服务器->修改权重。
  • 设置两个实例的 权重 分别为20 ,100

image-20200925124154099

  • 浏览器中,刷新多次负载均衡 服务地址 的页面,并记录页面显示的 后端服务器IP 。可以发现:每 6 次刷新,将有 5 次访问 权重100 的 ECS实例,1 次访问权重为 20 的 ECS实例。
  • 如上结果证明:用户可以根据实际情况调整负载均衡器的请求分发,一般将配置高的服务器设置的权重调高,配置较低的服务器设置的权重调低。这样可以避免在高并发时,配置较低的服务器因为压力较大服务异常的发生。
  1. 验证在一台后端服务器开启会话请求时,请求在会话开启的时间内只会分发到这一台服务器。
  • 打开监听:监听->配置->高级设置中的修改->开启会话保持->超时时间180秒->默认确认。

image-20200925124420888

  • 再次在浏览器中输入 负载均衡IP地址 ,多次刷新,发现在会话保持的超时时间内请求只会分发到某一台 ECS 上(究竟是哪一台 ECS 没有规定),时间超出后,重新按照权重比例分发。
  • 停止开启会话的ECS服务器。监听页面出现异常。

image-20200925125053351

  • 此时再次刷新浏览器中 负载均衡 的 IP地址 ,请求发送到健康检查状态为 正常 的ECS上。

image-20200925125206279

  • 结果证明,当某一台 ECS 出现异常后,负载均衡会自动将请求发送到健康检查状态正常的 ECS 上。
相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
2月前
|
缓存 负载均衡 算法
slb支持多种负载均衡算法
slb支持多种负载均衡算法
87 6
|
4天前
|
存储 弹性计算 负载均衡
活动实践 | ALB 实现跨地域负载均衡
本方案通过阿里云的云企业网(CEN)、转发路由器(TR)、专有网络(VPC)、云服务器(ECS)和应用型负载均衡(ALB),实现跨地域的应用负载均衡。它扩展了系统的吞吐能力,提升了可用性和安全性。用户可通过资源编排服务(ROS)一键部署,并进行负载测试验证。清理资源也简便快捷。
|
26天前
|
弹性计算 负载均衡 网络协议
ECS中实现nginx4层7层负载均衡和ALB/NLB原SLB负载均衡
通过本文的介绍,希望您能深入理解并掌握如何在ECS中实现Nginx四层和七层负载均衡,以及如何使用ALB和NLB进行高效的负载均衡配置,以提高系统的性能和可靠性。
90 9
|
2月前
|
缓存 负载均衡 监控
slb基于DNS的负载均衡
slb基于DNS的负载均衡
105 8
|
2月前
|
运维 负载均衡 安全
|
1月前
|
负载均衡 Java Nacos
常见的Ribbon/Spring LoadBalancer的负载均衡策略
自SpringCloud 2020版起,Ribbon被弃用,转而使用Spring Cloud LoadBalancer。Ribbon支持轮询、随机、加权响应时间和重试等负载均衡策略;而Spring Cloud LoadBalancer则提供轮询、随机及Nacos负载均衡策略,基于Reactor实现,更高效灵活。
96 0
|
2月前
|
负载均衡 算法
SLB-Backend的负载均衡算法
【10月更文挑战第19天】
64 5
|
4月前
|
负载均衡 网络协议 Unix
Nginx负载均衡与故障转移实践
Nginx通过ngx_http_upstream_module模块实现负载均衡与故障转移,适用于多服务器环境。利用`upstream`与`server`指令定义后端服务器组,通过`proxy_pass`将请求代理至这些服务器,实现请求分发。Nginx还提供了多种负载均衡策略,如轮询、权重分配、IP哈希等,并支持自定义故障转移逻辑,确保系统稳定性和高可用性。示例配置展示了如何定义负载均衡设备及状态,并应用到具体server配置中。
|
5月前
|
负载均衡 算法 微服务
基于gRPC的注册发现与负载均衡的原理和实战
基于gRPC的注册发现与负载均衡的原理和实战
|
1月前
|
负载均衡 前端开发 应用服务中间件
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
73 3