LVS- NAT 集群 搭建

集群 概述

何为集群 strong>

  • 一组各自相互独立且又相互依赖的,通过高速 络互联 的计算机组成的一个计算机组,以单一的系统模式加以管理,为用户提供服务,对用户来说,用户只会认为对方是一个服务,一组计算机中的一台计算机就是集群的一个节点.

集群特点 strong>

1)  功能

  • 有实现三种IP负载均衡技术 和 八种连接调度算法的IPVS软件.在IPVS内部实现上,采用了高效的 Hash 函数和垃圾回收机制,能正确的处理调度 文相关的 ICMP消息。虚拟服务的设置数目没有限制,每个虚拟服务有自己的服务器集,它支持持久的虚拟服务(HTTP cookie 和 HTTPS等需要该功能的支持),并提供详尽的统计数据,如连接的处理速率和 文的流量等。针对大规模拒绝服务攻击,实现了三种防卫策略,有基于内容请求分发的应用层交换软件KTCPVS,它也是在 Linux 内核中实现,有相关的集群管理软件对资源进行监测,能及时将故障屏蔽,实现系统的高可用。主、从调度器能周期性地进行状态同步,从而实现更高的可用性.

2)  适用性

  • 后端服务器可运行任何支持TCP/IP的操作系统,包括 Linux ,各种Unix(如FreeBSD、Sun Solaris、HP Unix等),Mac/OS和Windows NT/2000等。
  • 负载调度器能够支持绝大多数的TCP和UDP协议
    协议 内 容
    TCP HTTP,FTP,PROXY,SMTP,POP3,IMAP4,DNS,LDAP,HTTPS,SSMTP等
    UDP DNS,NTP,ICP,视频、音频流播放协议等

    无需对客户机和服务器作任何修改,可适用大多数Internet服务。

3)性能

  • Lvs 服务器集群系统具有良好的伸缩性,可支持几百万个并发连接,配置100M 卡,采用VS/TUN或VS/DR调度技术,集群系统的吞吐量可高达 1Gbits/s; 可配置千兆 卡,则系统的最大吞吐量可接近 10Gbits/s。

4)可靠性

  • Lvs 服务器集群软件已经在很多大型的,关键性的站点得到了很好的应用,所以它的可靠性在真实应用得到了很好的证实。

5)软件许可证

  • Lvs 集群软件是按GPL(GNU Pulic License) 许可证发行的自由软件,这意味着你可以得到软件的源代码,有权对其进行修改,但必须保证修改后的也是以 GPL 方式发行.

应用场景 strong>

  • 一台服务器.可以响应10000个并发 状态码是 200 OK .
  • 一台服务器.如果响应20000个并发,状态码是 200 –> 304 –> 301 –> 500 –> 404 . 由此可见 web 服务的状态码已经达到瓶颈.

解决方法:

  1. 加配置: 加CPU, 加内存, 加带宽, 加SSD 这种解决方法称为“向上扩展”, 能够解决一时  [单台服务器上做动作]
  2. 加服务器: 1台 –> 2台 –> 4台 –> 8台  用多台服务器同时为用户提供服务  ,而这一种解决方法则称为“横向扩展”或“向外扩展” 集群.

集群的种类 strong>

  1. 负载均衡 (Load Balance)集群,简称 LB.
  2. 高可用 (High Avaliability)集群,简称 HA 集群.
  3. 高性能计算 (High Perfermance Computeing) 集群,简称 HPC 集群.

LB  实现手段 strong>

  • 硬件实现 : F5 负载均衡器.
  • 软件实现 : LVS (4 层,传输层)、Nginx (7层,应用层).

 LVS 集群 

官 :http://www.linuxvirtualserver.org/

中文站点: http://zh.linuxvirtualserver.org/

  • LVS 是 (Linux Vritual Server) 的缩写,即 Linux 虚拟服务器。是一个虚拟的服务器集群系统,本项目 于 1998年 5月由章文嵩博士成立,是中国最早出现的自由软件项目之一,根据 iotables 的实现来开发的,所以使用跟 iptables 很相似.

