Lvs的实例部署之DR模式

资料连接(资料来源):https://baike.baidu.com/item/LVS/17738?fr=aladdin

LVS

LVSLinux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

特点

可伸缩网络服务的几种结构,它们都需要一个前端的负载调度器(或者多个进行主从备份)。我们先分析实现虚拟网络服务的主要技术,指出IP负载均衡技术是在负载调度器的实现技术中效率最高的。在已有的IP负载均衡技术中,主要有通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器, 我们称之为VS/NAT技术(Virtual Server via Network Address Translation)。在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出了通过IP隧道实现虚拟服务器的方法VS/TUN (Virtual Server via IP Tunneling),和通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing),它们可以极大地提高系统的伸缩性。VS/NAT、VS/TUN和VS/DR技术是LVS集群中实现的三种IP负载均衡技术

技术

【1】技术简介

LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。

【2】集群采用三层结构

一般来说,LVS集群采用三层结构,其主要组成部分为:

A、负载调度器(load balancer),它是整个集群对外面的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址)上的。

B、服务器池(server pool),是一组真正执行客户请求的服务器,执行的服务有WEB、MAIL、FTP和DNS等。

C、共享存储(shared storage),它为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务。

【3】调度器

调度器是服务器集群系统的唯一入口点(Single Entry Point),它可以采用IP负载均衡技术、基于内容请求分发技术或者两者相结合。

优点

1、开源,免费

2、在网上能找到一些相关技术资源

3、具有软件负载均衡的一些优点

缺点

1、最核心的就是没有可靠的支持服务,没有人对其结果负责;

2、功能比较简单,支持复杂应用的负载均衡能力较差,如算法较少等;

3、开启隧道方式需重编译内核;

4、配置复杂;

5、主要应用于LINUX,目前没有专门用于WINDOWS的版本,不过可以通过配置,使windows成为LVS集群中的real server(win2003、win2008中)。

  • LVS的实例布署

  • LVS的安装

  • 问题1:不能成功下载安装包

  • 在挂载的镜像中查看不能统一被识别的源

  • 解决1:在源配置的yum源中修改可用的识别

  • LVS的策略的书写

  • 问题2:在真机中测试LVS是否配置成功

  • 解决2:客户->lvs调度器--转换MAC地址--改变--客户->服务器,服务器上添加100

  • 在真机中测试lvs的策略,出现轮询的页面表示实验成功

  • 实际访问的还是调度器,并不是后台的服务器,因此搭建的虚拟的服务器组就成功了
  • 调度器的MAC地址与客户访问的是一致的,但调度器并不是一个真实的服务器

  • 问题3:在客户访问的时候,调度器和服务器同时拥有相同的100,那么如何保证客户访问的一定是调度器,而不是真实的服务器?假如客户访问的是真实的服务器,那么lvs就失去了本身的意义?

  • 解决3:在服务器上做arptables的策略,使得客户端在进行访问的时候,只能访问到调度器,而对服务器的请求包自动丢弃

 

  • 在真机中测试火墙的策略是否修改成功,清除缓存,轮询则表示成功

  • lvs的健康检查

 

za

  • 在后台down掉srever2测试

  • 在后台同时down掉server2和server3测试

  • 高可用集群的安装

  • keepalived的编译

  • 当出现以下的表示keepalived编译成功,可以使用

  • 高可用集群的备份环境

  • 高可用集群的接管(做单向备份)

  • 测试备份是否配置成功

  • 首先在物理机上测试是否在轮询

  • 测试在做lvs的其中的主机down掉以后,备机是否会自动接管主机的工作,即其中的策略

  • 为了能在srever4中查看接管的server1的调度的策略,可以在server4中安装一个ipvsadm,以便测试

  • 在server4中没有写策略,但是可以查看到,说明在主机down掉以后,备份接替了主机上的所有的任务

  • 问题@:高可用集群的备份,对备机的资源及其的浪费,因此怎么合理的使用备机上的资源

  • 解决@:高可用集群的互备,两台机器互为备机,同时也互为主机,当其中的一台机器down掉以后,服务正常进行,对客户来说是透明的

  • 同理相同的方法在server4的配置文件中改变主备,优先级,固定的ip号

  • 测试时将其中的一个可用集群down掉,在物理机上查看两个服务是否同时可用

  • 两个服务依旧可用即说明互备成功,解决了资源的浪费的问题

### 配置 LVS-DR 模式 LVS (Linux Virtual Server) 是一种高效的四层负载均衡解决方案,其 DR (Direct Routing) 模式通过共享虚拟 IP 地址 (VIP),使得客户端请求可以直接路由到真实服务器而无需经过负载均衡器转发数据包[^1]。 #### 1. 基本架构说明 在 LVS-DR 模式下,负载均衡器和真实服务器都需绑定同一个 VIP 地址。为了防止 ARP 广播引发冲突,仅允许负载均衡器对外部网络回应 ARP 请求,而真实服务器则不回应外部的 ARP 请求[^3]。 #### 2. 环境准备 假设环境如下: - **Director(负载均衡器)**: `192.168.1.1` (公网接口),`192.168.10.1`(私网接口) - **Real Servers(真实服务器)**: - RS1: `192.168.10.2` - RS2: `192.168.10.3` - **VIP地址**: `192.168.1.1` #### 3. Director 的配置 ##### 安装 ipvsadm 工具 ```bash yum install -y ipvsadm ``` ##### 添加服务规则 执行以下命令来设置 LVS-DR 模式的调度策略: ```bash ipvsadm -A -t 192.168.1.1:80 -s rr ``` 其中 `-A` 表示添加一条新的虚拟服务记录;`-t` 表明这是 TCP 协议的服务;`rr` 表示轮询算法。 ##### 将 Real Servers 加入集群 分别将两台真实服务器加入到该虚拟服务中: ```bash ipvsadm -a -t 192.168.1.1:80 -r 192.168.10.2:80 -m ipvsadm -a -t 192.168.1.1:80 -r 192.168.10.3:80 -m ``` 这里 `-a` 参数用于向已存在的虚拟服务添加一台真实的服务器实例;`-m` 则指定了采用 DR 方式工作[^4]。 #### 4. 实际服务器端配置 每台实际服务器都需要安装 Web 服务程序并确保能够正常运行。例如对于 Apache HTTPD 可以这样操作: ```bash yum install -y httpd && echo "This is server rs1" >> /var/www/html/index.html && systemctl start httpd ``` 同时还需要手动指定回环设备 lo 使用 VIP 来接收来自 director 发送过来的数据流: ```bash ifconfig lo:0 192.168.1.1 netmask 255.255.255.255 up route add -host 192.168.1.1 dev eth0 echo "1" > /proc/sys/net/ipv4/conf/eth0/arp_ignore echo "2" > /proc/sys/net/ipv4/conf/eth0/arp_announce sysctl -p ``` 以上步骤完成了基本的 LVS-DR 架构部署过程[^2]。 ### 注意事项 - 所有真实服务器必须位于同一物理局域网内以便能直接访问彼此。 - 如果需要持久会话等功能,则可能还需进一步调整参数或引入额外组件支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值