1. 设置虚拟机防火墙为关闭,设置selinux为禁止 命令终端: route add default gw 【nat网卡的网关IP】,需要安装net-tools 命令终端:yum install ipvsadm iproute,打快照 oipvsadm: ipvsadm是LVS(Linux Virtual Server)的管理工具,用于配置和管理LVS集群。它主要用于设置负载均衡规则和监控LVS的状态。安装命令为:yum install ipvsadm。 ipvsadm的主要功能包括添加、编辑、删除虚拟服务和真实服务器,以及保存和恢复LVS规则等12。 oiproute: iproute包包含一系列用于配置和管理Linux网络接口的工具,如ip命令。这些工具提供了更加强大和灵活的方式来查询和配置网络设备。 安装iproute包的命令为:yum install iproute。安装后,可以使用ip命令来查看和配置网络接口、路由表、策略路由等 命令终端:echo 1 >> /proc/sys/net/ipv4/ip_forward 命令终端:sysctl -p 这条命令尝试将数字1追加(>>)到Linux系统中的/proc/sys/net/ipv4/ip_forward文件中。这个文件的用途是控制IPv4的网络转发功能。如果文件内容为1,表示启用了IP转发功能;如果为0,则表示禁用了IP转发功能。 命令终端:ipvsadm -A -t 【仅主机IP】:80 -s rr 命令 ipvsadm -A -t [仅主机IP]:80 -s rr 用于在 Linux 系统上配置 IP 虚拟服务器(IPVS),以设置负载均衡。不过,命令中的 [仅主机IP] 需要替换为实际的 IP 地址。这个命令的各个部分含义如下: ipvsadm:这是 IP 虚拟服务器管理工具,用于设置和管理 Linux 内核中的 IPVS 表。 -A:表示添加一个虚拟服务。 -t:后面跟的是虚拟服务的 IP 地址和端口号,格式为 [IP地址]:[端口号]。在这个例子中,应该替换 [仅主机IP] 为你想要负载均衡的 IP 地址,通常是公网 IP 或者内部网络中的某个 IP 地址,而 80 是 HTTP 服务的标准端口。 -s rr:指定负载均衡的调度算法为轮询(Round Robin)。这意味着请求会被依次分配到不同的后端服务器上。 命令终端:ipvsadm -a -t 【仅主机IP】:80 -r 【真实服务器1IP】 -m 命令终端:ipvsadm -a -t 【仅主机IP】:80 -r 【真实服务器2IP】 -m ipvsadm -C(清楚所有规则,需要时使用) 命令 ipvsadm -a -t [仅主机IP]:80 -r [真实服务器1IP] -m 用于在 Linux 系统的 IP 虚拟服务器(IPVS)配置中添加一个后端真实服务器,并指定使用 NAT(网络地址转换)模式进行负载均衡。同样地,[仅主机IP] 和 [真实服务器1IP] 需要分别替换为实际的 IP 地址。 命令的各个部分含义如下: ipvsadm:IP 虚拟服务器管理工具。 -a:表示添加一个后端真实服务器到某个虚拟服务。 -t:指定虚拟服务的 IP 地址和端口号,格式为 [IP地址]:[端口号]。在这个例子中,[仅主机IP] 应该被替换为虚拟服务的 IP 地址。 -r:后面跟的是后端真实服务器的 IP 地址。在这个例子中,[真实服务器1IP] 应该被替换为后端服务器的 IP 地址。 -m:指定使用 NAT 模式。在 NAT 模式下,IPVS 会修改经过的数据包,将目标 IP 地址和端口号从虚拟服务的地址转换为后端真实服务器的地址。当响应返回时,IPVS 又会将源 IP 地址和端口号从后端真实服务器的地址转换回客户端的地址。 2.配置Real服务器(两台) 设置防火墙为关闭,并设置开机禁止启动,设置selinux为禁止 命令终端: yum install httpd -y 命令终端: echo “hello 【node1/node2】” >> /var/www/html/index.html 命令终端: systemctl enable --now httpd 命令终端:vim /etc/sysconfig/network-scripts/ifcfg-ens33 【修改】 GATEWAY=【仅主机IP】 命令终端: systemctl restart network 3.访问测试 命令终端: curl 【仅主机IP】 LVS DR模式(还原环境) 4.配置Director服务器。 设置防火墙为关闭,并设置开机禁止启动,设置selinux为禁
时间: 2025-07-08 17:34:52 浏览: 14
<think>好的,用户想要在Linux环境下配置LVS的DR模式,具体步骤包括关闭防火墙和SELinux、启用IP转发、安装ipvsadm和httpd等工具、配置虚拟服务和真实服务器,并进行访问测试。我需要根据提供的引用内容整理出一个清晰的步骤指南。
首先,根据引用[1]中的步骤,环境准备是关键,所有服务器需要正确配置网络,并且在同一物理网络中。接下来,安装LVS相关的软件,比如ipvsadm,这在引用[2]和引用[3]中提到过,需要加载ip_vs模块。然后配置VIP地址,这部分引用[4]和引用[5]都提到Director和Real Server都需要配置VIP,并且要设置内核参数避免ARP冲突。
关闭防火墙和SELinux是常见的配置步骤,应该在所有服务器上执行。启用IP转发可能需要修改sysctl.conf中的参数,这在引用[4]中提到的ip_forward相关设置。安装ipvsadm和httpd的话,引用[2]提到了ipvsadm的重载命令,而httpd可能用于真实服务器提供测试页面。
配置虚拟服务时,需要使用ipvsadm命令添加VIP和负载均衡策略,比如轮询模式。真实服务器的配置需要设置VIP在lo接口,并调整ARP参数,如引用[4]中的arptables使用,或者更现代的sysctl参数。测试部分可以通过curl访问VIP来验证负载均衡是否生效。
需要注意DR模式的特点,比如响应不经过Director,所以Real Server需要正确路由响应。同时,引用[4]提到DR模式不支持端口映射,所以端口必须一致。此外,内核参数的调整如arp_ignore和arp_announce必须正确设置,否则可能导致VIP冲突。
可能用户在实际操作中会遇到ARP问题或者VIP无法访问的情况,需要检查网络配置和内核参数是否正确。同时,确保所有服务器的VIP配置在lo接口,并且Director的VIP在物理接口上。最后,测试时可能需要多次请求才能看到不同Real Server的响应,验证负载均衡是否有效。</think>### LVS-DR模式配置步骤详解
#### 一、基础环境准备
1. **服务器角色分配**
- **Director Server (DS)**:1台,负责流量调度,需配置VIP和DIP
- **Real Server (RS)**:至少2台,提供实际服务,需配置RIP和VIP
- **网络要求**:所有服务器需在同一物理网络且互通,VIP需为同一网段地址[^4][^5]
2. **关闭防火墙与SELinux**
```bash
# 所有节点执行
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
```
3. **启用IP转发(仅DS)**
```bash
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
```
#### 二、安装必要工具
1. **Director Server安装**
```bash
yum install ipvsadm -y
modprobe ip_vs # 加载内核模块[^3]
```
2. **Real Server安装**
```bash
yum install httpd -y # 以Web服务为例
systemctl start httpd
echo "Server1" > /var/www/html/index.html # 测试页面需区分不同RS
```
#### 三、网络配置
1. **Director Server配置**
```bash
# 物理网卡配置DIP和VIP(假设网卡为eth0)
ip addr add 192.168.1.100/24 dev eth0 # VIP
ip addr add 192.168.1.10/24 dev eth0 # DIP
```
2. **Real Server配置**
```bash
# 配置lo回环接口(假设VIP为192.168.1.100)
ip addr add 192.168.1.100/32 dev lo
# 设置ARP参数[^4]
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
```
#### 四、负载均衡规则配置(DS执行)
```bash
# 清除旧规则
ipvsadm -C
# 添加虚拟服务(VIP:80 使用轮询算法)
ipvsadm -A -t 192.168.1.100:80 -s rr
# 添加真实服务器(RS的RIP地址)
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.20:80 -g # 第一台RS
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.21:80 -g # 第二台RS
# 保存规则
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl restart ipvsadm # 重启服务[^2]
```
#### 五、访问测试
```bash
# 客户端访问测试(需替换实际VIP)
curl http://192.168.1.100
# 应轮换显示不同RS的测试页面内容
```
#### 六、关键配置说明
1. **ARP抑制**:通过`arp_ignore`和`arp_announce`参数确保只有DS响应VIP的ARP请求
2. **VIP配置**:DS的VIP在物理网卡,RS的VIP在lo接口且掩码为32位
3. **响应路径**:RS直接响应客户端,不经过DS
阅读全文
相关推荐













