lvs组成
1、lvs基于内核态的netfilter框架实现的IPVS功能,工作在内核态用户配置VIP等相关信息并且传递到IPVS 就需要用到IPVSadm工具。
2、ipvsadm:IPVSadm是lvs用户态的配套的工具,可以实现VIP和RS 增删改查。
IPVSadm就是类似于iptables工具地位。
lvs作用
1、主要用于多服务器的负载均衡
2、工作在网络层,可实现高性能,高可用的服务集群技术
3、廉价,可以把许多低性能服务器组合在一起形成一个超级服务器
4、易用,配置简单,有多重负载均衡的方式
5、稳定可靠,即使在集群的服务器中某台服务器无法正常工作,也不影响整体效果
6、可扩展性好
lvs负载均衡集群
集群
是由多台主机组成的一个集合,对外表现为一个整体,对外只需提供相同的服务。
使用于什么场景
通常在高并发的时候使用。
集群的分类
1、负载均衡群集
减少响应延迟,提供并发处理能力。
2、高可用群集
(HA表示高可用)>冗余、备份,解决单点故障
提高系统的稳定性,减少服务中断的时间,减少损失。
3、高性能运算群集
(高性能组成的分布式)
分布式:将请求的数据分成多个进行处理,处理完后响应给客户。
具有高性能运算能力,可以基于分布式和并发进行运算。
负载均衡器集群的架构
数据流向
公网通过vrrp------>vip------>进行访问------>进入负载调度器,通过调度算法,以及RIP地址进行发送------>服务器池,使用服务器的资源通过------>共享存储,提供网站,存储资源
负载均衡器的工作模式
1、地址转换(NAT转换)
安全性高,但负载调度器及作为网关,又是数据进出口,大量数据进入会导致负载过高。
2、IP隧道(TUN模式)
采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器。
服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信。
3、直接路由
用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络。负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道。
数据流向:用户------》公网------》路由器------》调度器------》节点服务器
节点服务器------》直接通过相同的路由器------》用户
lvs负载均衡器的调度算法
1、轮询
2、加权轮询
3、最少连接数
4、加权最少连接数
实例:
1、部署共享存储
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
yum install -y nfs-utils rpcbind
#安装软件
systemctl start nfs.service
systemctl start rpcbind.service
#启动服务
mkdir /opt/kgc /opt/benet
chmod 777 /opt/kgc /opt/benet
vim /etc/exports
2、配置节点服务器(后端服务器)两个配置一样
yum install -y httpd
systemctl start httpd.service
yum install -y nfs-utils rpcbind
systemctl start rpcbind.service
#web1:192.168.10.16
mount.nfs 192.168.10.18:/opt/kgc /var/www/html/
echo 'this is lmz' > /var/www/html/index.html
#web2:192.168.10.17
mount.nfs 192.168.10.18:/opt/benet /var/www/html/
echo 'this is zhuo' > /var/www/html/index.html
3、配置负载调度器LVS
vim /etc/sysctl.conf
iptables -t nat -F
iptables -F
iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -o ens37 -j SNAT --to-source 12.0.0.1
#配置地址转换
modprobe ip_vs
#手动加载ip_vs模块
yum install -y ipvsadm
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm.service
ipvsadm -C
#清除原有策略
ipvsadm -A -t 12.0.0.1:80 -s rr
ipvsadm -a -t 12.0.0.1:80 -r 192.168.10.16:80 -m -w 1
ipvsadm -a -t 12.0.0.1:80 -r 192.168.10.17:80 -m -w 1
ipvsadm
#启动策略
查看结果