LVS-DR模式
用户请求VIP,会由LVS服务器响应,分配至Real-Server服务器,真实服务器处理完后直接返回给用户,不再通过LVS服务器。这减轻了调度器的压力.LVS-NAT模式参考:http:/ /blog.csdn.net/qq_39591494/article/details/77574406
准备环境:Centos7.3-LVS分发器:192.168.161.135
Centos7.3-WEB1:192.168.161.136
Centos7.3-WEB2:192.168.161.137
注:调度器和RealServer必须在同一个LAN,LAN可以使用公网IP,也可以使用私有IP
1.配置WEB1
[root @ yankerweb1~] #ip addr add 192.168.161.100/32 dev lo
[root @ yankerweb1~] #ip addr show lo
1:lo:
link / loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8范围主机lo
valid_lft永远preferred_lft永远
inet 192.168.161.100/32范围global lo
valid_lft forever preferred_lft forever
inet6 :: 1/128范围主机
valid_lft永远是preferred_lft永远
[root @ yankerweb1~] #echo 1> / proc / sys / net / ipv4 / conf / all / arp_ignore
[root @ yankerweb1~] #echo 2> / proc / sys / net / ipv4 / conf / all / arp_announce
2.在WEB2上安装的httpd服务
[root@yankerweb1 ~]# yum install httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.bit.edu.cn
* extras: mirror.bit.edu.cn
* updates: mirrors.btte.net
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-45.el7.centos.4 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-45.el7.centos.4,它被软件包 httpd-2.4.6-45.el7.centos.4.x86_64 需要
安装完之后我们写个页面进去
[root@yankerweb1 ~]# echo "yanker-web1" > /var/www/html/index.html
[root@yankerweb1 ~]# cat /var/www/html/index.html
yanker-web1
随后启动httpd服务
[root@yankerweb1 ~]# systemctl start httpd
[root@yankerweb1 ~]# netstat -anpt | grep httpd
tcp6 0 0 :::80 :::* LISTEN 5149/httpd
2.配置web2-其实和web1都是一样的 就是导入的页面不一样(为了测试,在真实环境中是用一样的页面!!!)
[root@yankerweb2 ~]# ip addr add 192.168.161.100/32 dev lo
[root@yankerweb2 ~]# ip addr show lo
1: lo:
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet 192.168.161.100/32 scope global lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
[root@yankerweb2 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@yankerweb2 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
在web2上安装httpd服务
[root@yankerweb2 ~]# yum install httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.bit.edu.cn
* extras: mirror.bit.edu.cn
* updates: mirrors.btte.net
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-45.el7.centos.4 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-45.el7.centos.4,它被软件包 httpd-2.4.6-45.el7.centos.4.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-45.el7.centos.4.x86_64 需要
--> 正在处理依赖关系 libaprutil-1.so.0()(64bit),它被软件包 httpd-2.4.6-45.el7.centos.4.x86_64 需要
--> 正在处理依赖关系 libapr-1.so.0()(64bit),它被软件包 httpd-2.4.6-45.el7.centos.4.x86_64 需要
[root@yankerweb2 ~]# echo "yanker-web2" > /var/www/html/index.html
[root@yankerweb2 ~]# cat /var/www/html/index.html
yanker-web2
启动httpd服务
[root@yankerweb2 ~]# systemctl start httpd
[root@yankerweb2 ~]# netstat -anpt | grep httpd
tcp6 0 0 :::80 :::* LISTEN 5424/httpd
3.配置LVS分发器
[root@lvs ~]# ip addr add 192.168.161.100/32 dev lo
[root@lvs ~]# ip addr show lo
1: lo:
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet 192.168.161.100/32 scope global lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
安装ipvsadm
[root @ lvs~] #yum install -y ipvsadm
已加载插件:fastermirror,langpacks
从缓存的主机文件加载镜像速度
* base:mirror.bit.edu.cn
* extras:mirror.bit.edu.cn
* updates:mirrors。 btte.net
正在解决依赖关系
- >正在检查事务
--->软件包ipvsadm.x86_64.0.1.27-7.el7将被安装.....
配置LVS转发规则
[root @ lvs~] #ipvsadm -A -t 192.168.161.100:80 -s rr
-A添加-t表示TCP的服务VIP:PORT -s指定调度算法 rr表示round-robin wheel
[root @ lvs~] #ipvsadm -a -t 192.168.161.100:80 -r 192.168.161.136 -g
[root @ lvs~] #ipvsadm -a -t 192.168.161.100:80 -r 192.168.161.137 -g
选项:-a表示添加真实服务器的地址-r指定真实服务器的IP地址-g表示DR模式的LVS
配置完成之后我们使用客户端来访问192.168.161.100随后不断F5刷新页面会出现yanker-web1的/ web2的
希望对您有所帮助,再见!