一,概念
1,根据群集所针对的目标差异,可分为三种类型
(1)负载均衡群集
(2)高可用群集
(3)高性能运算群集
2,负载均衡群集(Load Balance Cluster)
以提高应用系统的响应能力、尽可能处理更多的访问请求、减少延迟为目标,获得高并发、高负载(LB)的整体性能
LB的负载分配依赖于主节点的分流算法
3, 高可用群集(High Availability Cluster)
以提高应用系统的可靠性、尽可能地减少中断时间为目标,确保服务的连续性,达到高可用(HA)的容错效果
HA的工作方式包括双工和主从两种模式
4, 高性能运算群集(High Performance Computer Cluster)
以提高应用系统的CPU运算速度、扩展硬件资源和分析能力为目标,获得相当于大型、超级计算机的高性能运算(HPC)能力
高性能运算群集的高性能依赖于“分布式运算”、“并行计算”,通过专用硬件和软件将多个服务器的CPU、内存等资源整合在一起,实现只有大型、超级计算机才具备的计算能力
{1} 负载均衡集群搭建
群集的负载调度技术有三种工作模式
地址转换
IP隧道
直接路由
《1》地址转换(Network Address Translation)
简称NAT模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口
服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式
《2》IP隧道(IP Tunnel)
简称TUN模式,采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器
服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信
《3》直接路由(Direct Routing)
简称DR模式,采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络
负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道
二, 实验
(1)NAT模式
准备环境
一台调度器:配置双网卡 VM1:192.168.100.41 桥接网卡:10.0.2.73
两台WEB服务器集群池:
内网:192.168.131.130 外网192.168.211.201 调度服务器
192.168.131.128 wed服务器
这边的网关必须指向192.168.100.42这个地址
一台windos10测试机
modprobe ip_vs //加载ip_vs模块
cat /proc/net/ip_vs //查看ip_vs 信息
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
翻译:
IP虚拟服务器版本1.2.1(大小=4096)
端口调度器标志
—> RemoteAddress:端口转发权重ActiveConn InActConn
yum install -y ipvsadm //安装ipvsadm 管理工具
[root@localhost ~]# ipvsadm -v //查看版本
ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)
ipvsadm -A -t 192.168.211.201:80 -s rr // 创建虚拟服务器
对于负载均衡调度器来说,VIP 必须是本机实际已启用的IP地址,若群集的VIP地址为192.168.211.201,针对80 端口提供分流服务,使用轮询的调度算法
注:-A 表示添加虚拟服务
-t用来指定VIP地址及tcp端口,
-s用来指定负载调度算法{(轮询:rr),(加权轮询:wrr),(最少连接:lc),(加权最少连接:wlc).
ipvsadm -a -t 192.168.211.201:80 -r 192.168.131.128:80 -m -w 1
ipvsadm -ln //查看添加的节点
默认是80端口
上述输出结果,FORWARD列下Masq 对应Masquerade (地址伪装),表示采用的群集模式为NAT; 如果是Route,则表示采用的群集模式为DR。
删除服务节点
ipvsadm -d -r192.168.211.135:80 -t 192.168.211.201:80
需要删除某一个节点时,使用选项-d
需要删除整个虚拟服务器时,使用选项-D
保存负载分配策略
使用 导入/导出 工具 ipvsadm-restore / ipvsadm-save
[root@localhost ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@localhost ~]# cat /etc/sysconfig/ipvsadm
-A -t www.b.com:http -s rr
-a -t www.b.com:http -r 192.168.131.128:http -m -w 1
配置负载调度器
(1)配置SNAT转发规则
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -p //*刷新一下*
到wed服务器中部署http服务
浏览器访问测试
(2)搭建DR模式
准备环境
两台linux服务器
调度器 192.168.211.200
wed服务器 192.168.211.135
一台windos测试 能上网
注 :许多操作一样就不解释了,还请谅解!!
后端服务器安装apache服务并部署网页
wed服务器和调度器都要添加
ip addr add 192.168.211.203 dev ens33 //添加虚拟ip
给调度器添加虚拟vIP(即客户端访问的vIP)
ipvsadm -A -t 192.168.211.203:80 -s rr
ipvsadm -a -t 192.168.211.203:80 -r 192.168.211.135:80 -g
[root@localhost ~]# ipvsadm-save > /etc/init.d/ipvsadm //保存策略
[root@localhost ~]# cat /etc/init.d/ipvsadm
-A -t www.a.com:http -s rr
-a -t www.a.com:http -r 192.168.211.135:http -g -w 1
浏览器访问
也可以使用 ipvsdem ln 查看效果
[root@localhost ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.211.203:80 rr
-> 192.168.211.135:80 Route 1 8 1