LVS群集调度,负载均衡
LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器。
它的官方网站是http://www.linuxvirtualserver.org现在LVS已经是Linux内核标准的一部分
LVS工作模式分为NAT模式、TUN模式、以及DR模式
今天和大家分享一下NAT模式
VS/NAT: 即(Virtual Server via Network Address Translation)
也就是网络地址翻译技术实现虚拟服务器,当用户请求到达调度器时,调度器将请求报文的目标地址(即虚拟IP地址)改写成选定的Real Server地址,同时报文的目标端口也改成选定的Real Server的相应端口,***将报文请求发送到选定的Real Server。在服务器端得到数据后,Real Server返回数据给用户时,需要再次经过负载调度器将报文的源地址和源端口改成虚拟IP地址和相应端口,然后把数据发送给用户,完成整个负载调度过程。可以看出,在NAT方式下,用户请求和响应报文都必须经过Director Server地址重写,当用户请求越来越多时,调度器的处理能力将称为瓶颈。
实验环境
一、准备工作(LVS服务器)
1、添加模块
[root@localhost ~]# modprobe ip_vs
[root@localhost ~]# cat /proc/net/ip_vs
2、开启路由功能
[root@localhost ~]# vim /etc/sysctl.conf
添加:
net.ipv4.ip_forward = 1
[root@localhost ~]# sysctl -p
4、安装ipvsadm软件
[root@localhost ~]# yum -y install ipvsadm
二、设置负载调度器
1、设置负载分配策略
[root@localhost ~]# ipvsadm -C //清除策略
[root@localhost ~]# ipvsadm -A -t 1.1.1.1:80 -s rr //创建群集调度器
[root@localhost ~]# ipvsadm -a -t 1.1.1.1:80 -r 192.168.1.10:80 -m -w 1 //添加节点1
[root@localhost ~]# ipvsadm -a -t 1.1.1.1:80 -r 192.168.1.20:80 -m -w 1 //添加节点2
[root@localhost ~]# ipvsadm-save //保存策略
[root@localhost ~]# systemctl enable ipvsadm
三、设置节点服务器
1、配置web-1服务器
[root@localhost ~]# echo "welcome to 192.168.1.10 web server" > /var/www/html/index.html
[root@localhost ~]# service httpd restart
2、配置web-2服务器
[root@localhost ~]# echo "welcome to 192.168.1.20 web server" > /var/www/html/index.html
[root@localhost ~]# service httpd restart
四、客户端验证:
1、在客户端访问:(刷新两个web网页)
firefox http://1.1.1.1/
2、在LVS虚拟服务器查看:
[root@localhost ~]# ipvsadm -ln
[root@localhost ~]# ipvsadm -Lnc
五、配置NFS服务器
1、配置NFS
[root@localhost ~]# mkdir /www
[root@localhost ~]# echo "welcome to XIN LANG web server" >/www/index.html
[root@localhost ~]# vim /etc/exports
添加:
/www 192.168.1.10(rw) 192.168.1.20(ro)
[root@localhost ~]# systemctl start nfs
[root@localhost ~]# showmount -e
2、在WEB服务器上配置:
[root@localhost ~]# showmount -e 192.168.1.30
[root@localhost ~]# mount 192.168.1.30:/www /usr/local/httpd/htdocs/
#把文件服务器的/www中的网页挂载到本地网页目录中
[root@localhost ~]# vim /etc/fstab
添加:
192.168.1.30:/www /var/www/html nfs defaults 0 0
3、验证:
1、在客户端访问:(nfs服务器中的网页会覆盖原本web中网页)
firefox http://1.1.1.1/
2、在LVS虚拟服务器查看:
[root@localhost ~]# ipvsadm -ln
3、关闭一台WEB,在LVS虚拟服务器查看:
[root@localhost ~]# ipvsadm -ln