LVS/DR模式负载均衡集群部署详解

LVS/DR模式负载均衡集群部署详解

一、LVS/DR模式简介

1、网络使用net模式

2、DR模式要求Director DIP和所有RealServer RIP 必须在同一个网段及广播域

3、Real server: RIP :192.168.239.129 192.168.239.128

​ VIP:192.168.239.166

二、部署准备

1、准备三台干净的虚拟机,两台用作web服务器

2、程序包:ipvsadm (LVS管理工具)

3、规则保存工具:/usr/sbin/ipvsadm-save > /path/to/file

4、配置文件:/etc/sysconfig/ipvsadm-config

三、步骤(LVSserver端)

1、关闭防火墙和selinux

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# setenforce 0

2、Director分发器配置(配置VIP)

[root@lvs-server ~]# ip addr add dev ens33 192.168.239.166/32 //配置VIP
[root@lvs-server ~]# yum install -y ipvsadm   //RHEL确保LoadBalancer仓库可用
[root@lvs-server ~]# service ipvsadm start  //启动(如有报错是因为没有创建保存规则文件/bin/bash: /etc/sysconfig/ipvsadm: 没有那个文件或目录,需要手动生成)
[root@lvs-server ~]# ipvsadm --save > /etc/sysconfig/ipvsadm  //生成规则存放文件

3、定义LVS分发策略

[root@lvs-server ~]# ipvsadm -C  //清除内核虚拟服务器表中的所有记录。
[root@lvs-server ~]# ipvsadm -A -t 192.168.239.166:80 -s rr //添加一条新的虚拟TCP协议服务调度算法
[root@lvs-server ~]# ipvsadm -a -t 192.168.239.166:80 -r 192.168.239.128 -g   //添加一条新的真实TCP协议服务路由模式
[root@lvs-server ~]# ipvsadm -a -t 192.168.246.160:80 -r 192.168.239.129 -g  
[root@lvs-server ~]# service ipvsadm save   //保存方式一,使用下面的保存方式,版本7已经不支持了
[root@lvs-server ~]# ipvsadm -S > /etc/sysconfig/ipvsadm    //保存方式二,保存到一个文件中
[root@lvs-server ~]# 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.239.166:80 rr
  -> 192.168.239.128:80           Route   1      1          0         
  -> 192.168.239.129:80           Route   1      1          0  
[root@lvs-server ~]# ipvsadm -L -n --stats  //显示统计信息
[root@lvs-server ~]# ipvsadm -L -n --rate	//看速率

4、配置RS端

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# setenforce 0
[root@real-server1 ~]# yum install -y nginx  
[root@real-server1 ~]# echo "real-server1" >> /usr/share/nginx/html/index.html     //配置web服务页面
[root@real-server1 ~]# ip addr add dev lo 192.168.239.166/32   //在lo接口上绑定VIP
[root@real-server1 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore  //忽略arp广播
[root@real-server1 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce //匹配精确ip地址回包
[root@real-server1 ~]# systemctl start nginx 
[root@real-server1 ~]# systemctl enable  nginx
另外一个服务器同理操作(配置的web页面不要一样便于观察)

附1:为什么要忽略广播

realServer的vip有了,接着就是同一个网段中拥有两个vip, 客户端在网关发送arp广播需找vip时需要让realServer不接受响应.
解决:
echo 1 >/proc/sys/net/ipv4/conf/eth0/arp_ignore
arp_ignore 设置为1,意味着当别人的arp请求过来的时候,如果接收的设备没有这个ip,就不做出响应(这个ip在lo上,lo不是接收设备的进口)
echo 2 >/proc/sys/net/ipv4/conf/eth0/arp_announce
使用最好的ip来回应,什么是最好的ip?同一个网段内子网掩码最长的

5、测试(为了方便实验观察,关闭Nginx服务器长连接)

[root@client ~]# elinks -dump http://192.168.239.166

也可以直接在浏览器上测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ever Since!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值