LVS-DR模型实验

版权声明:如需转载,请注明作者及出处 https://blog.csdn.net/qq_33317586/article/details/86493981

回顾之前学的知识:

[root@lvs-lvs ~]# ipvsadm -Ln查看ipvsadm规则(-n表示以数字方式显示,不解析)

lvs是四层的,不能做到hash(http://vip/test.html),基于传输层,而haproxy和nginx支持7层的,lvs只能四层

--exact显示精确值:[root@lvs-lvs ~]# ipvsadm -Ln --exact

-c显示ipvs连接输出:[root@lvs-lvs ~]# ipvsadm -Ln -c

--stats统计信息:[root@lvs-lvs ~]# ipvsadm -Ln --stats

--rate输出速率信息:[root@lvs-lvs ~]# ipvsadm -Ln --rate

扫描二维码关注公众号,回复: 5070167 查看本文章

ipvs规则在内存中也有个文件:[root@lvs-lvs ~]# cat /proc/net/ip_vs

连接情况:[root@lvs-lvs ~]# cat /proc/net/ip_vs_conn

清除所有ipvs规则:[root@lvs-lvs ~]# ipvsadm -C

保存规则:[root@lvs-lvs ~]# ipvsadm-save -n > /etc/sysconfig/ipvsadm(必须要-n选项)

LVS-nat的特点:

  • RIP与DIP在同一网络
  • 支持端口映射
  • Director要打开核心转发功能

实验开始

一、架构图:

二、实验环境要求:

如上图所示:需要5台机器

第一台做client:IP:10.0.3.64

第二台做router(两块网卡):IP1:10.0.3.32        IP2:192.168.137.133

第三台是lvs服务器:IP:192.168.137.132

第四台是lvs-web1:IP:192.168.137.129

第五台是lvs-web2:IP:192.168.137.129

需要一个VIP:192.168.137.100

还有:10.0.0网段是桥接网段,192.168.137网段是仅主机网段

所有机器关闭防火墙,selinux,清空iptables

三、配置客户端的网关:

网关指向10.0.3.32(路由器的左边)

四、配置router

开启核心路由转发(永久开启需写入配置文件):

五、配置lvs-web1:

如上图所示,将arp_ignore改为1,arp_announce改为2(永久生效需要写入配置文件,all表示改所有,lo表示改lo网卡)

查看ip:

安装httpd服务,写入测试网页:

[root@lvs-web1 ~]# yum install httpd -y
[root@lvs-web1 ~]# systemctl start httpd
[root@lvs-web1 ~]# vim /var/www/html/index.html 
[root@lvs-web1 ~]# cat /var/www/html/index.html
lvs-web1

别忘了设置默认网关

六、同理设置lvs-web2

临时修改arp_ignore和arp_announce并绑定VIP

安装httpd并写入测试文件

[root@lvs-web2 ~]# yum install httpd -y
[root@lvs-web2 ~]# systemctl start httpd
[root@lvs-web2 ~]# vim /var/www/html/index.html 
[root@lvs-web2 ~]# cat /var/www/html/index.html
lvs-web2

别忘了设置默认网关

七、修改lvs-lvs

修改默认网关:

临时打开核心路由转发:

绑定VIP(LVS机器不用修改arp参数,随便绑哪个回环网卡)

[root@lvs-lvs ~]# ip a a 192.168.137.100/32 dev lo
[root@lvs-lvs ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    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.137.100/32 scope global lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:c0:5b:59 brd ff:ff:ff:ff:ff:ff
    inet 192.168.137.132/24 brd 192.168.137.255 scope global noprefixroute dynamic ens33
       valid_lft 1518sec preferred_lft 1518sec
    inet6 fe80::20c:29ff:fec0:5b59/64 scope link 
       valid_lft forever preferred_lft forever

设置IPVS规则

[root@lvs-lvs ~]# ipvsadm -A -t 192.168.137.100:80 -s rr
[root@lvs-lvs ~]# ipvsadm -a -t 192.168.137.100:80 -r 192.168.137.129 -g
[root@lvs-lvs ~]# ipvsadm -a -t 192.168.137.100:80 -r 192.168.137.130 -g
[root@lvs-lvs ~]# 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.137.100:80 rr
  -> 192.168.137.129:80           Route   1      0          0         
  -> 192.168.137.130:80           Route   1      0          0 

八、客户端访问测试


遇到的问题:

VIP和DIP搞混了

把DIP放到ipvs规则上了

等等

猜你喜欢

转载自blog.csdn.net/qq_33317586/article/details/86493981