负载均衡集群(NAT)
1.LVS负载均衡四种工作模式
LVS/NAT :网络地址转换模式
LVS/DR :直接路由模式
LVS/TUN : 隧道模式
LVS/full-nat : 双向转换
2.命令选项
-A #在服务器列表中添加一条新的虚拟服务记录
-s #使用的调度算法 rr | wrr | lc | wlc
-a #在服务器列表中添加一条真实的主机记录
-t #说明虚拟服务器提供tcp服务
-u #说明虚拟服务是提供udp服务
-r #真实服务器地址
-m #指定LVS工作模式为nat
-w #真实服务器的权值
-g #指定LVS工作模式为路由模式
-E #编辑内核服务器表中的一条虚拟服务记录
-D #删除一条虚拟服务器记录
-S #保存虚拟服务器规则到标准输出
-d #删除一条虚拟服务器记录中的某条真实服务器记录
-L #显示内核虚拟服务器表
3.LVS应用实战(NAT)
-
环境准备
准备3台干净的虚拟机(两台web服务器)
两台网段相同,负载均衡器需两个IP地址,一个IP地址与两台web服务器的网段相同
另一个IP地址与web服务器不同
LVS-server 安装管理软件
关闭防火墙与selinux
-
搭建服务
负载均衡器
[root@localhost ~]# yum -y install ipvsadm #配置路由转发 [root@localhost ~]# vim /etc/sysctl.conf net.ipv4.ip_forward = 1 #重启路由转发 [root@localhost ~]# sysctl -p #配置虚拟服务 [root@localhost ~]# ipvsadm -A -t 192.168.222.128:80 -s wrr [root@localhost ~]# ipvsadm -a -t 192.168.222.128:80 -r 10.36.158.66:80 -m -w 3 [root@localhost ~]# ipvsadm -a -t 192.168.222.128:80 -r 10.36.158.110:80 -m -w 1 #检查 [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.222.128:80 wrr -> 10.36.158.66:80 Masq 3 0 0 -> 10.36.158.110:80 Masq 1 0 0
两台web服务器
#这里是用nginx来测试(两台机器均安装) [root@localhost ~]# yum -y install nginx #修改两台机器的发布目录,方便观察 [root@localhost ~]# cd /usr/share/nginx/html [root@localhost html]# rm -rf * [root@localhost html]# echo "LV测试1" > index.html #另一台web服务器 [root@localhost ~]# cd /usr/share/nginx/html [root@localhost html]# rm -rf * [root@localhost html]# echo "LV测试2" > index.html #配置默认路由(两台机器均操作) [root@localhost ~]# ip route add default via 192.168.222.128 #修改两台机器nginx配置文件(更改TCP连接的保存时间) [root@localhost ~]# vim /etc/nginx/nginx.conf +27 tcp_nodelay on; keepalive_timeout 0; #重启nginx(两台机器均操作) [root@localhost ~]# nginx -s reload
-
测试
浏览器浏览192.168.222.128并刷新多次