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缓存没有清空。

解决。

相关推荐
gwjcloud2 天前
Lvs+Keepalived详解
运维·lvs
.柒宇.3 天前
构建 keepalived + LVS + Nginx + DNS + NFS 的高可用集群系统
运维·nginx·lvs
源远流长jerry3 天前
负载均衡概述
linux·运维·网络·架构·负载均衡·lvs
小宇的天下7 天前
Calibre LVS Circuit Comparison(1)
linux·数据库·lvs
小宇的天下8 天前
Calibre LVS Circuit Comparison(2)
算法·lvs
Brandon汐8 天前
LVS+Keepalived 双主架构全规划(LVS→HAProxy→Web)
容器·架构·lvs
小宇的天下8 天前
Calibre LVS Circuit Comparison(3)
开发语言·php·lvs
dustcell.11 天前
企业级高可用电商平台实战项目设计
运维·redis·nginx·docker·web·lvs·haproxy
L16247614 天前
Nginx 高可用集群与 LVS 负载均衡实战指南(场景选型对比 + 完整配置步骤 + 主备漂移部署实操)
nginx·负载均衡·lvs