




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2016年8月上海理想负载均衡技术方案目录理想负载均衡产品概述1理想负载均衡产品功能2理想负载均衡成功案例3管理性…新业务、应用越来越多、简化因为众多的单点的安全产品带来的管理和运维的复杂度的问题,高性能…10G以太网的普及、3G的成熟,4G的兴起、固网接入光纤、IPV6的逐步推广。可扩展…虚拟化平台普及、公有云及私有云的应用、良好的扩展性以满足日益复杂的安全环境的功能与性能的需求。安全性…B/S应用成为主流,web2.0,XML,AJAX,JSON等新技术的广泛应用、攻击技术门槛越来越低。瓶颈…现有服务器能否满足需求?负载均衡设备是否需要升级?投资…业务流量增大是不是又要采购新的硬件设备?安全…怎么样保护我业务和数据的安全?运维…还是要面对不同厂商的不同产品?系统面临的挑战分层架构:整个架构是分层的分布式的架构,纵向包括CDN,负载均衡/反向代理,web应用,业务层,基础服务层,数据存储层。水平方向包括对整个平台的配置管理部署和监控负载均衡:基于应用广泛的4/7层负载LVS和常用的7层HTTP负载Nginx/Tengine,实现应用的负载分发和高可用配置中心:集成开源负载均衡功能,将冗杂易错的配置,通过管理中心进行可视化配置。同时,提供给运维、监控日志等功能。实现灰度发布功能。会话共享:为了满足应用间fail-over以及应用间共享Session的需要,需要集群Session共享方案,从而可让应用无缝切换理想分布式解决方案容器化:容器启动时,容器中的web应用会自动把ip、port注册到zookeeper中,然后zookeeper会通知给负载均衡,负载均衡软件再为其定制路由规则负载均衡方案概述OnePlatform访问控制智能应用交付DDOS防护SSL处理DNS安全缓存Vitrual-AD4-7层本地服务器负载均衡全局多站点(链路)负载均衡可自定义的健康检测技术高峰流量控制……高可靠性分布式缓存技术可横向扩展防DDOS攻击……高性能可视化运维配置管理应用发布管理,支持灰度策略……易运维支持基于tcp/ip连接的任务分配(4层负载均衡)支持基于应用内容的任务分配(7层负载均衡)支持负载均衡器自身的横向扩展支持web集群的动态伸缩选型建议:
四层负载:采用ali-LVS,相比官方LVS其增强的特性包括:1、新增转发模式FULLNAT,实现LVS-RealServer间跨vlan通讯
2、新增synproxy等攻击TCP标志位DDOS攻击防御功能
3、采用LVS集群部署方式
4、优化keepalived性能
七层负载:采用Tengine。其中Tengine的特性包括:
1、完全兼容Nginx,高可用,无单点
2、安全,多维度的CC攻击防御能力
3、支持7层会话保持功能
4、支持一致性hash调度LVS的局限性:1、LVS调度器对服务器池中的真实服务器的增减缺乏实时智能维护,web集群的伸缩需要管理员干预,并及时做出调整。
2、LVS服务器集群中服务负载权值是静态的,不能根据服务器的真实负载进行实时动态的调整,容易造成负载倾斜。
3、NAT/TUNNEL/DR三种转发模式配置复杂,部署成本高。
4、主备部署模式性能无法扩展。SLB类型可选软件产品四层负载LVS、ali-LVS七层负载Tengine、Nginx、Haproxy、Vanish、ATS、Squid大型网站可以存在多级代理,最前端可用F5或LVS作为入口,让它们顶外部的高并发流量,Nginx由于其强大的正则处理能力,可以作为中层代理,形成LVS->Nginx->Web集群。负载均衡技术选型服务发现通过监听器主动发现服务器部署应用的四层和七层负载均衡服务,通过管理控制台集中管理。四层负载(ali-LVS)和七层负载tengine服务通过zookeeper注册到管理控制台。健康检查针对DS-server和RS-server服务器部署独立的monitor监控应用,收集服务进程的运行状态日志。管理控制台对四层负载(ali-LVS)或七层负载(tengine)服务的管理,通过agent管理代理器实现远程操作。会话保持负载均衡应用的会话session管理,引入分布式缓存技术,实现高可用的session共享管理。可以将来自同一个用户请求始终转发至同一服务实例。服务监控部署独立的监控进程检测负载均衡服务器的资源使用情况,主动推送监控日志到管理控制台。主动发现故障并发起告警。负载均衡技术特性转发规则动态加权轮询模式,依据健康度加权比例将请求转发至后端。最小连接数模式,依据后端当前的连接数将新的请求转发至连接数最少的机器。发布策略支持4/7层设置灰度策略,将部分流量转发至特定服务器实例。支持真实IP透传,黑白名单设置,流量控制和特定端口转发目录理想负载均衡产品概述1理想负载均衡产品功能2理想负载均衡成功案例3TCP和UDP请求会话保持算法基于源IP保持Cookie(插入、被动、改写)HTTP-HeaderRadiusSSLSessionID流量分发算法静态算法:轮询、最小连接、加权轮询、加权最小连接
……动态算法:最快响应时间、加权轮询动态反馈、最快响应、Hash算法、UDP负载……服务器健康检测ICMP、TCP、UDP、HTTP、HTTPS、FTP、RTSP、SMTP、POP3、
SNMP支持TCL、Python、Shell、Perl自定义脚本负载均衡4层负载均衡探测模块功能:实时动态加载节点:应用发布时注册到Zookeeper,由探测模块实时通知IPVS动态反馈负载均衡:根据综合负载和当前权值,使用加权轮叫调度算法来调度新的请求连接
实时动态加载节点:
1、应用管理发布应用,同时注册到zookeeper;2、探测模块从zookeeper获取可用的应用节点;3、将新的应用节点通知IPVS动态调整;
权重系数:综合负载:节点权值:4层负载均衡-实现方案1、当用户向负载均衡调度器(DirectorServer)发起请求,调度器将请求发往至内核空间2、PREROUTING链首先会接收到用户请求,判断目标IP确定是本机IP,将数据包发往INPUT链3、IPVS是工作在INPUT链上的,当用户请求到达INPUT时,IPVS会将用户请求和自己已定义好的集群服务进行比对,如果用户请求的就是定义的集群服务,那么此时IPVS会强行修改数据包里的目标IP地址及端口,并将新的数据包发往POSTROUTING链4、POSTROUTING链接收数据包后发现目标IP地址刚好是自己的后端服务器,那么此时通过选路,将数据包最终发送给后端的服务器4层负载均衡-LVS工作原理4层负载均衡-LVS/NAT1、当用户请求到达DirectorServer,此时请求的数据报文会先到内核空间的PREROUTING链。此时报文的源IP为CIP,目标IP为VIP2、PREROUTING检查发现数据包的目标IP是本机,将数据包送至INPUT链3、IPVS比对数据包请求的服务是否为集群服务,若是,修改数据包的目标IP地址为后端服务器IP,然后将数据包发至POSTROUTING链。此时报文的源IP为CIP,目标IP为RIP4、POSTROUTING链通过选路,将数据包发送给RealServer5、RealServer比对发现目标为自己的IP,开始构建响应报文发回给DirectorServer。此时报文的源IP为RIP,目标IP为CIP6、DirectorServer在响应客户端前,此时会将源IP地址修改为自己的VIP地址,然后响应给客户端。此时报文的源IP为VIP,目标IP为CIP4层负载均衡-LVS/DR1、当用户请求到达DirectorServer,此时请求的数据报文会先到内核空间的PREROUTING链。此时报文的源IP为CIP,目标IP为VIP2、PREROUTING检查发现数据包的目标IP是本机,将数据包送至INPUT链3、IPVS比对数据包请求的服务是否为集群服务,若是,将请求报文中的源MAC地址修改为DIP的MAC地址,将目标MAC地址修改RIP的MAC地址,然后将数据包发至POSTROUTING链。此时的源IP和目的IP均未修改,仅修改了源MAC地址为DIP的MAC地址,目标MAC地址为RIP的MAC地址4、由于DS和RS在同一个网络中,所以是通过二层来传输。POSTROUTING链检查目标MAC地址为RIP的MAC地址,那么此时数据包将会发至RealServer5、RS发现请求报文的MAC地址是自己的MAC地址,就接收此报文。处理完成之后,将响应报文通过lo接口传送给eth0网卡然后向外发出。此时的源IP地址为VIP,目标IP为CIP6、响应报文最终送达至客户端将请求报文的目标MAC地址设定为挑选出的RS的MAC地址1、当用户请求到达DirectorServer,此时请求的数据报文会先到内核空间的PREROUTING链。此时报文的源IP为CIP,目标IP为VIP。2、PREROUTING检查发现数据包的目标IP是本机,将数据包送至INPUT链3、IPVS比对数据包请求的服务是否为集群服务,若是,在请求报文的首部再次封装一层IP报文,封装源IP为为DIP,目标IP为RIP。然后发至POSTROUTING链。此时源IP为DIP,目标IP为RIP4、POSTROUTING链根据最新封装的IP报文,将数据包发至RS(因为在外层封装多了一层IP首部,所以可以理解为此时通过隧道传输)。此时源IP为DIP,目标IP为RIP5、RS接收到报文后发现是自己的IP地址,就将报文接收下来,拆除掉最外层的IP后,会发现里面还有一层IP首部,而且目标是自己的lo接口VIP,那么此时RS开始处理此请求,处理完成之后,通过lo接口送给eth0网卡,然后向外传递。此时的源IP地址为VIP,目标IP为CIP6、响应报文最终送达至客户端在原有的IP报文外再次封装多一层IP首部,内部IP首部(源地址为CIP,目标IIP为VIP),外层IP首部(源地址为DIP,目标IP为RIP)4层负载均衡-LVS/Tun客户端属性请求任意字段LanguageURICookiesHOSTHTTP-Head请求协议HTTP
GETHTTP
POSTTCP请求HTTP请求WEB服务器1WEB服务器2Pad浏览器笔记本浏览器请求负载均衡7层负载均衡探测模块:应用负载探测,应用状态探测,结果上报应用管理器应用管理平台:控制应用、根据应用负载设定通知云平台调整资源Tengine:
1、应用管理器根据负载、资源、应用情况修改配置文件;2、配置文件同步到Tengine主机;3、Tengine重新加载新的配置(不停机、不重启服务);7层负载均衡-实现方案技术实现说明:Session存在分布式共享池内,用户请求可以由负载均衡器随机分配服务器,访问在各个服务器之间切换无需重复生成session。Session数据存在分布式共享池内,共享池由Redis集群来实现,不会出现单点故障。Session存储在redis服务器,以sessionId为key,控制redis的key过期时间管理session的失效时间,客户端超过一定时间不再访问此session,则session到期自动失效。支持不同web集群之间的session共享SessionID的共享:Jetty/Tomcat容器通过Hash算法得到唯一的ID,赋给实例化的session,放入SessionManagerSession中数据的复制:session数据在不同容器中的一致性和高效读取Session的失效机制:当某个系统的session失效时,其他所有系统的与之相关联的session也要同步失效会话保持与共享流量控制:tengine流量编程式控制七层负载流量控制技术实现:tengine+lua编程实现方式:在管理控制台可视化配置,后端生成tengine/Nginx的cnf文件,通过agent控制器更新到对应的tengine应用上,并重启应用使其生效。实现流控功能:响应时间范围控制响应次数控制请求ip的路由控制请求uri的模式匹配控制黑白名单过滤控制脚本示例:{"cluster_id":2,"port":8080,"location":"/test1/test2","control_type":"keepaliveRequests","controller_script":{"req_name":"requesttime","limit_conn_name":"","limit_conn":"","limit_rate_after":"","limit_rate":"","keepalive_timeout":"100","keepalive_requests":"500"}}流量控制DS-serverRS-serverweb-serverZK集群Agent服务Agent服务Agent服务控制台(可集群)monitor服务功能实现:各位服务器部署单独的agent的功能模块,此模块的功能是执行控制台发起的任务指令,包括有服务嗅探与发现,服务器健康检查,服务器配置变更执行等。管理控制台部署monitor模块负责与各个服务器agent进行通信,并将服务信息注册到zk集群上。Monitor定时发起检测各个服务器、应用的运行信息,生成监控信息日志,并进行告警处理。服务发现与监控通过monitor监控和agent实现产品界面-负载均衡产品界面-LVS集群产品界面-Tengine流量编程控制产品界面-Tengine集群负载均衡性能指标:测试部署图性能指标:单台tengine配置的性能测试【测试分析】1.该测试所采用的应用为执行时间20ms的jsp。2.由上图可以看出,随着后端应用服务器的增加,tengine在各并发下的TPS相应增长,增长幅度接近线性。当两台增加到三台时,在300并发下的TPS增长并不明显,原因为压力不够,当加大并发量时,TPS增加就接近线性了。性能指标:LVS+tengine扩展性能测试【测试分析】1、该测试所采用的应用为执行时间20ms的jsp。2、由上图可以看出,随着后端应用服务器的增加,lvs在各并发下的TPS相应增长,增长幅度接近线性。当两台增加到三台时,在300并发下的TPS增长并不明显
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45357-2025船用塑料管道系统聚乙烯(PE)管材及管件
- 妇幼保健员考试心理素质培养试题及答案
- 2024年全媒体运营师考生指南试题
- 土木工程师工程伦理考题试题及答案
- 二零二五年度医疗诊所负责人医疗责任免责责任协议
- 2025年度航空航天复合材料厂房退租合同
- 2025年度酒店式公寓租赁协议延期及管家服务补充协议
- 2025年度网络购物平台虚拟货币充值协议模板
- 解析健康管理师考试流程试题及答案
- 二零二五年度医疗设备销售返利与售后服务保障协议
- 专职消防合同范例
- 《油气储存企业安全风险评估细则(2025年修订版)》解读与培训
- 【历史】隋唐时期的科技与文化课件 2024-2025学年统编版七年级历史下册
- 2025年全球及中国重组骨形态发生蛋白行业头部企业市场占有率及排名调研报告
- 电网工程设备材料信息参考价(2024年第四季度)
- 猴痘患者的护理查房
- 《你当像鸟飞往你的山》读书分享读书分享笔记
- 2025年全年日历-含农历、国家法定假日-带周数竖版
- DB42T2305-2024高品质住宅技术标准
- 《模拟电子技术基础教程》课件第七章 正弦波振荡电路
- 外研版(2024)七年级上册英语Unit4学情调研测试卷(含答案)
评论
0/150
提交评论