LVS-DR模式部署

LVS-DR模式工作过程:

复制代码
1)客户端通过VIP将访问请求报文 (源IP为客户端IP,目的IP为VIP) 发送到调度器

2) 调度器通过调度算法选择最适合的节点服务器,并重新封装数据报文(将源MAC改为调度器的MAC,目的MAC改为节点服务器的MAC地址)

3)节点服务器收到请求报文后,确认目的MAC和目的IP无误后解包并送到应用层进行处理

4)节点服务器在返回响应报文前,会先重新封装报文(源IP为VIP,目的为客户端IP),再将响应报文先通过 lo 接口传送给物理网卡,再通过物理网卡发送给客户端

LVS-DR集群部署:

复制代码
环境布置:

DR 服务器:172.16.23.10

vip(虚拟回环):172.16.23.100

web 服务器1:172.16.23.11

web 服务器2:172.16.23.12

客户端:172.16.23.200

1、配置负载调度器(172.16.23.10)

复制代码
vip(虚拟回环)(172.16.23.100)

1. #关闭防火墙
  systemctl stop firewalld && setenforce 0

2. #安装ipvsadm工具
   yum install ipvsadm.x86_64 -y

3. #配置虚拟IP地址(VIP:172.16.23.100)
   cd /etc/sysconfig/network-scripts/
   cp ifcfg-ens33 ifcfg-ens33:0
   vim ifcfg-ens33:0
   #删除UUID,dns与网关,注意子网
   NAME=ens33:0
   DEVICE=ens33:0
   IPADDR=172.16.23.100
   NETMASK=255.255.255.255

4. #重启网络服务、启动网卡
   systemctl restart network
   ifup ifcfg-ens33:0

5. #调整/proc响应参数   
   #对于 DR 群集模式来说,由于 LVS 负载调度器和各节点需要共用 VIP 地址,应该关闭 Linux 内核的重定向参数响应服务器不是一台路由器,那么它不会发送重定向,所以可以关闭该功能
   vim /etc/sysctl.conf
   net.ipv4.ip_forward = 0
   net.ipv4.conf.all.send_redirects = 0
   net.ipv4.conf.default.send_redirects = 0
   net.ipv4.conf.ens33.send_redirects = 0

6. #刷新配置
   sysctl -p

7. #加载模块
   modprobe ip_vs
   cat /proc/net/ip_vs

8. #配置负载分配策略,并启动服务
   ipvsadm-save >/etc/sysconfig/ipvsadm
   systemctl start ipvsadm.service

9. #清空ipvsadm,并做策略
  ##添加真实服务器-a  指定VIP地址及TCP端口-t   指定RIP地址及TCP端口 -r 指定DR模式-g
   ipvsadm -C
   ipvsadm -A -t 172.16.23.100:80 -s rr
   ipvsadm -a -t 172.16.23.100:80 -r 172.16.23.11:80 -g
   ipvsadm -a -t 172.16.23.100:80 -r 172.16.23.12:80 -g

10. #保存设置
    ipvsadm
    ipvsadm -ln
    ipvsadm-save > /etc/sysconfig/ipvsadm

2、第一台web节点服务器(172.16.23.11)

复制代码
1. #关闭防火墙
   systemctl stop firewalld && setenforce 0

2. #安装httpd、开启服务
   yum install httpd -y
   systemctl start httpd

3. #创建一个站点文件
   vim /var/www/html/index.html
   this is 20

4. #添加回环网卡,修改回环网卡名,IP地址,子网掩码
   cd /etc/sysconfig/network-scripts/
   cp ifcfg-lo ifcfg-lo:0
   vim ifcfg-lo:0
   DEVICE=lo:0
   IPADDR=172.16.23.100
   NETMASK=255.255.255.255
   NETWORK=127.0.0.0

   systemctl restart network


5. #设置路由
   route add -host 172.16.23.100 dev lo:0
   route -n

6. #开机执行命令
   vim /etc/rc.d/rc.local 
   /usr/sbin/route add -host 172.16.23.100 dev lo:0

   chmod +x /etc/rc.d/rc.local

7. #调整 proc 响应参数
   #添加系统只响应目的IP为本地IP的ARP请求
   #系统不使用原地址来设置ARP请求的源地址,而是物理mac地址上的IP
   vim /etc/sysctl.conf

   net.ipv4.conf.all.arp_ignore = 1
   net.ipv4.conf.all.arp_announce = 2
   net.ipv4.conf.default.arp_ignore = 1
   net.ipv4.conf.default.arp_announce = 2
   net.ipv4.conf.lo.arp_ignore = 1
   net.ipv4.conf.lo.arp_announce = 2

   sysctl -p  #刷新配置

3、第二台Web节点服务器(172.16.23.12)

复制代码
1. #关闭防火墙
   systemctl stop firewalld && setenforce 0

2. #安装httpd、开启服务
   yum install httpd -y
   systemctl start httpd

3. #创建一个站点文件
   vim /var/www/html/index.html
   this is 30

4. #添加回环网卡,修改回环网卡名,IP地址,子网掩码
   cd /etc/sysconfig/network-scripts/
   cp ifcfg-lo ifcfg-lo:0
   vim ifcfg-lo:0
   DEVICE=lo:0
   IPADDR=172.16.23.100
   NETMASK=255.255.255.255
   NETWORK=127.0.0.0

systemctl restart network

5. #设置路由
   route add -host 172.16.23.100 dev lo:0
   route -n

6. #开机执行命令
   vim /etc/rc.d/rc.local 
   /usr/sbin/route add -host 172.16.23.100 dev lo:0

   chmod +x /etc/rc.d/rc.local

7. #调整 proc 响应参数
   #添加系统只响应目的IP为本地IP的ARP请求
   #系统不使用原地址来设置ARP请求的源地址,而是物理mac地址上的IP
   vim /etc/sysctl.conf

net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2

 sysctl -p  #刷新配置

4、客户机测试(172.16.23.200)

1、修改ip与网关
2、访问 172.16.23.200 检验实验是否成功
相关推荐
Ap04156 天前
LVS介绍以及模式实现
lvs
天蓝不会忘记026 天前
lvs,haproxy,keepalived,nginx,tomcat介绍和实验
nginx·tomcat·lvs
qizhideyu6 天前
LVS(Linux virual server)
linux·运维·lvs
在这habit之下6 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
Yiiz.6 天前
LVS实验
lvs
️️(^~^)6 天前
LVS实验
linux·服务器·lvs
gx23486 天前
1-LVS
linux·服务器·lvs
unfeeling_6 天前
LVS实验
lvs
芝士雪豹只抽瑞克五6 天前
Linux Virtual Server (LVS) 负载均衡集群笔记
linux·笔记·负载均衡·lvs
屎到临头想搅便6 天前
LVS负载均衡
网络·lvs