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 检验实验是否成功

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2023-12-19 09:00:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-19 09:00:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-19 09:00:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-19 09:00:03       20 阅读

热门阅读

  1. 2023.12.16力扣每日一题

    2023-12-19 09:00:03       44 阅读
  2. notebook入门使用教程

    2023-12-19 09:00:03       35 阅读
  3. 【PHP】TP5验证规则自定义

    2023-12-19 09:00:03       42 阅读
  4. MySQL! 一个开源的关系型数据库管理系统!

    2023-12-19 09:00:03       37 阅读
  5. 第五章 图论 邻接表存图

    2023-12-19 09:00:03       28 阅读
  6. 手动配置 kafka 用户密码,认证方式等的方式

    2023-12-19 09:00:03       37 阅读
  7. Scroll-view的用法(网页和微信小程序)

    2023-12-19 09:00:03       38 阅读