目录
一.LVS-DR 集群
LVS-DR(Linux Virtual Server Director Server)工作模式,是生产环境中最常用的一种工作模式。
1.LVS-DR 工作原理
LVS-DR 模式,Director Server 作为群集的访问入口,不作为网关使用节点 Director Server与 Real Server 需要在同一个网络中,返回给客户端的数据不需要经过 Director Server。为了响应对整个群集的访问,DirectorServer 与 Real Server 都需要配置 VIP 地址

2.数据包流向分析
以下为数据包流向分析步骤。
- 客户端发送请求到 Director Server,请求的数据报文(源 IP 是 CIP,目标IP 是 VIP) 到达内核空间。
- Director Server 和 Real Server 在同一个网络中,数据通过二层数据链路层来传输。
- 内核空间判断数据包的目标IP是本机 VIP,此时 IPVS 比对数据包请求的服务是否是集群服务,是集群服务就重新封装数据包。修改源MAC地址为Director Server 的 MAC 地址,修改目标 MAC 地址为 Real Server 的 MAC 地址,源IP地址与目标IP地址没有改变,然后将数据包发送给Real Server。
- 到达Real Server 的请求报文的 MAC 地址是自身的 MAC 地址,就接收此报文。数据包重新封装报文(源IP地址为VIP,目标IP为CIP),将响应报文通过 10 接口传送给物理网卡然后向外发出。
- Real Server 直接将响应报文传送到客户端。
3.LVS-DR 模式特点
下面是 LVS-DR 模式的特点
- Director Server和Real Server 必须在同一个物理网络中。
- Real Server 可以使用私有地址,也可以使用公网地址。如果使用公网地址,可以通过互联网对 RIP 进行直接访问。
- 所有的请求报文经由 Director Server,但回复响应报文不能经过 Directorservero
- Real Server 的网关不允许指向 Director Server IP,即不允许数据包经过 Director Server.
- Real Server 上的 lo 接口配置 VIP 的 IP 地址。
二.直接路由模式(LVS-DR)
1. 准备案例环境
在 DR 模式的群集中,LVS 负载调度器作为群集的访问入口,但不作为网关使用:服务器池中的所有节点都各自接入Intemet,发送给客户机的Web 响应数据包不需要经过 LVS 负载调度器,如图所示
这种方式入站、出站访问数据被分别处理,因此LVS 负载调度器和所有的节点服务器都需要配置 VP 地址,以便响应对整个群集的访问。考虑到数据存储的安全性,共享存储设备会放在内部的专用网络中

主机 | 操作系统 | IP地址 | 应用 |
---|---|---|---|
lvs | openEuler 24.03 | 192.168.10.101 | Ipvsadm |
web1 | openEuler 24.03 | 192.168.10.102 | Apache、nfs、bind-utils |
web2 | openEuler 24.03 | 192.168.10.103 | Apache、nfs、bind-utils |
nfs | openEuler 24.03 | 192.168.10.104 | nfs、bind-utils |
客户端 | openEuler 24.03 | 192.168.10.105 |
2.配置调度器
(1).配置虚拟IP
修改ip和网卡名称

(2).安装ipvsadm工具

配置策略

(3).配置节点服务器
关闭防火墙和安全机制,并启动服务

创建测试文件
添加虚拟IP地址(VIP)地址,添加路由,并设置永久生效,
102:

103:

102和103调整proc参数


3. 测试 LVS 群集
客户端测试
