轻松搭建LVS的 LVS-DR集群和 LVS-NAT 群集

1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 。

2. 构建 LVS-DR 群集时,在调度器与节点服务器中的 /proc 参数调整有何区别?

3. 基于 CentOS 7 构建 LVS-DR 群集。

4. 基于 CentOS 7 构建 LVS-NAT 群集。


LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项 目,它的官方站点是www.linuxvirtualserver.org

使用 LVS 技术要达到的目标是:通过 LVS 提供的负载均衡技术和 Linux 操作系统实现一个高性能、高可用 的服务器群集,它具有良好可靠性、可扩展性和可操作性。从而以低廉的成本实现最优的服务性能。

1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 。

NAT模式(VS-NAT)

原理:就是把客户端发来的数据包的IP头的目的地址,在负载均衡器上换成其中一台RS的IP地址,并发至此RS来处理,RS处理完成后把数据交给经过负载均衡器,负载均衡器再把数据包的原IP地址改为自己的IP,将目的地址改为客户端IP地址即可。

优点:集群中的物理服务器可以使用任何支持TCP/IP操作系统它只需要一个 IP 地址配置在调度器上,服务器组可以用私有的 IP 地址。

缺点:扩展性有限。当服务器节点(普通PC服务器)增长过多时,负载均衡器将成为整个系统的瓶颈,因为所有的请求包和应答包的流向都经过负载均衡器。当服务器节点过多时,大量的数据包都交汇在负载均衡器那,速度就会变慢。

DR模型--直接路由模式(VS-DR) 

原理:负载均衡器和RS都使用同一个IP对外服务,但只有DR对ARP请求进行响应,所有RS对本身这个IP的ARP请求保持静默,也就是说,网关会把对这个服务IP的请求全部定向给DR,而DR收到数据包后根据调度算法,找出对应的RS,把目的MAC地址改为RS的MAC(因为IP一致)并将请求分发给这台RS,这时RS收到这个数据包,处理完成之后,由于IP一致,可以直接将数据返给客户,则等于直接从客户端收到这个数据包无异,处理后直接返回给客户端。由于负载均衡器要对二层包头进行改换,所以负载均衡器和RS之间必须在一个广播域,也可以简单的理解为在同一台交换机上。

优点:VS/DR跟 VS/TUN 方法相同,负载调度器中只负责调度请求,而服务器直接将响应返回给客户,可以极大地提高整个集群系统的吞吐量。

缺点:要求负载均衡器的网卡必须与物理网卡在一个物理段上

2. 构建 LVS-DR 群集时,在调度器与节点服务器中的 /proc 参数调整有何区别?

DR群集模式

LVS负载调度器和节点需要共同VIP地址,应关闭Linux内核的重定向参数响应。

节点服务器

同样要有VIP地址,但此地址仅用作发送Web响应数据包的原地址,不需要监听客户机的访问请求(改由调度器监听毕分发)。

3. 基于 CentOS 7 构建 LVS-DR 群集。

角色 IP地址 主机名服务或工具
Director

 VIP:172.25.10.110

 DIP:172.25.10.110 

172.25.10.111 ipvsadm
RS1 RIP1:172.25.10.120   172.25.10.120   httpd
RS2   RIP2:172.25.10.130   172.25.10.130   httpd

首先,给node2和node3下载使用httpd服务

yum install httpd -y

写内容,配web主页内容

echo "`hostname -I`,web test page" > /var/www/html/index.html

启动服务

systemctl start httpd

测试

curl 172.25.10.120

 配置 Director,下载工具

yum install ipvsadm -y

配置LVS虚拟IP(VIP)

cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:1
vi ifcfg-ens33:1

vi ifcfg-ens33

 重启服务

systemctl restart network

配置转发规

ipvsadm -At 172.25.10.110:80 -s rr
ipvsadm -at 172.25.10.110:80 -r 172.25.10.120:80 -g
ipvsadm -at 172.25.10.110:80 -r 172.25.10.130:80 -g

注意:三个 LVS 模式中,只有 NAT 模式需要开启路由转发功能,DR 和 TUN 模式不需要开启
           -g 表示 DR 模式

查看配置好的转发规则
 

ipvsadm -Ln

配置 RS1和RS2
增加一个本地回环接口,将VIP地址配置到回环接口上

注意ens33网口的网关,网关指向公网出口路由器IP

cd /etc/sysconfig/network-scripts/
cp ifcfg-lo ifcfg-lo:1
vi ifcfg-lo:1

DEVICE=lo:1
IPADDR=172.25.10.110
NETMASK=255.255.255.255
ONBOOT=yes
NAME=loopback

重启服务

systemctl restart network 

关闭ARP转发 

 cat >> /etc/sysctl.conf << EOF
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
EOF

测试 

4. 基于 CentOS 7 构建 LVS-NAT 群集。

环境准备,需要将环境回滚

配置前需要给 Director 增加了一张网卡设置为桥接模式,用于模拟 Director 的 VIP,其它网卡均为 NAT 模式

 RS1关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0

下载相关软件服务

yum install httpd -y

写内容,配web主页内容

echo "`hostname -I`,web test page" > /var/www/html/index.html

启动服务

systemctl start httpd

测试

 修改网络配置,将网关进行更改

Director配置过程,关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0

 打开路由转发功能

echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
sysctl -p
iptables -t nat -F
iptables -F
iptables -t nat -A POSTROUTING -s 172.25.10.0/24 -o ens36 -j SNAT --to-source 10.0.0.1

安装ipvsadm 管理工具

yum -y install ipvsadm

ipvsadm -C
ipvsadm -A -t 10.0.0.1:80 -s rr
ipvsadm -a -t 10.0.0.1:80 -r 172.25.10.120:80 -m -w 1
ipvsadm -a -t 10.0.0.1:80 -r 172.25.10.130:80 -m -w 1

测试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值