LVS-负载均衡集群和高可用集群

1.集群概述

1)什么是集群

至少包括两台节点服务器。而对外表现为一个整体,只提供一个访问入口(域名或IP地址),为用户提供服务,组成集群的服务器称之为集群的节点

2)集群的特点

1)高性能(performance)

需要cpu运算处理能力超强,把若干台服务器,做成集群节点组成集群,把每台cpu计算能力整合到一起,提升运算能力

2)性价比高

3)可伸缩性

集群可增加或减,提升集群的高可用、高负载等性能

4)高可用性

当某节点宕机后,集群其他节点仍然可提供服务,实现高可用性,确保整个系统的服务必须是7*24小时运行的

3)应用场景:

高并发、高可用性、高性能场景

假如::一台web服务器,如果能够响应10000个并发,如果现在有20000个并发,一台服务器就无法响应。说明,web服务已经达到瓶颈

解决方法:

硬件升级:加配置:加CPU, 加内存, 加带宽, 加SSD 也称纵向扩展

加服务器:使用多台服务器同时为用户提供服务,而这一种解决方法则称为横向扩展

4)集群的种类

1.负载均衡集群(laod balance cluster,简称LB):提高应用系统的响应能力,尽可能处理更多的访问请求,减少延迟为目标,获得高并发、高负载的整体性能

2.高可用集群(high availability cluster,简称HA):提高应用系统的可靠性,减少中断时间为目标,确保服务的连续性,达到高可用,HA的工作方式包括双工、主从两种模式

3.高性能运算集群(high performance computer cluster简称HPC):主要用于提供单个计算机所不能提供的强大的计算能力

主要用于1和2

5)负载均衡集群

负载均衡集群:以提高应用系统的响应能力、尽可能处理更多的访问请求、减少延迟为目标,获得高并发、高负载的整体性能

6)负载均衡集群的分成结构

在典型的负载均衡集群中,包括三个层次:

 负载调度器(load balancer或称为director)负载接收并通过负载均衡策略分发来自客户机的访问请求,分发到后端的web池(real server),提供实际的应用服务,通过伸缩性增加或减少节点数量,对用户是透明的,为了保持服务的一致性,所有节点使用共享存储设备或rsync,备用集群是实现调度器的高可用

 第一层,负载调度器:访问整个集群系统的唯一入口,对外使用所有服务器共有的VIP(virtual IP,虚拟IP)地址,也称集群IP地址。

第二层,服务器池:集群提供的应用服务(如HTTP)由服务器池承担,每个节点具有独立的RIP(real IP,真实IP)地址,负载接收从调度器分发来的客户请求处理用户请求。

第三层,共享存储:服务器池中的所有节点提供稳定、一致的文件存取服务,确保整个集群的统一性

7)负载均衡集群(LB)

硬件的实现: F5负载均衡器

软件的实现: LVS(4层,传输层) ,Nginx(7层,应用层)  haproxy(既可以工作再4层,又可以工作在7层)

2.LVS集群-DR

1. LVS(Linux Virtual Server)介绍

LVS工作在一台server上提供Director(负载均衡器)的功能,本身并不提供服务,只是把特定的请求转发给对应的real server(服务器池),实现集群环境中的负载均衡

LVS工作在ISO模型中的第四层,工作在内核空间,直接工作在内核中的模块,叫ipvs,用户只需安装一个管理工具ipvsadm即可。

官网地址:http://www.linuxvirtualserver.org/

中文站点: LVS中文站点

1.LVS的组成

 LVS 由2部分程序组成,包括 ipvs 和 ipvsadm。

LVS的核心组件 ipvs 工作在 kernel 中,用于定义的集群转发规则把客户端的请求转发到指定的服务器上,另一个组件 ipvsadm 是工作在用户空间的让用户定义 ipvs 规则工具,安装包就是: ipvsadm 

2. LVS 集群工作结构图:

