集群通信系统是一种用于集团调度指挥通信的移动通信系统,主要应用在专业移动通信领域。该系统具有的可用信道可为系统的全体用户共用,具有自动选择信道功能,它是共享资源、分担费用、共用信道设备及服务的多用途、高效能的无线调度通信系统
集群的类型:
LB:负载均衡集群,提供更好的服务容量
HA:高可用集群
HP:解决复杂问题
LB:
F5, BIG IP, Citrix NetScale, A10,LVS
LVS:
NAT: 地址转换
其特征为:
集群节点跟director必须在同一个IP网络中
RIP地址通常为私有地址,仅用于各集群节点间的通信
director位于client和real server之间,不负责处理进出的所有通信
realserver必须将网关指向DIP
支持端口映射
realserver可以使用任何的操作系统
较大规模应用场景中,director易成为系统瓶颈
DR: 直接路由
其特征为:
各集群节点跟director必须在同一个物理网络中
RIP可以使用公网地址,实现便捷的远程管理和监控
director仅负责处理入站请求,响应报文则由realserver直接发往客户端
realserver不能将网关指向DIP
不支持端口映射
大多数操作系统
可以处理多个realserver
TUN :隧道
其特征为:
集群节点可以跨越互联网
realserver的RIP必须是公网地址
director仅处理入站请求,响应报文则由realserver直接发往客户端
响应报文不通过director
只有支持隧道功能的操作系统才能用于realserver
不支持端口映射
*注: CIP:客户端ip
VIP:director面向客户端的集群服务
DIP:director面向real server的地址
RIP:real server
director:调度器
调度算法:
固定调度
rr:轮叫,轮询
wrr:weight,加权
sh: source hash,源地址hash
若引入session share 的话,就可以不用使用sh
dh:把同一个地址的IP请求发送给同一个cache server
动态调度方法(scheduler):
lc:最少连接
active*256 + inactive
谁的小,挑谁
wlc:加权最少连接
(active*256 + inactive)/weight
sed:最短期望延迟
(active +1)*265/weight
nq:never queue 永不排队(改进的sed)
LBLC:基于本地的最少连接
DH:
LBLCR:基于本地的带复制功能最少连接
例子:
LVS的NAT形式,web服务器的负载均衡集群
VIP:172.16.14.55
DIP:192.168.10.5
RIP:172.16.10.10
RIP:172.16.10.11
CIP:物理机
查看内核中是否就有ipvs功能
1. 进行安装ipvsadm
# yum install ipvsadm
修改ip地址为
![集群LVS之NAT配置_服务器](https://s2.51cto.com/attachment/201305/214909910.png?x-oss-process=image/resize,m_fixed,w_1184)
开启网路转发功能
![集群LVS之NAT配置_服务器_02](https://s2.51cto.com/attachment/201305/215353689.png?x-oss-process=image/resize,m_fixed,w_1184)
2. 在real server1上安装httpd服务
# yum install httpd(前提是需要有yum源)
配置httpd服务,进行测试
![集群LVS之NAT配置_服务器_03](https://s2.51cto.com/attachment/201305/215038760.png?x-oss-process=image/resize,m_fixed,w_1184)
修改real server的ip地址,使之成为real server服务器
![集群LVS之NAT配置_服务器_04](https://s2.51cto.com/attachment/201305/215232479.png?x-oss-process=image/resize,m_fixed,w_1184)
3.在real server2上安装http的服务
# yum install httpd
配置http服务,并进行测试
![集群LVS之NAT配置_服务器_05](https://s2.51cto.com/attachment/201305/215105885.png?x-oss-process=image/resize,m_fixed,w_1184)
修改其ip地址:
![集群LVS之NAT配置_服务器_06](https://s2.51cto.com/attachment/201305/215250548.png?x-oss-process=image/resize,m_fixed,w_1184)
在director上进行配置
![集群LVS之NAT配置_服务器_07](https://s2.51cto.com/attachment/201305/215326225.png?x-oss-process=image/resize,m_fixed,w_1184)
进行测试
![集群LVS之NAT配置_服务器_08](https://s2.51cto.com/attachment/201305/215455823.png?x-oss-process=image/resize,m_fixed,w_1184)
![集群LVS之NAT配置_服务器_09](https://s2.51cto.com/attachment/201305/215527585.png?x-oss-process=image/resize,m_fixed,w_1184)
修改配置使其成为加权算法调度
![集群LVS之NAT配置_服务器_10](https://s2.51cto.com/attachment/201305/215546551.png?x-oss-process=image/resize,m_fixed,w_1184)
ipvsadm
管理集群服务的命令行工具
添加: -A -t|u|f service-address [-s scheduler]
-t:TCP协议的集群
-u:UDP协议的集群
service-address: IP:PORT
-f:FWM:防火墙标记
service-address: Mark Number
修改: -E
删除: -D -t|u|f service-address
管理集群服务中的real server
添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight]
-t|u|f service-address:事先定义好的某集群服务
-r server-address: 某RS的地址,在NAT模型中,可使用IP:PORT实现端口映射;
[-g|i|m]: LVS类型
-g: DR
-i: TUN
-m: NAT
[-w weight]: 定义服务器权重
修改:-e
删除:-d -t|u|f service-address -r server-address
查看
-L|l:
-n:数字格式显示主机地址和端口
--stats:统计数据
--rate:每秒的连接数
--timeout:每个tcp,tcpfin,udp会话的超时时间限定
--daemon:显示
--sort:对列出的集群服务进行排序,默认为升序
-c:显示当前的ipvs连接状况
删除所有集群服务
-C:清空ipvs规则
保存规则:
-S:
# ipvsadm -S > /path/to/somefile
载入此前定义的规则:
-R:
# ipvsadm -R < /path/to/somefile