四层负载均衡LVS/DR模式的配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四层负载均衡LVS/DR模式的配置相关的知识,希望对你有一定的参考价值。

1、环境准备
准备 3 台纯净的虚拟机,两台 web 服务器,并关闭所有的防火墙和selinux

2、部署说明:
? 网络使用NAT模式
? DR模式要求Director DIP 和 所有RealServer RIP必须在同一个网段及广播域
? 所有节点网关均指定真实网关

3、LVS-server 安装lvs管理软件

    yum -y install ipvsadm

4、需要手动生成ipvsadm文件否则启动会报错

    [root@vm-2 ~]# ipvsadm --save > /etc/sysconfig/ipvsadm
启动:
    [root@vm-2 ~]# systemctl start ipvsadm

5、配置ipvsadm:

    [root@vm-2 ~]# ip addr add dev ens33 10.30.161.200:80/32
    设置VIP
    [root@vm-2 ~]# ipvsadm -A -t 10.30.161.200:80 -s rr
    -A添加一个VIP,-t用的是tcp协议,-s rr采用轮训算法
 添加转发到realserverip真实服务器的ip:
    [root@vm-2 ~]# ipvsadm -a -t 10.30.161.200:80 -r 10.30.161.214:80 -g
    [root@vm-2 ~]# ipvsadm -a -t 10.30.161.200:80 -r 10.30.161.241:80 -g
 保存:
    [root@vm-2 ~]# ipvsadm -S > /etc/sysconfig/ipvsadm       
 查看:
    [root@vm-2 ~]# ipvsadm -ln
    [root@vm-2 ~]# ipvsadm -ln --stats
    显示统计信息

6、配置RS真实服务器

    [root@real-server1 ~]# yum install -y nginx
    [root@real-server1 ~]# echo "real-server1" >> /usr/share/nginx/html/index.html
    两台机器都安装,按顺序添加不同的主机名以示区分
    [root@vm-4 ~]# ip addr add dev lo 10.30.161.200/32   #在lo接口上绑定VIP
    [root@vm-4 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
    arp_ignore?设置为1,意味着当别人的arp请求过来的时候,如果接收的设备没有这个ip,就不做出响应(这个ip在lo上,lo不是接收设备的进口)
    [root@vm-4 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce #匹配精确ip地址回包
    [root@vm-4 ~]# systemctl start nginx
    [root@vm-4 ~]# systemctl enable nginx

7、测试

    curl 10.30.161.200
    [root@localhost ~]# curl 10.30.161.200
    server1
    [root@localhost ~]# curl 10.30.161.200
    server2
            负载均衡实现成功

以上是关于四层负载均衡LVS/DR模式的配置的主要内容,如果未能解决你的问题,请参考以下文章

keepalived+LVS/DR HA负载均衡部署

CentOS下LVS DR模式负载均衡配置详解

LVS DR模式 负载均衡服务搭建

LVS DR模式负载均衡的搭建(单网段)

LVS DR模式负载均衡搭建keepalived高可用+LVS负载均衡配合

linux之集群LVS