LVS负载均衡集群

LVS负载均衡集群

GPT生成的LVS介绍

1. 实验环境:

调度器(Director Server):server1(192.168.228.11 192.168.228.100)

真实服务器(Real Server):server3(192.168.228.12 192.168.228.100)和server2(192.168.228.13 192.168.228.100)

测试机:server4(192.168.228.14)

2. ipvsadm配置

2.1 调度器环境配置

bash 复制代码
yum install -y ipvsadm # 安装ipvsadm
bash 复制代码
ipvsadm -A -t 192.168.228.100:80 -s rr # 为server1添加调度算法
ipvsadm -a -t 192.168.228.100:80 -r 192.168.228.13:80 -g # 添加real server


bash 复制代码
systemctl enable --now  httpd.service # 启动服务

2.2 测试


3. 问题

3.1 为什么没有响应?

因为测试机、调度器、真实主机均在同一VLAN 下,这时候是直接使用MAC地址 进行传输,那么请求192.168.228.100的时候,测试机selinux会直接丢弃掉server2和server3。使得之后就无法相应了。

解决。


3.2 为什么只能相应一个server?

这是因为访问228.100直接访问的228.13的主机,根本没有访问到调度器。
解决。

屏蔽掉real server的192.168.228.100的ARP协议,让其不要直接相应。这就相当server3的192.168.228.100的ARP协议禁止返回MAC地址,但是它有没有被测试机丢弃,因此之后当调度器ARP请求时候会正常返回server3的192.168.228.13的MAC地址。

bash 复制代码
yum install -y arptables # arp控制工具

在两台real server操作

bash 复制代码
arptables -A INPUT -d 192.168.228.100 -j DROP # 进入拒绝
arptables -A OUTPUT -s 192.168.228.100 -j mangle --mangle-ip-s 192.168.56.12 # 出口伪装
arptables-save  > /etc/sysconfig/arptables # 永久保存


这里写错了,是192.168.228.13

3.3 为什么测试机还是访问之前的服务器?

这是因为ARP缓存没有清空。

解决。

相关推荐
柠檬叶子C2 天前
【云计算】利用 LVS 构建集群实现负载均衡 | 集群的概念 | 单服务器性能瓶颈验证例子 | LVS 基础 | LVS 构建负载均衡集群实操步骤
服务器·负载均衡·lvs
源远流长jerry5 天前
DPVS 深度解析:基于 DPDK 的高性能四层负载均衡器
运维·负载均衡·lvs
遇见火星5 天前
LVS+Keepalived+Nginx 高可用架构揭秘
nginx·架构·lvs·keepalived
rain bye bye11 天前
修改 LVS 报错
lvs
小宇的天下14 天前
Calibre nmDRC 高级边缘处理与输出控制(17)
linux·运维·lvs
小宇的天下16 天前
Calibre DESIGNrev DRC/LVS启动和准备文件(10-2)
linux·运维·lvs
yunson_Liu18 天前
EC2创建逻辑卷lvs
lvs
yunson_Liu18 天前
分别从横向和纵向两种方法扩充lvs空间
lvs
yunson_Liu18 天前
彻底删除逻辑卷lvs
lvs
Hui Baby19 天前
LVS+Nginx实现高负载均衡框架(四层负载LVS+七层应用负载Nginx)
nginx·负载均衡·lvs