LVS---负载均衡

集群:为解决某个特定问题将多个计算机组合起来形成一个单系统
 

提高性能的两个方向

垂直扩展:向上扩展,增加单个机器的性能。升级硬件。硬件升级是由瓶颈的
水平扩展:向外扩展,增加设备。并行的运行多个服务,通过网络和算法,来调度服务分配的的问题。

集群类型:

负载均衡集群:local blance(LB) 多个主机组成,每个主机只能一部分访问请求。靠负载均衡算法来实现
高可用集群: HA high availiablity 避免SPOF (single point offailuer) 单点故障。当系统出现一部分组件出现故障,可以保障整个系统继续运行。

主从---同步(某些特定服务需要)----负载均衡
HPC : high-performance computing 快速转发,快速响应

集群的可靠性指标:

MTBF :mean time between failure 系统在正常运行期间无故障的平均时间,一般用天或小时数来表示。MTBF值越高,系统的可靠性越高;出现故障的概率越小。
MTTR : 系统发生故障到恢复正常运行的时间,一般用小时或者天数表示。MTTR值越小,说明系统恢复故障的能力越强。
A :系统可靠性指标 A值越高越好
A=MTBF/(MTBF+MTTR)
99.9%
99.99%
99.9999%
9越多响应时间越少

停机时间:

计划内停机 :预定时间内的维护或者检修时间。自定义。
计划外停机 :运维人员关注的就是计划外。

设计集群时需要考虑的一些原则

可扩展性 集群要有随时可以添加或者删除设备的能力。动态的扩缩容。
可靠性 集群中如果有节点发生故障,可以快速检测并且自动切换。
负载均衡 合理的分配负载,避免单个节点过载,影响整体的性能。
可维护性 能够方便的进行配置,部署,维护,监控,降低成本。
安全性 防止恶意的攻击,以及数据泄密,数据丢失。
易用性 相关的工作人员,可以方便的进入集群,能够快速的开发、部署等等。

LVS---linux virtual server

部署在linux系统通过内核层面实现负载均衡的软件。
开发者 : 章文嵩 发起的开源项目。
主要作用 :多个后端服务器组成一个高可用,高性能,负载均衡的高性能集群。通过负载均衡的算法将客户端请求发送到后端服务器。

阿里的SLB server load balance 基于Ivs+keepalived实现。


LVS当中的术语

vs (virtual server) lvs服务的逻辑名字,外部访问lvs集群时提供的一个虚拟ip地址和端口。
DS (Director server) Is集群当中的主服务器,也交调度器,是整个Ivs集群的核心,接受客户端的请求转发到后端RS。
RS (real server) Ivs的后端的真是服务器的ip,接受到了DS的请求之后,返回响应结果。
CIP (client ip) 客户端的ip地址。
VIP (virtual ip) 对外提供访问的统一虚拟IP地址。
DIP (director ip) 调度器在lvs内部使用的IP地址。用于和真实服务器进行通信。
RIP (real ip) 后端真实服务器的ip地址。

lvs访问的大致流程:

1、客户端访问都是访问vip
2、DS接受到请求,根据调度算法选择后端服务器(rs),请求发送给rs
3、RS处理请求并将响应发送到DS
4、DS把RS的响应包装成自己响应,发送到客户端

客户端不知道请求的真实服务器,也不知道响应的服务器是谁

LVS---负载均衡_第1张图片
 

LVS的负载均衡方式:

三种方式:NAT DR TUN
其中NAT和DR最常用的方式,TUN需要付费。

NAT模式

优点:配置简单

缺点:性能损失和单点故障

DR模式

直接路由模式:请求由调度器完成,但是响应客户端由真实服务器直接响应,不需要通过调度器。
优点:性能高,而且可以配置vip当中的高可用。不存在单点故障。

TUN模式

隧道协议,把请求转发后端服务器,需要在后端服务器配置隧道协议
缺点:需要付费。很少用,基本上都使用免费的。

ipvsadm

工作:设置lvs
ipvsadm工具:管理lvs内核模块的命令行工具,可用于配置和管理lvs集群

linux需要下载:yum -y install ipvsadm

选项

选项 说明
-A 添加虚拟服务器
-D 删除整个虚拟服务器
-s 指定负载调度的算法
-a 添加真实服务器
-d 删除真实服务器
-t 指定vip地址的端口号
-r 指定rip的端口号
-m 表示使用nat模式
-g 表示使用DR模式
-i 表示使用TUN模式
-w 设置真实服务器的权重
-p 设置连接保持的时间60秒(默认不带)
-ln 以数字和列表的形式查看lvs的配置信息

算法

静态调度(固定调度)
rr    轮询
wrr 加权轮询
dh  目的地址hash
    根据ip地址查找静态hash表,获取需要真是的RS的地址
sh 源目地址hash

动态调度:
lc  最小连接数调度
wlc  加权最小连接数调度
    权重高的,转发的就多,为了额避免性能瓶颈,在跟上最小连接数分配,可以把请求往连接数量较小的服务器继续转发。
lblc  基于地址的最小连接数调度。
将来自同一个目的地址的请求分配给RS,如果这台服务器尚未满负荷,就会把请求分配给连接数最小的rs,而且在下一次转发时会优先考虑这台RS。

你可能感兴趣的:(lvs,服务器,网络)