LVS负载均衡群集+NAT部署

目录

1.企业群集应用概述

[1.1 群集的含义](#1.1 群集的含义)

[1.2 企业群集分类](#1.2 企业群集分类)

2.LVS负载均衡群集运用理论

[2.1 负载均衡的架构](#2.1 负载均衡的架构)

[2.2 LVS负载均衡群集工作的三种模式](#2.2 LVS负载均衡群集工作的三种模式)

[3.LVS虚拟服务器(Linux Virtual Server)](#3.LVS虚拟服务器(Linux Virtual Server))

[3.1 ip_vs通用模块](#3.1 ip_vs通用模块)

[3.2 LVS调度器用的调度方法](#3.2 LVS调度器用的调度方法)

[4.ipvsadm 工具选项说明](#4.ipvsadm 工具选项说明)

5.LVS负载均衡-NAT模式的部署

[5.1 准备虚拟机](#5.1 准备虚拟机)

[5.2 配置NFS共享存储](#5.2 配置NFS共享存储)

[5.3 nginx服务器部署](#5.3 nginx服务器部署)

[5.4 修改网卡配置](#5.4 修改网卡配置)

[5.5 修改LVS服务器](#5.5 修改LVS服务器)

[5.6 windows测试](#5.6 windows测试)


1.企业群集应用概述

1.1 群集的含义

  • Cluster,集群(也称群集)
  • 由多台主机构成,都做相同的一件事,但对外只表现为一一个整体,只提供一个访问入口(域名或IP地址), 相当于一台大型计算机

对于企业服务的的性能提升两种方式:

  • 纵向扩展 :对服务器的CPU 内存 硬盘 等硬件进行升级或者扩容来实现的,性能上限会有瓶颈,成本昂贵,收效比不高等问题
  • 横向扩展 :通过增加服务器主机数量来应该高并发的场景

1.2 企业群集分类

  • 负载均衡群集(LB):提高应用系统的响应能力,处理更多的访问请求,减少延迟,实现高并发、高负载的能力,同时也是如今企业运用最多的群集类型。
  • 高可用群集(HA): 提高应用系统的可靠性,减少服务中断时间标,确保服务的连续性,达到高可用(HA)的容错效果。(通常使用n个9来代表高可用的指标)
  • 高性能运算群集(HPC):将多台服务器的硬件资源整合成资源池以获取高性能的CPU、内存等资源,来提高整体运算能力

2.LVS负载均衡群集运用理论

2.1 负载均衡的架构

第一层:负载调度器:

访问整个群集系统的唯一入口,对外使用所有服务器共有的VIP地址,也称为群集IP 地址。通常会配置主、备两台调度器实现热备份,当主调度器失效以后能够平滑替换至备用调度器,确保高可用性。

第二层:服务器池:

群集所提供的应用服务、由服务器池承担,其中每个节点具有独立的RIP地址(真实IP),只处理调度器分发过来的客户机请求。当某个节点暂时失效时,负载调度器的容错机制会将其隔离,等待错误排除以后再重新纳入服务器池。

第三层:共享存储 :

为服务器池中的所有节点提供稳定、一致的文件存取服务,确保整个群集的统一性。共享存储可以使用 NAS设备,或者提供 NFS共享服务的专用服务器。

2.2 LVS负载均衡群集工作的三种模式

群集的负载调度技术有三种工作模式:地址转换(NAT模式) ,直接路由(DR模式),IP隧道(IP-TUN)。对于商用来说,最常用是NAT模式和DR模式

NAT模式总结:
调度器会作为所有节点服务器的默认网关,也是客户端的访间入口和节点服务器返回响应消息的出口,所以调度器会承载双向流量的负载压力,可能会成为整个群集的件能低颈。由于节点服务器都会处于内网环境并使用私网IP,所以NAT模式具有一定的安全性。


TUN模式总结:
调度器仅作为客户端的访问入口,节点服务器的响应消息是直接返回给客户端的,不需要经过调度器。由于节点服务器需要部署在不同的互联网环境中,所以需要有独立的公网IP。调度器与节点服务器是通过专用的IP隧道相五通信因此IP隧道模式的成本较高、网络安全性较低密,且数据在IP隧道传输的过程中需要额外的封装和解封装过程,性能也会受到一定的影响

DR模式总结:
调度器也是仅作为客户端的访问入口,节点服务器的响应消息是直接返回给客户端的,不需要经过调度器。(与NBT模式的区别)节点服务器与调度器是部署在同一个物理网络中,因此不需要专用的IP隧道(JIP隧道模式的区别)DR模式是企业首选的IVs模式。

3.LVS虚拟服务器(Linux Virtual Server

  • 针对Linux内核开发的负载均衡
  • 1998年5月,由我国的章文嵩博士创建
  • 官方网站:www.linuxvirtualserver.org/
  • LVS实际上相当于基于IP地址的虚拟化应用,为基于IP地址和内容请求分发的负载均衡提出来一种高效的解决方法

3.1 ip_vs通用模块

复制代码
ls /usr/lib/modules/3.10.0-693.el7.x86_64/kernel/net/netfilter/ipvs

LVS所有相关的调度算法模块

LVS现在已成为 Linux 内核的一部分,默认编译为 ip_vs 模块,必要时能够自动调动。

在CentOS 7 系统中,手动加载 ip_vs 模块的命令如下:

复制代码
 modprobe ip_vs     //手动加载 ip_vs 模块
 ​
 cat /proc/net/ip_vs    //查看当前系统中ip_vs模块的版本信息

3.2 LVS调度器用的调度方法

固定调度算法:rr,wrr,dh,sh
rr:轮询算法,将请求依次分配给不同的rs节点,即RS节点中均摊分配。适合于RS所有节点处理性能接近的情况。
wrr:加权轮训调度,依据不同RS的权值分配任务。权值较高的RS将优先获得任务,并且分配到的连接数将比权值低的RS更多。相同权值的RS得到相同数目的连接数。
dh:目的地址哈希调度(destination hashing)以目的地址为关键字查找一个静态hash表来获得所需RS。
sh:源地址哈希调度(source hashing)以源地址为关键字查找一个静态hash表来获得需要的RS。

动态调度算法:wlc,lc,lblc
wlc:加权最小连接数调度,假设各台RS的权值依次为Wi,当前tcp连接数依次为Ti,依次去Ti/Wi为最小的RS作为下一个分配的RS。
lc:最小连接数调度(least-connection),IPVS表存储了所有活动的连接。LB会比较将连接请求发送到当前连接最少的RS。
lblc:基于地址的最小连接数调度(locality-based least-connection):将来自同一个目的地址的请求分配给同一台RS,此时这台服务器是尚未满负荷的。否则就将这个请求分配给连接数最小的RS,并以它作为下一次分配的首先考虑。

4.ipvsadm 工具选项说明

|----------------|-------------------------------------------------|
| ipvsadm的选项 | 作用 |
| -A | 添加虚拟服务器 |
| -D | 删除整个虚拟服务器 |
| -s | 指定负载调度算法(轮询:rr、加权轮询:wrr、最少连接:lc、加权最少连接:wlc) |
| -a | 表示添加真实服务器(节点服务器) |
| -d | 删除某一个节点 |
| -t | 指定 VIP地址及 TCP端口 |
| -r | 指定 RIP地址及 TCP端口 |
| -m | 表示使用 NAT群集模式 |
| -g | 表示使用 DR模式 |
| -i | 表示使用 TUN模式 |
| -w | 设置权重(权重为 0 时表示暂停节点) |
| -p 60 | 表示保持长连接60秒(默认关闭连接保持) |
| -l | 列表查看 LVS 虚拟服务器(默认为查看所有) |
| -n | 以数字形式显示地址、端口等信息,常与"-l"选项组合使用。ipvsadm -ln |

5.LVS负载均衡-NAT模式的部署

5.1 准备虚拟机

192.168.9.140LVS调度器
192.168.9.210和192.168.9.120做nginx web服务器(yum安装nginx)
192.168.9.150NFS共享存储

复制代码
systemctl disable --now firewalld
setenforce 0
所有虚拟机做初始化操作

5.2 配置NFS共享存储


5.3 nginx服务器部署

通过yum给两台虚拟机安装nginx

NFS虚拟机准备测试界面



将测试界面分别挂载到两台nginx虚拟机

192.168.9.210



192.168.9.120



5.4 修改网卡配置

192.168.9.140

首先新添加一张网卡

修改网卡配置


192.168.9.210


192.168.9.120


5.5 修改LVS服务器

192.168.9.140

开启路由转发功能

设置SNAT规则

加载模块

使用ipvsadm配置LVS-NAT模式转发规则


5.6 windows测试


网页测试


相关推荐
门思科技31 分钟前
LoRaWAN通信协议详解:架构、加密机制与核心应用
运维·服务器·网络·嵌入式硬件·物联网
乐维_lwops43 分钟前
2025年运维监控建设重点是什么?
运维·监控系统·it监控
二进制coder1 小时前
Linux RTC 驱动子系统详细实现方案
linux·运维·实时音视频
淮北4941 小时前
linux系统学习(10.shell基础)
linux·运维·服务器·学习
视觉震撼1 小时前
RDP登录事件详细溯源分析脚本(兼容Windows PowerShell版本)
运维·网络·windows·网络安全·网络攻击模型·安全威胁分析·安全架构
noravinsc2 小时前
两台 centos 7.9 部署 pbs version 18.1.4 集群
linux·运维·centos
你的微笑,乱了夏天2 小时前
linux centos常用命令整理
linux·运维·centos
网硕互联的小客服2 小时前
Windows2008 如何禁用FSO?
运维·服务器·网络·windows·安全
塔能物联运维3 小时前
物联网运维中的多模态数据融合与智能决策优化技术
运维·物联网
xingyue_S3 小时前
LVS负载均衡群集(一) -- NAT模式
运维·负载均衡·lvs