1.负载调度器 

 调度器(Director): 整个集群对外的最前端主机, 负责接收用户请求,根据负载均衡算法,将请求转发到服务器池的某个服务器上,客户端认为服务是来自一个IP地址(我们可称之为VIP虚拟IP地址)

2.服务器池:Server Pool

为用户提供服务的服务器器,每台服务器就是一个RS(real server),执行的服务有WEB、MAIL、FTP和DNS等。

3.共享存储: Shared Storaged

为 RS 保持相同内容,提供数据的一致性,服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务

4.LVS的专用名词

DS: Director Server 是指负载均衡器节点

RS:Real Server 服务器池里运行的服务器

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

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

RIP:Real Server IP 服务器的 IP 地址

CIP : client IP  访问客户端的IP地址

5.LVS的负载调度算法

针对不同的网络服务和配置需要,LVS调度器提供多种不同的负载调度算法,其中最常用的算法包括轮询、加权轮询、最少连接、权最少连接和source hashing源地址hash

1.轮询 (rr,roundrobin):

收到的访问请求按照顺序轮流分配给集群中的各个节点(服务器)

2.加权轮询 (wrr,Weighted RoundRobin):

根据不同的服务器处理能力轮流分配收到的访问请求,将依据不同RS的权重分配请求。权重较高的RS将优先分配请求,分配到的连接数比权重较低的RS更多

3.最少连接 (lc,Least Connections):

IPVS表存储了所有的活动连接,把新的连接请求发送到当前连接数最小的RS

4.加权最少连接 (wlc,WeightedLeastConnections):

在服务器节点的性能差异较大的情况下,可以为真实服务器设置权重,权重较高的节点将承担更大比例的活动连接负载

5.source hashing源地址hash(sh)

将来自同一个ip的请求始终调度至同一 RS

4.LVS负载均衡模式及工作原理

LVS工作模式:

LVS有三种工作模式:DR,NAT,TUN。   DR是三种模式中性能最高的,TUN次之

DR (Direct Routing)路由模式

NAT (Network Address Translation)网络地址映射模式

TUN (IP Tunneling)IP 隧道模式

NAT(网络地址映射)

NAT:网络地址转换

        DNAT:目标地址转换,改变的是目标地址

        SNAT:原地址转换,改变的是源地址

        LVS-NAT:使用的是 SNAT 和 DNAT 完成包的转发

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

IP Tunneling(IP隧道)

采用NAT 技术,由于请求和响应报文都需经过调度器重写,当请求多时调度器处理能力也将成为瓶颈,为了解决这个问题,调度器把请求报文通过IP隧道转发至服务器。

 IP隧道(IP  TUNNEL):简称TUN模式,负载调度器仅作为客户机的访问入口,各节点通过各自的INTERNET连接直接回应客户机,不再经过负载调度器。采用开放式的网络结构。通过专用IP隧道与负载调度器相互通信

real server可以在任何LAN(局域网)或WAN(外网)上运行,允许地理上的分布,服务器必须拥有公网IP地址用于与客户机直接通信,并且所有服务器必须支持IP隧道协议

Direct Routing(直接路由)

属于一种这种方案,直接路由(direct routing):简称DR模式,采用半开放式的网络结构,但各节点并不是分散在各地,在一个局域网里,负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道

DR通过改写请求报文的MAC地址,将请求发送到服务器,服务器响应直接返回给客户。

LVS优点:

 1.抗负载能力强,工作在网络第4层,仅作请求分发用

2.配置性低,配置简单

3.工作稳定,抗负载能力强,稳定性高

4.无流量,lvs仅仅分发请求,而流量并不从它本身出去,没有流量同时也保住了负载均衡器的IO性能不会受到大流量的影响

5.lvs基本上支持所有应用,因为lvs工作在第4层,所以它可以对几乎所有应用做负载均衡,包括http、数据库等

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蟹黄堡!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值