搭建LVS负载均衡集群

 

一,简介:

1,LVS(Linux Virtual Server),即Linux虚拟服务器。它用于多服务器的负载均衡,工作在网络四层,可以实现高性能,高可用的服务器集群技术,它稳定可靠,即使在集群的服务器中某台服务器无法正常工作,也不影响整体效果。是基于TCP/IP做的路由和转发。稳定性和效率很高。

  目前,LVS项目已提供了一个实现可伸缩网络服务的Linux Virtual Server框架,如下图所示。

  IPVS:提供了含有三种IP负载均衡技术的IP虚拟服务器软件

  KTCPVS:基于内容请求分发的内核Layer-7交换机

  Cluster Management:集群管理软件。

 

 

 

 

2,一个LVS集群往往包含以下角色:

  ①DS:Director Server。指的是前端负载均衡器节点。

  ②RS:Real Server。后端真实的工作服务器。

  ③VIP:向外部直接面向用户请求,作为用户请求的目标的IP地址

  ④DIP:Director Server IP,主要用于和内部主机通讯的IP地址

  ⑤RIP:Real Server IP,后端服务器的IP地址

  ⑥CIP:Client IP,访问客户端的IP地址

二,IP虚拟服务器软件IPVS的三种模式简介:

  (一),LVS NAT 模式(通过更改IP实现)

    用户的请求到分发器后,通过预设的iptables规则,把请求的数据包转发到后端的RS上去。RS需要设定网关为分发器的内网IP。用户请求的数据包和返回给用户的数据包全部经过分发器,所以分发器称为瓶颈。在NAT模式中,只需要分发器有公网IP即可,所以比较节省公网IP资源。

 

 

 

  (二),IP Tunnel模式(通过封装报文实现)

    这种模式需要有一个公共的IP配置在分发器和所有的RS上,我们把它叫做VIP。客户端请求的目标IP为VIP,分发器接收到请求数据包后,会对数据包做一个加工,会把目标IP改为RS的IP,这样数据包就到了RS上。RS接收数据包后,会还原原始数据包,这样目标IP为VIP,因为所有RS上配置了这个VIP,所以他会认为是它自己。

 

 

 

  (三),DR模式(通过更改MAC地址实现的)

    和IP Tunnel较为相似,不同的是,它会把数据包的MAC地址修改为RS的MAC地址。真实服务器将响应直接返回给客户。

    这种方式没有IP隧道的开销,对集群中的真实服务期也没有必须支持IP隧道协议的要求,但是要求调度器与真实服务器都有一块网卡连在同一物理网段上。

 

 

 

三,LVS调度算法:

四,内核Layer-7交换机KTCPVS

 

五,实战:LVS集群搭建

  一,环境准备:

  • 虚拟机:Oracle VM VirtualBox 5.2.22
  • 虚拟主机:

    Host1-vbox:Ubuntu 18.04,192.168.3.101

    Host2-vbox:Ubuntu 18.04,192.168.3.102

    Host3-vbox:Ubuntu 18.04,192.168.3.103

    Host4-vbox:Ubuntu 18.04,192.168.3.104

  • 系统服务:LVS(负载均衡),Keepalived(高可用)
  • Web服务:Nginx
  • 集群搭建:LVS DR模式

    

 

 

  

 

posted @ 2020-07-29 17:38  Boogiever  阅读(686)  评论(0编辑  收藏  举报