LVS篇
规划图 DR模式
规划图 NAT 模式
ip tun:隧道模式
IP负载均衡与负载调度算法:
LVS的IP负载均衡技术:是通过IPVS模块来实现的,IPVS是LVS集群系统的核心软件。它的主要作用是:安装在 Director Server (前端服务器)上,同时Director Server上虚拟出一个IP 地址(VIP),用户必须通过这个虚拟的VIP地址访问服务。-----访问请求首先经过VIP到达负载均衡调度器,然后由负载均衡调度器根据设定好的算法 从 Real Server 列表中选取一个服务节点响应用户请求。
NAT:地址转换(类似于DNAT)
1、集群点跟director必须工作在同一个IP的网络中
2、RIP通常是私有地址,仅用于各集群节点间的的通信
3、director位于client和real server之间,并负责处理进出的所有通道。
4、realserver必须将网关执行DIP
5、director支持端口映射
6、realserver可以使用任何类型的操作系统(os)
7、较大规模应用场景中,director易成为系统瓶颈
DR:直接路由(及用于作为源地址)
1、各集群节点跟director必须在同一个物理网络中;
2、RIP可以使用公网地址,实现便携的远程管理和监控;
3、director仅负责处理入站请求,形影报文则有realserver直接发往客户端
4、realserver不能将网关指向DIP,而是直接指向前端网关;
5、director不支持端口映射
6、大多数操作系统能够用在realserver
7、director能够处理更多的realserver
TUN:隧道
1、集群节点可以跨越Internet
2、RIP必须是公网地址
3、director仅负责处理入站请求,形影报文则有realserver直接发往客户端
4、realserver网关不能指向director
5、只有咫尺隧道功能的OS才能用于realserver
6、不支持端口映射
Lvs调度算法
固定调度:不考虑后端服务器当前的活动连接和非活动连接的情况
Rr 轮询 Round-Robin
Wrr weight 加权,根据权重进行轮询
Sh source address hash 源地址哈希
Dh destination address hash //提高缓存命中率,最常用于缓存服务器
*高可用集群示意图
**
piranha工具可以使用web界面配置ha/lvs.cf配置文件进行搭配高可用集群系统*
**
**通过keepalived搭建高可用集群
- 安装keepalived+ipvsadm环境
- 添加虚拟IP地址
- 编辑lvs的配置文件
- 配置real server服务器,两台服务器的配置一样
- 设置虚拟网卡
- 添加路由
ipvsadm 参数详解
用法:
ipvsadm -A|E -t|u VIP:PORT [-s scheduler] [-p [timeout]] [-M netmask]]
-A:定义新的集群服务
-E:修改已有的集群服务
-D:删除某集群服务
-s:指定调度算法,可选项:rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq ,默认的调度算法是: wlc.
-C:清空
-S:等同ipvsadm-save 保存虚拟服务器规则,输出为-R 选项可读的格式
-L|l:列出当前已定义的集群服务和real server
–stats:显示统计信息 与-L同时使用
–rate:显示入站响应速率 与-L同时使用
-c:显示LVS 目前的连接 与-L同时使用
-n:不进行反向解析 与-L同时使用
-Z:清空计数器
-t –tcp-service service-address 说明虚拟服务器提供的是tcp 的服务
-u –udp-service service-address 说明虚拟服务器提供的是udp 的服务
-f –fwmark-service fwmark 说明是经过iptables 标记过的服务类型。
-p –persistent [timeout] 持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理。timeout 的默认值为300 秒。
ipvsadm -a|e -t|u VIP:PORY -r RIP [-g|i|m] [-w weight]
-a:添加real server
-e:修改real server
-g:指定LVS 的工作模式为直接路由模式(也是LVS 默认的模式)
-i:指定LVS 的工作模式为隧道模式
-m:指定LVS 的工作模式为NAT 模式
-w:真实服务器的权值