一、LVS工作原理
1、客户端访问调度器时,调度器通过网络地址转换,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器;真实服务器的响应报文通过调度器时,报文的源地址被重写,再返回给客户,完成整个负载调度过程。
实战:配置LVS-NAT模式
前期准备工作
1、准备3台主机
3台主机IP分别为
Centos7-1(负载均衡器):192.168.211.11 模拟公网IP VIP虚拟IP
192.168.6.1 模式内网IP
Centos7-2(web服务器):192.168.6.2 内网IP
Centos7-2(web服务器):192.168.6.3 内网IP
2、三台Centos执行iptables -F , 清除规则
3、/etc/selinux/config,关SELinux
getenforce
Disabled
配置lvs
打开路由转发功能 ------在分发器上执行
[root@lvs ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 打开路由转发功能
[root@lvs ~]# sysctl -p 配置生效
net.ipv4.ip_forward = 1
安装: LVS管理工具:ipvsadmin
[root@lvs ~]# yum install ipvsadm 安装lvs安装包
使用ipvsadm命令设置规则
[root@lvs ~]# ipvsadm -A -t 192.168.211.11:80 -s rr
-A 添加虚拟服务器
-t 表示TCP的服务
-s 指定调度算法 rr代表轮询
[root@lvs ~]# ipvsadm -a -t 192.168.211.11:80 -r 192.168.6.2 -m
[root@lvs ~]# ipvsadm -a -t 192.168.211.11:80 -r 192.168.6.3 -m
-a 指定添加 real server的地址
-r 指定real server的IP地址
-m表示NAT模式
查看是否配置上去
[root@lvs ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.211.11:80 rr
-> 192.168.6.2:80 Masq 1 0 0
-> 192.168.6.3:80 Masq 1 0 0
保存配置或规则
需要把ipvsadm设置为开机自启动
[root@lvs ~]# systemctl enable ipvsadm.service
[root@lvs ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
或
[root@lvs ~]# ipvsadm -S
-A -t lvs:http -s rr
-a -t lvs:http -r 192.168.6.2:http -m -w 1
-a -t lvs:http -r 192.168.6.3:http -m -w 1
realserver真实服务器配置
Centos7-2(web服务器):192.168.6.2 内网IP
vim /var/www/html/index.html RS1
Centos7-2(web服务器):192.168.6.3 内网IP
vim /var/www/html/index.html RS2
测试
同一个VIP访问给出的页面不同