LVS 集群工作结构图 strong>

  1. 负载调度器  = 分发器(Load Balabcer,Director):整个集群对外的最前端机,负责接收用户请求,并且根据自己的调度算法,将请求转发到后端真实服务器上,客户认为是来自一个IP地址,实则我们可以称之为 VIP  虚拟地址.
  2. 服务器池 Server Pool :真正为用户提供服务的服务器,每一台服务器就是一台 RS .执行的服务有 web,mail,ftp .DNS 等.
  3. 共享存储 Share Storaged:为RS保持相同内容,提供数据的一致性,可以理解为,为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务.

LVS 模式及工作原理

  • LVS 提供了 三种包转发方式:
  1. NAT ( 络地址映射)
  2. IP Tunneling (IP 隧道)
  3. Direct Routing (直接路由)

NAT ( 络地址映射)

NAT : 络地址转换

  1. DNAT : 目的地址转换,改变的是目的地址
  2. SNAT :源地址转换,改变的是源地址
  3. LVS-NAT :使用的是 SNAT 和 DNAT 完成 文的转发

NAT 方式可支持任何的操作系统,以及私有 络,并且只需一个 Internet IP 地址,但是整个系统性能受到限制,因为执行 NAT 每次需要重写包,有一定的延迟,另外,大部分应用有 80% 的数据是从服务器流向客户机,可以理解用户的请求非常短,而服务器的回应非常大,对负载均衡形成很大压力,称为新的瓶颈.


IP Tunneling (IP 隧道)

Director (分发器) 分配请求到不同的 real server. real server 处理请求后直接回应给用户,这样 director 负载均衡仅处理客户机和服务器的一半连接。IP Tunneling 技术极大的提高了 director 的调度处理能力,同时极大的提高了系统能容纳的最大节点数可以超过 100 个节点,real server 可以在任何 LAN 或 WAN上运行,可以理解为允许地理上的分布,这在灾难恢复中有重要的意义,服务器必须拥有正式的 IP 地址用于与客户机直接通信,并且所有的服务器必须支持 IP 隧道协议.

Direct Routing (直接路由)

与 IP Tunneling 类似,负载均衡仅处理一半的连接,避免了新的性能瓶颈同样增加了系统的可伸缩性, Direct Routing 与 IP Tunneing 相比,没有 IP 封装的开销,但由于采用物理层 (修改 MAC 技术),所有服务器都必须在一个物理段.


LVS – NAT 模式工作原理

客户端访问调度器时,调度器通过 络地址转换,调度器重写请求 文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器;真实服务器的响应 文通过调度器时, 文的源地址被重写,再返回给客户,完成整个负载调度过程。

步骤1 :客户端访问服务器的过程:

  • CIP  客户端的IP

  • VIP  是域名解析的IP, 是集群对外的公 IP

  • DIP  用来和后端服务器进行数据交互的IP, 请求 文转发给后端服务器从此口出去

  • RIP  真实服务器的IP


步骤2:客户端访问调度器时,调度器通过 络地址转换,调度器重写请求 文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器


步骤3:真实服务器的响应 文通过调度器时, 文的源地址被重写,再返回给客户,完成整个负载调度过程

步骤总结及过程地址变化:

1: 客户端请求访问 www.example.com  — >  VIP

     源地址: CIP   目标地址: VIP                 

2: 请求 文到达负载均衡器

     源地址: CIP   目标地址: RIP               

3: RealServer收到 文处理, 响应

     源地址: RIP            目标地址: CIP                    

4: 负载调度器收到 文, 根据自身之前的转发修改记录, 还原 文

     源地址: VIP            目标地址: CIP


配置 LVS – NAT 

环境介绍:

  • 3 台主机  
  • 关闭防火墙

环境拓扑:

配置 LVS

  • 打开路由转发功能

络环境

  • ens33 192.168.1.133  br0 公
  • ens38  192.168.0.19  vmnet4  内

Director 分发器,不需要开启80 服务端口.

安装 LVS 管理工具

设置 规则

 查看

保存配置规则


 配置 真实服务器

络环境

zh75: ens33: vmnet4 : 192.168.0.21  关: 192.168.0.19

zh76: ens33: vmnet4 : 192.168.0.11  关: 192.168.0.19

配置 web 并启服务 2台 real server 配置一样

测试


 

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年6月7日
下一篇 2019年6月7日

相关推荐