插件窝 干货文章 如何进行lvs-dr模式中后端RS的配置

如何进行lvs-dr模式中后端RS的配置

配置 conf ARP announce 953    来源:    2025-04-25

LVS-DR模式后端RS(Real Server)配置指南

LVS-DR(Direct Routing)模式是一种高性能的负载均衡模式,其中后端RS(Real Server)的配置非常关键。以下是详细的配置步骤:

基本要求

  1. 所有RS必须与Director Server在同一物理网络
  2. VIP(Virtual IP)必须在所有RS上配置为lo接口的别名
  3. RS必须关闭对VIP的ARP响应

配置步骤

1. 配置环回接口VIP

在每个RS上执行:

# 添加VIP到lo接口
ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP up

# 或者使用ip命令(推荐)
ip addr add $VIP/32 dev lo label lo:0

2. 调整ARP参数

echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce

为了使这些设置永久生效,可以添加到/etc/sysctl.conf

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

# 应用配置
sysctl -p

3. 配置路由(可选)

在某些情况下,可能需要添加路由:

route add -host $VIP dev lo:0

4. 验证配置

# 检查VIP是否配置正确
ip addr show lo:0

# 检查ARP设置
sysctl -a | grep arp_ignore
sysctl -a | grep arp_announce

服务配置

确保后端服务监听在VIP上或0.0.0.0上。例如对于web服务:

# 检查监听
netstat -tulnp | grep 80

注意事项

  1. VIP冲突:确保VIP在物理网络中未被其他设备使用
  2. 防火墙:确保RS的防火墙允许VIP的流量
  3. 持久性:将配置写入启动脚本(如/etc/rc.local)或网络配置文件中
  4. 高可用:考虑使用keepalived等工具实现RS的高可用

示例脚本

以下是一个完整的配置脚本示例:

#!/bin/bash

VIP=192.168.1.100

# 配置VIP
ip addr add $VIP/32 dev lo label lo:0

# 配置ARP
echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce

# 持久化配置
cat >> /etc/sysctl.conf <<EOF
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
EOF

# 应用sysctl配置
sysctl -p

echo "LVS-DR RS configuration completed."

通过以上步骤,您的RS就可以正确参与到LVS-DR模式的负载均衡集群中了。