负载均衡:
负载均衡是把一个可并行计算的程序的任务(或者什么东西)分配到分布式系统的各个cpu上,从而最小化最终完成时间的问题。
LB 主要考虑2方面的耗费:
total_cost = computation_cost + communication_cost.
似乎这两个耗费之间存在矛盾,如果将负载都分配到一个cpu上,那么通信耗费肯定会很少,然而总的完成时间会加长。
如果将负载均匀的分布到各cpu上,通信耗费又会增加。所以,要折衷考虑。
LB 分静态LB 和动态LB算法。
(1)静态LB
是在编译程序阶段,就固定好了确切的分配策略,在执行之前,将任务分配给个系统。在执行过程中,不存在计算机之间的通信
(2)动态LB
是在执行过程中,根据分布式系统的运行情况,分配任务。
LVS DR 工作原理
记录一下LVS中DR模式的运行过程
一个主LDSERVER , 可以有自己单独的ip(192.168.1.1),vip 设置为 vip1(192.168.1.100)
一个备份LDSERVER, 自己的ip(192.168.1.2)vip当然也是vip1(利用keepalived检测,出错时会接管)
几台REAL_SERVER,这些real server必须在一个同一个物理连接上,也就是通过交换机直接连接
假设有2台real server,
1的ip为 192.168.1.3
2号机的ip为 192.168.1.4
怎样添加共享的vip呢?将1,2号机上的lo上添加一个 lo:0 它的ip是vip, 广播也是vip
那么这个包的流程是怎样处理呢?
1)用户请求dns得到LDserver的ip,为什么?因为只有ldserver提供icmp ping的应答,其他real server虽然也有此vip,但是配置时都关掉了应答,所以自然请求包会首先到达LDserver。
2)LDserver根据规则将请求包的目的mac地址写成一个realserver的mac地址,发出去
3)realserver接到该包后(在一个物理连接上,如果不是自己的数据包,根据mac地址会丢掉)向上层递交,然后自己的一个lo:中的ip正好是目的ip,那就可以处理该包了,并且直接给用户应答的时候也不用修改源ip,因为自己有一个lo的ip就是那个vip。这个地方被自己困住了很久。
从而LD上只负责映射和记录映射,并不保存链接,从而不会受单台pc的连接数的限制,瓶颈上升到带宽和单位时间内可以记录映射,查找映射的计算上。
分享到:
相关推荐
this doucment is a document for load balancing for open sources,important open source software LVS,HAProxy,NETScale and F5 .use this tools to make a balanc framework in linux kernel os.
fpga上实现的动平衡检测模块,只需要一编码器就可以
EQBalanceView跟随手指的小球,原文博客地址:http://blog.csdn.net/u013171283/article/details/78805104
UCI Car、Balance_scale、Win预处理后,适合分类操作的数据集。 有文本备注,如何处理
Hopping-in-Three-...单腿跳跃机器人,参考marc raibert的legged robots that banlance 使用: 在webots2019b上打开Hopping in Three Dimensions\worlds\empty文件 电脑键盘 ↑ ↓ ← → 用于改变机器人跳跃方向。
banlance-transfer接口
ERP Fiscanl Report - Banlance Sheet
语言:English Cookie的最好的朋友! 现代cookie经理。 MILK是现代的cookie管理器,旨在简化您与cookie交互的方式。 借助现代且易于使用的界面,可以轻松管理浏览器的Cookie。 此扩展插件具有以下功能::cookie:实时...