【SXFU-云计算】通用负载均衡技术介绍


01 负载均衡概述

为什么需要负载均衡

  • 背景介绍

背景介绍

  • 纵向扩展:典型方案→IOE(IBM、Oracle、EMC)

    • 特点:昂贵、数据库性能较好
    • 但是无法满足海量用户诉求
  • 横向扩展(更多厂商选择的方案)

    • 增加服务器
    • 通过软件来解决硬件不可靠问题
      • 引入相关分布式软件技术
  • 解决方案1:DNS轮询

    DNS的作用:把域名翻译为对应的IP地址

解决方案1:DNS轮询

  • 解决方案2:负载均衡

解决方案2:负载均衡

负载均衡概述

  • 负载均衡的功能

负载均衡的功能

  • 负载均衡的分类

负载均衡的分类

  • 典型四层负载均衡方案

典型四层负载均衡方案

  • 典型七层负载均衡方案

典型七层负载均衡方案

一般是使用LVS做四层负载均衡、Nginx做七层负载均衡

HAProxy相对比较灵活,四层和七层负载均衡也都OK

  • 负载均衡性能参数

负载均衡性能参数

网站初期访问量不大的时候,可以选择Nginx或HAProxy做负载均衡

网站达到一定规模后,为了提升稳定性,可以使用LVS,且LVS的转发效率更高,但是LVS的维护对于运维人员的要求较高,投入成本更大

当网站继续发展,并发量很大时,单纯靠一个四层或七层负载均衡不够满足业务网站的诉求,这时候需要做双重负载均衡(先做四层,再做七层)

四层选LVS,七层选Nginx


练习–负载均衡概述

  1. (第07课)在负载均衡中,用于根据虚拟的URL或IP,主机名接收请求,并转发到相应的处理服务器的是( 三层负载均衡 )

  2. (第07课)在四层负载均衡中,通过发布三层的IP地址(VIP),再加上四层的端口号来决定哪些流量需要做负载均衡的是( LVS )。

  3. (第07课)以下哪些是常用的开源负载均衡软件( LVS、Nginx、HAProxy(不选:F5) )

  4. (第07课)七层负载均衡是基于IP+端口的负载均衡( × )。


02 典型负载均衡方案LVS

四层负载均衡-LVS概述

  • Linux Virtual Server项目

image-20241002143358789

  • LVS架构

LVS架构

LVS的IP

  • LVS的IP
    • Client IP(CIP):客户端的IP
    • VIP :Virtual IP
      • LVS负责接收外部网络的报文网卡IP地址
    • DIP : Direct IP
      • 调度器的IP
      • 在LVS上转发数据包到RealServer的后台服务器上的网卡IP地址
    • RIP :RealServer的IP
      • 用于接收Director转发的数据报文

LVS部署模式

  • LVS部署模式-NAT

LVS部署模式-NAT

详细工作流(1)

  • 详细工作流(1)

    • 请求报文和响应报文都需要通过LVS进行地址的修改
    • 缺点:网站访问量大时,该模式的负载均衡有较大瓶颈
      • 能同时处理的服务器数量为10-20台
    • 优点:只需要在负载均衡上复制一个公网IP地址就行
    • 每台RealServer内置网关的地址必须设置成服务器的DIP
  • 详细工作流(3)

详细工作流(3)

  • 详细工作流(2)

详细工作流(2)

  • NAT模式要求

NAT模式要求

LVS部署模式-TUN

  • LVS部署模式-TUN

VPN的原理

  • 请求和响应的数据进行分离,让调度器的负载均衡仅处理请求报文,响应报文直接返还给客户机

  • TUN-详细工作流(1)

TUN-详细工作流(1)

  • TUN-详细工作流(2)

TUN-详细工作流(2)

  • TUN-详细工作流(3)

TUN-详细工作流(3)

  • TUN模式要求

TUN模式要求

  • LVS部署模式-DR

LVS部署模式-DR

  • 真实IP不可见,仅用于响应请求

  • DR-详细工作流(1)

DR-详细工作流(1)

  • DR-详细工作流(2)

DR-详细工作流(2)

  • DR模式要求

DR模式要求

  • LVS部署模式对比

LVS部署模式对比

LVS调度算法

  • LVS连接调度算法

LVS连接调度算法

  • 连接调度算法-RR(1)

连接调度算法

  • 连接调度算法-RR(2)

连接调度算法-RR(2)

  • 连接调度算法-WRR(1)

连接调度算法-WRR(1)

  • 连接调度算法-WRR(2)

连接调度算法-WRR(2)

  • 连接调度算法-最小连接(1)

连接调度算法-最小连接(1)

  • 连接调度算法-最小连接(2)

连接调度算法-最小连接(2)

  • 连接调度算法-加权最小连接调度(1)

连接调度算法-加权最小连接调度(1)

  • 连接调度算法-加权最小连接调度(2)

连接调度算法-加权最小连接调度(2)

  • 连接调度算法-局部性的最少链接调度(1)

连接调度算法-局部性的最少链接调度(1)

  • 连接调度算法-局部性的最少链接调度(2)

连接调度算法-局部性的最少链接调度(2)

  • 连接调度算法-带复制的居于局部性最少链接调度(1)

连接调度算法-带复制的居于局部性最少链接调度(1)

  • 连接调度算法-带复制的居于局部性最少链接调度(2)

连接调度算法-带复制的居于局部性最少链接调度(2)

  • 连接调度算法-目标地址散列调度(1)

连接调度算法-目标地址散列调度(1)

  • 连接调度算法-目标地址散列调度(2)

连接调度算法-目标地址散列调度(2)

  • 连接调度算法-目标地址散列调度(3)

连接调度算法-目标地址散列调度(3)

  • 连接调度算法-源地址散列调度(1)

连接调度算法-源地址散列调度(1)

  • LVS优缺点分析

LVS优缺点分析

LVS典型部署方案

  • 典型LVS部署方案:LVS+Keepalived

典型LVS部署方案:LVS+Keepalived

03 典型负载均衡方案Nginx

七层负载均衡-Nginx概述

Nginx简介

Nginx简介

Nginx功能

Nginx功能

正向代理

正向代理

反向代理

反向代理

Nginx基本模块

Nginx基本模块

Nginx调度算法

Nginx负载均衡策略

Nginx负载均衡策略

负载均衡策略-轮询

负载均衡策略-轮询

负载均衡策略-weight

负载均衡策略-weight

负载均衡策略-ip_hash

负载均衡策略-ip_hash

负载均衡策略-least_conn

负载均衡策略-least_conn

负载均衡策略-第三方策略(1)

负载均衡策略-第三方策略(1)

负载均衡策略-第三方策略(2)

负载均衡策略-第三方策略(2)

Nginx优缺点分析

  • Nginx的优点

Nginx的优点

  • Nginx的缺点

Nginx的缺点

Nginx典型部署方案

Nginx的高可用负载均衡架构

Nginx的高可用负载均衡架构

  • Copyrights © 2024-2025 brocademaple
  • 访问人数: | 浏览次数:

      请我喝杯咖啡吧~

      支付宝
      微信