问:阿里云SLB负载均衡提供对多台云服务器提供流量转发服务,SLB支持基于四层和七层的流量转发,四层和七层的流量的转发分别是通过什么实现的?
答:负载均衡采用集群部署,LVS集群(四层)或Tengine集群(七层)内的相关节点服务器同时承载了数据转发和健康检查职责。
四层(TCP和UDP)是基于连接做流量调度。TCP和UDP创建一个socket访问负载均衡实例,这个源和目的IP和端口就是一个连接。
七层(HTTP/HTTPS)是基于请求做调度。比如http get请求访问一个页面。
为什么需要负载均衡SLB?
随着业务发展,我们对外提供的服务可能性能不达标,一台服务器可能无法满足业务的需求,为了解决这个问题,我们可能增加服务器的配置,但是服务器的配置(CPU,内存,硬盘)有上限,这时候就需要用到多台服务器提供同一个访问服务,这就是集群技术。
负载均衡SLB发展过程
硬件设备来负载均衡的功能
Ali软件负载均衡SLB VS 传统硬件负载均衡器
SLB是将访问流量根据转发策略分发到后台多台云服务器(ECS实例)的流量分发控制服务,来实现多台服务器提供相同的业务服务。负载均衡扩展了应用的服务能力,增强了应用的可用性。
阿里云负载均衡SLB的优点
可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提高应用系统的可用性。
负载均衡SLB应用场景
负载均衡SLB应用场景
负载均衡的应用场景为高访问量的业务,提供应用程序的可用性和可靠性
阿里云负载均衡SLB组成
负载均衡中的概念/术语
负载均衡服务Server Load Balancer:阿里云计算提供的一种网络负载均衡服务,可以结合阿里云提供的ECS服务为用户提供基于ECS实例的TCP、UDP与HTTP负载均衡服务
地域Region:代表资源所在并有效的地域,每个地域包含一组数据中心
可用区Zone:代表负载均衡所在的Zone
负载均衡实例Load Balancer:负载均衡实例可以理解为负载均衡服务的一个运行实例,用来接收流量并将其分配给后端服务器。用户要使用负载均衡服务,就必须先创建一个负载均衡实例,LoadBalancer是识别用户负载均衡实例的唯一标识。.
负载均衡服务监听Listener:负载均衡服务监听,包括监听端口,负载均衡策略和健康检查配置等
后端服务器BackendServer:接受负载均衡分发请求的一组云服务器,负载均衡服务将外部的访问请求按照用户设定的规则转发到这一组后端服务器上进行处理
服务地址Address:系统分配的服务地址,当前为IP地址。用户可以选择该服务地址是否对外公开,来分别创建公网和私网类型的负载均衡
负载均衡基础架构是采用集群部署,提供四层(TCP协议和UDP协议)和七层(HTTP和HTTPS协议)的负载均衡,可实现会话同步,以消除服务器单点故障,提升冗余,保证服务的稳定性。
阿里云当前提供四层和七层的负载均衡服务。
会话保持及权重设置的工作原理
会话保持:开启会话保持后,负载均衡会把来自同一个客户端的请求分配到同一台后端服务器上,提高访问效率
权重设置:访问请求按权重大小依次分发
负载均衡如何和云产品结合
云解析企业版(智能DNS):提供丰富的智能解析策略,合理调度来自不同线路用户的入站访问量,后续还支持根据地域调度访问流量和健康检查,实现跨地域负载均衡或全局负载均衡
云服务器ECS:挂载同地域Region的ECS,可实现流量分发和消除单点故障
云盾:结合云盾实现DDoS防护,包括清洗和黑洞
弹性伸缩服务:结合弹性伸缩服务可以做到弹性扩容
对象存储OSS,数据库RDS:用户通过ECS上的应用,可访问OSS,RDS,Memcache等应用。用户也可以直接在ECS上部署DB等应用,通过SLB做负载均衡。
创建负载均衡实例后,需要为实例配置监听。负载均衡实例监听负责检查连接请求,然后根据调度算法定义的转发策略将请求分发至后端服务器。负载均衡提供四层(TCP/UDP协议)和七层(HTTP/HTTPS协议)监听,可根据应用场景选择监听协议:
HTTPS是加密数据传输协议,安全性高。负载均衡支持将HTTP访问重定向至HTTPS,方便进行全站HTTPS部署。负载均衡已经在全部地域开放了HTTPS重定向功能。
负载均衡是可以设置会话保持功能的。如果开启会话保持,在超时时间范围内,会将同一请求转发给后端同一台服务器;如果过了超时时间,就会重新选择后端服务器。如果负载均衡本身请求流量较小,就会显得分发不那么均衡。所以如果是要做压力测试,建议先关闭会话保持测试。压力测试可以测试负载均衡的性能如何。
在使用负载均衡服务前,需要添加ECS实例作为负载均衡实例的后端服务器,用来接收负载均衡监听转发的请求。负载均衡服务通过设置虚拟服务地址,将添加的同一地域的多台ECS实例虚拟成一个高性能,高可用的应用服务池。也可以通过虚拟服务器组管理后端服务器。
可以在任意时刻增加或减少负载均衡实例的后端ECS数量,确保开启了负载均衡的健康检查功能并同时保证负载均衡实例中至少有一台正常运行的ECS。添加后端服务器时,要注意
负载均衡通过健康检查来判断后端服务器(ECS实例)的业务可用性。健康检查机制提高了前端业务整体可用性,避免了后端ECS异常对总体服务的影响。
开启健康检查功能后,当后端某台ECS健康检查出现异常时,负载均衡会自动将新的请求分发到其它健康检查正常的ECS上;而当该ECS恢复正常运行时,负载均衡会将其自动恢复到负载均衡服务中。
SLB四层和七层健康检查机制如下:
负载均衡提供监听级别的访问控制。可以针对不同的监听设置访问白名单和黑名单。
SLB的配置流程如下:
如何选购负载均衡SLB(SLB使用注意事项)
选择实例的网络类型(公网或私网)
选择协议类型:不懂!!!
在始搭建SLB服务之前,需要确定负载均衡实例的地域,网络类型,付费模式等配置。
配置负载均衡SLB的监听
在开通页面上根据实际需求配置实例类型,带宽峰值,地域,购买数量,点击“立即购买”,完成负载均衡开通。负载均衡提供四层(TCP/UDP协议)和七层(HTTP/HTTPS)监听,用户可根据应用场景选择监听协议。
在使用负载均衡服务器前,用户需要添加ECS实例作为负载均衡实例的后端服务器,用来接收负载均衡监听转发的请求。至少两台ECS,ECS就没有负载均衡的意义了。
SLB的监控指标包括:流入流量,流出流量,流入数据包数,流出数据包数,新建连接数,活跃连接数,非活跃连接数
SLB提供两种计费模式:按量付费和预付费。
SLB的计费项包括实例费,流量费,带宽费,规格费。注意无论是公网还是私网,公网中无论是按流量还是按带宽,性能保障型都会收取规格费。私网只收取规格费。
负载均衡SLB相关问题
负载均衡SLB相关限制
SLB相关限制包括:SBL实例限制,证书限制,访问控制策略组限制和带宽限制
调度算法:负载均衡支持轮询,加权轮询(WRR),加权最小连接数(WCL)和一致性哈希(CH)调度算法
健康检查:负载均衡会检查后端服务器的运行状况。当探测到后端服务器运行状况不佳时,会停止向其发送流量,然后将流量转发给其它正常运行的后端服务
会话保持:负载均衡提供会话保持功能。在会话的生命周期内,可以将同一客户端的请求转发到同一台后端服务器上
访问控制:负载均衡支持添加黑名单和白名单,灵活控制客户端访问
高可用:负载均衡可以将流量转发给多个可用区的后端服务器。并且,负载均衡已经在大部分地域支持了多可用区部署,当主可用区出现故障时,负载均衡可自动切换到备可用区上提供服务
安全防护:结合云盾,可提供5Gbps的防DDoS攻击能力
问:阿里云SLB负载均衡提供对多台云服务器提供流量转发服务,SLB支持基于四层和七层的流量转发,四层和七层的流量的转发分别是通过什么实现的?
答:负载均衡采用集群部署,LVS集群(四层)或Tengine集群(七层)内的相关节点服务器同时承载了数据转发和健康检查职责。
四层(TCP和UDP)是基于连接做流量调度。TCP和UDP创建一个socket访问负载均衡实例,这个源和目的IP和端口就是一个连接。
七层(HTTP/HTTPS)是基于请求做调度。比如http get请求访问一个页面。
输入用户名或电子邮箱地址,您会收到一封新密码链接的电子邮件。
开个玩笑,B站就是Nginx挂了[奸笑]
都行 nginx的话 需要自己购买大额的宽带 非常昂贵 就看你的业务 如果只是偶尔高访问量 不是持续的话 就slb吧
肯定是阿里云slb,slb提供了标准的api接口可以通过api方便快速得完善相关服务配置,很多觉得自己用nginx可以做负载均衡,但实际结果呢?不仅增加了运维成本,在稳定性和安全性上根本没有保证,可以说出力不讨好。当然很多企业是基于自身成本考虑,阿里云slb相对自建nginx来说,成本确实高出很多,而且限制也很多,比如在某一端口下限制代理数量等等。总之公司有钱不差钱百分百上slb,稳定安全,减少运维成本。基于成本考虑自建nginx,需要自己做好各种监控运维策论,付出更多的运维成本,稳定性相对来说没有slb稳定
slb费钱,没有固定的。nginx负载均衡费用可以固定下来。
很多觉得自己用nginx可以做负载均衡,有没必要购买阿里云负载均衡SLB呢?购买阿里云负载均衡SLB和自己用nginx做负载均衡有何区别与优势呢? 其实自己用nginx做负载均衡就是吃力不讨好,运维成本高,而且很不稳定,相对于直接购买阿里云负载均衡SLB稳定搞、容灾高、多种协议支持、并且运维成本低。
其实nginx现实中大部分都是用来做反向代理了。负载均衡的话有条件还是slb吧,网络层的快一些
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。