LVS负载均衡群集
前言
一、负载均衡群集原理
1.1: 企业群集应用概述
1.2: 企业群集分类
1.2.1:负载均衡群集(Load Balance Cluster)
1.2.2:高可用群集(High Availability Cluster)
1.2.3:高性能运算群集 (High Performance Computer Cluster)
1.3: 负载均衡群集工作模式分析
1.3.1:NAT模式
1.3.2:TUN模式
1.3.3:DR模式
1.3.4:三种工作模式的区别
二、群集架构与虚拟服务器
2.1:负载均衡群集架构
2.2:LVS虚拟服务器
2.3:LVS集群创建于管理工具
前言
负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。
一、负载均衡群集原理
1.1:企业群集应用概述
- 群集的含义
- Cluster,集群、群集
- 有多台主机构成,但对外只表现为 一个整体
- 存在的问题
- 互联网应用中,随着站点对硬件性能、响应速度、服务器稳定性、数据可靠性等要求越来越高,单台服务器力不从心
- 解决方法
- 使用价格昂贵的小型机、大型机,如各类刀片服务器
- 使用普通服务器架构服务群集
1.2:企业 群集分类
根据区级所针对的目标差异,可分为三种类型
- 负载均衡群集
- 高可用群集
- 高性能运算群集
1.2.1:负载均衡群集(Load Balance Cluster)
- 提高应用系统的响应能力、尽可能处理更多的访问请求、减少延迟为目标、获得高并发、高负载(LB)的整体性能
- LB的负载分配依赖于主节点的分流算法
1.2.2:高可用群集(High Availability Cluster)
- 提高应用系统的可靠性、尽可能地减少中断时间为目标,确保服务的连续性,达到高可用(HA)的容错效果
- HA的工作方式包括双工和主从两种模式
- 双工即所有节点同时在线
- 主从只有主节点在线,但当出现故障时从节点能自动切换为主节点
1.2.3:高性能运算群集 (High Performance Computer Cluster)
- 提高应用系统的CPU运算速度、扩展硬件资源和分析能力为目标,获得相当于大型、超级计算机二代高性能运算(HPC)能力
- 高性能依赖于"分布式运算"、“并行计算”,通过专用硬件和软件将多个服务器的CPU、内存等资源整合在一起,实现只有大型、超级计算机才具备的计算能力
1.3:负载均衡群集工作模室分析
- 负载均衡群集是目前企业用得最多的群集类型
- 群集的负载调度技术有三种工作模式
- 地址转换
- IP隧道
- 直接路由
1.3.1:NAT模式
- 地址转换
- Networ Address Translation,简称NAT模式
- 类似于防火墙的私有网络结构,负载电镀漆作为所有服务器节点的网关,及作为客户机的访问入口,也是各节点回应客户机的访问出口
- 服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式
1.3.2:TUN模式
- IP隧道
- IP Tunnel,简称TUN模式
- 采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器
- 服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信
1.3.3:DR模式
- 直接路由
- Direct Routing,简称DR模式
- 采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络
- 负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道
1.3.4:三种工作模式的区别
工作模式 | 节点数量 | 真实网关 | IP地址 | 优点 | 缺点 |
---|---|---|---|---|---|
NAT模式 | LOW 10-20 | 负载调度器 | 公网+私网 | 安全性高 | 效率低,压力大 |
TUN模式 | High 100 | 自有路由器 | 公网 | Wan环境加密数据 | 需要隧道支持 |
DR模式 | High 100 | 自有路由器 | 私网 | 性能最高 | 不能跨越LAN |
二、群集架构与虚拟服务器
2.1:负载均衡群集架构
- 负载均衡的架构
- 第一层,负载调度器(Load Balancer或者Director)
- 第二层,服务器池(Server Pool)
- 第三层,共享存储(Share Storage)
2.2:LVS虚拟服务器
- Linux Virtual Server
- 针对Linux内核的负载均衡解决方案,这是一种底层优化
- 1998年5月,由我国的章文嵩博士创建
[root@ipvsadmin opt]# modprobe ip_vs ###确认内核对LVS的支持
[root@ipvsadmin opt]# cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
-
LVS的负载调度算法
- 轮询(Round Robin)
- 将收到的方位请求按照顺序轮流分配给群集中的各节点(真实服务器),均等地对待每一台服务器,而不管服务器实际的连接数和系统负载
- 加权轮询(Weighted Round Robin)
- 根据调度器设置的权重值在分发请求,权重值高的节点优先获得任务,分配的请求数越多
- 保证性能强的服务器承担更多的访问流量
- 轮询(Round Robin)
-
LVS的负载调度算法
- 最少连接(Least Connections)
- 根据正式服务器已建立的节点数进行分配,将收到的访问请求优先分配给连接数最少的节点
- 加权最少连接(Weighted Least Connections)
- 在服务器节点的性能差异较大时,可以为真实服务器自动调整权重
- 性能较高的节点将承担更大比例的活动连接负载
2.3:LVS集群创建于管理工具
- 最少连接(Least Connections)
-
使用ipvsadm工具
- 创建虚拟服务器
- 添加、删除服务器节点
- 查看群集及节点情况
- 保存负载分配策略
为真实服务器自动调整权重
- 性能较高的节点将承担更大比例的活动连接负载
2.3:LVS集群创建于管理工具
- 使用ipvsadm工具
- 创建虚拟服务器
- 添加、删除服务器节点
- 查看群集及节点情况
- 保存负载分配策略