LVS负载均衡集群和NAT模式部署

目录

一、群集的类型及含义

二、LVS的三种工作模式

一、根据群集所针对的目标差异,可分为三种类型

二、LVS的负载调度算法

三、ipvsadm 工具选项

四、NAT模式 LVS负载均衡群集部署

1.共享服务器配置:

2.节点服务器1配置

3.节点服务器2

4.配置负载调度器

5.windows测试


一、群集的类型及含义

1.群集的含义Cluster:集群、群集
由多台主机构成,但对外只表现为一个整体,只提供一个访问入口 (域名或IP地址),相当于一台大型计算机。
2.问题
互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求越来越高,单台服务器已经无法满足负载均衡及高可用的要求

解决方法
使用价格昂贵的小型机、大型机
使用多台相对廉价的普通服务器构建服务群集
通过整合多台服务器,使用 LVS来达到服务器的高可用和负载均衡,并以同一个IP地址对外提供相同的服务

3.负载均衡群集(LB)

提高系统响应效率,处理更多的访问请求,减少响应延迟,实现高并发,高负载的能力

典型代表:

软件类:nginx,LVS,HAProxy,SLB

硬件类:F5,绿盟

4.高可用群集(HA)

提高系统可靠性,减少中断时间,确保服务的连续性(通常使用n个9代表指标)

典型代表:keepalived,heaetbeat

5.高性能运算群集(HPC)

通过云计算或分布式计算将硬性资源整合成资源池获取高性能的cpu,内存等资源,来提高整体运算能力

二、LVS的三种工作模式

一、根据群集所针对的目标差异,可分为三种类型

负载均群集
高可用群集
高性能运算群集

1.负载均衡群集 (Load Balance Cluster)提高应用系统的响应能力、尽可能处理更多的访问请求减少延迟为目标,获得高并发、高负载(LB)的整体性能LB的负载分配依赖于主节点的分流算法,将来自客户机的访问请求分担给多个服务器节点,从而缓解整个系统的负载压力。例如,“DNS轮询”“反向代理”等

2.高可用群集(High Availability Cluster)。提高应用系统的可靠性、尽可能地减少中断时间为目标,确保服务的连续性,达到高可用(HA)的容错效果·HA的工作方式包括双工和主从两种模式,双工即所有节点同时在线主从则只有主节点在线,但当出现故障时从节点能自动切换为主节点“故障切换”“双机热备” 等例如,高性能运算群集(High Performance Computer Cluster)。以提高应用系统的CPU运算速度、扩展硬件资源和分析能力为目标,获得相当于大型、超级计算机的高性能运算(HPC)能力高性能依赖于“分布式运算”、“并行计算”,通过专用硬件和软件将多个服务器的CPU、内存等资源整合在一起,实现只有大型、超级计算机才具备的计算能力。例如,“云计算”“网格计算”等

3.直接路由
Direct Routing,简称DR模式采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道

二、LVS的负载调度算法

1.轮询 (Round Robin)
将收到的访问请求按照顺序轮流分配给群集中的各节点(真实服务器)均等地对待每一台服务器,而不管服务器实际的连接数和系统负载加权轮询 (Weighted Round Robin)
根据调度器设置的权重值来分发请求,权重值高的节点优先获得任务,分配的请求数越多
保证性能强的服务器承担更多的访问流量
2.最少连接 (Least Connections)
根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接数最少的节点
加权最少连接(Weighted Least Connections)
在服务器节点的性能差异较大时,可以为真实服务器自动调整权重性能较高的节点将承担更大比例的活动连接负载

rr(轮询)  wrr(加权轮询)   sh(源地址哈希)   dh(目的地址哈希)   lc(最小连接)   
wlc(加权最小连接):优先分配请求给 <连接数>/<权重值> 的值最小的节点服务器
lblc(基于地址的最小连接):优先根据目的地址哈希将请求分配给同一个节点服务器,若此节点服务器满负荷了则优先将请求分配当前连接数最小的节点服务器

三、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

四、NAT模式 LVS负载均衡群集部署

LVS-NAT模式部署:
1)部署NFS共享存储
2)部署Web节点服务器,注意:节点服务器的默认网关要指向调度器的内网IP,测试的时候可关闭连接保持
3)部署调度器,配置双网卡,开启IP路由转发功能,如果内网中的节点服务器需要访问外网则要配置SNAT规则,安装ipvsadm工具,添加虚拟服务器和真实服务器的相关配置,使用-m选项选择NAT模式
4)客户端设置默认网关指向调度器的外网IP,并使用客户端工具测试

部署共享存储(nfs服务器)
systemctl disable --now firewalld
setenforce 0
mkdir /var/www/html/{accp,benet} -p
cd /var/www/html
echo '<h1>this is test web1 page!</h1>' > accp/text.html
echo '<h1>this is test web2 page!</h1>' > benet/text.html
vim /etc/exports/var/www/html/accp 172.16.114.0/24(rw,sync,no_root_squash)
/var/www/html/benet 172.16.114.0/24(rw,sync,no_root_squash)systemctl enable --now rpcbind nfs
showmount -e配置节点服务器1
systemctl disable --now firewalld
setenforce 0
showmount -e 172.16.114.20
cd /etc/yum.repos.d/
rz -E
yum install -y nginx
cd /etc/nginx/
vim nginx.confkeepalive_timeout  0;   长连接时间修改为0cd /usr/share/nginx/html/
mv * /opt/
vim /etc/fstab172.16.114.20:/var/www/html/accp /usr/share/nginx/html nfs defaults,_netdev 0 0mount -a
df -h
ls /usr/share/nginx/html/
cd /opt
mv *.html /usr/share/nginx/html/
cd /usr/share/nginx/html/
cat text.html
systemctl restart nginx
vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=Ethernet
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.16.114.30
NETMASK=255.255.255.0
GATEWAY=172.16.114.70
DNS1=218.2.135.1systemctl restart network nginx配置节点服务器2
systemctl disable --now firewalld
setenforce 0
showmount -e 172.16.114.20
cd /etc/yum.repos.d/
rz -E
yum install -y nginx
vim /etc/nginx/nginx.confkeepalive_timeout  0;   长连接时间修改为0cd /usr/share/nginx/html/
mv * /opt/
vim /etc/fstab172.16.114.20:/var/www/html/benet /usr/share/nginx/html nfs defaults,_netdev 0 0mount -a
cd /opt
mv *.html /usr/share/nginx/html/
df -h
systemctl restart nginx
vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=172.16.114.60
NETMASK=255.255.255.0
GATEWAY=172.16.114.70
DNS1=218.2.135.1systemctl restart network nginx配置负载调度器
yum install -y ipvsadm                                                #安装ipvsadm管理工具
添加新网卡36
ifconfig
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens36
vim ifcfg-ens33TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=12.0.0.100
NETMASK=255.255.255.0vim ifcfg-ens36             TYPE=Ethernet
BOOTPROTO=static
NAME=ens36
DEVICE=ens36
ONBOOT=yes
IPADDR=172.16.114.70
NETMASK=255.255.255.0systemctl restart network
ifconfig
systemctl disable --now firewalld
setenforce 0
vim /etc/sysctl.confnet.ipv4.ip_forward=1sysctl -p
modprobe ip_vs                                                 #加载 ip_vs模块
cat /proc/net/ip_vs                                            #查看 ip_vs版本信息
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm
ipvsadm -C                                                     #清除原有策略
ipvsadm -A -t 12.0.0.100:80 -s rr
ipvsadm -a -t 12.0.0.100:80 -r 172.16.114.30:80 -m
ipvsadm -a -t 12.0.0.100:80 -r 172.16.114.60:80 -m
ipvsadm                                                    #激活使用
ipvsadm -ln                                                #查看节点状态,Masq代表 NAT模式

1.共享服务器配置:

共享文件配置

2.节点服务器1配置

nginx配置文件

共享挂载

网卡配置

3.节点服务器2

nginx配置文件

共享挂载

网卡配置

4.配置负载调度器

先添加网卡

网卡配置33

网卡配置36

开启路由转发功能

5.windows测试

先设置windows的网卡地址

测试结果:

先ping

再测试主页

最后查看最终结果

这样就部署成功了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/225667.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spring 笔记八 SpringMVC异常处理和SpringMVC拦截器

文章目录 SpringMVC拦截器拦截器&#xff08;interceptor&#xff09;的作用拦截器和过滤器区别拦截器是快速入门拦截器方法说明 SpringMVC拦截器拦截器&#xff08;interceptor&#xff09;的作用拦截器和过滤器区别拦截器是快速入门拦截器方法说明 SpringMVC异常处理异常处理…

autosar引入了Secure SOME/IP-ACL 有什么目的?如何实现的?

Secure SOME/IP-ACL 是一种基于 AUTOSAR 的安全机制&#xff0c;用于保护车载以太网上的 SOME/IP 通信。它的目的是防止未经授权的客户端或服务端访问或提供敏感的服务。 Secure SOME/IP-ACL 的实现主要依赖于两个模块&#xff1a; Secure Onboard Communication (SecOC) Sec…

网络服务IP属地发生变化的原因有哪些?

近期&#xff0c;许多用户发现自己的网络服务IP属地发生了变化。原本固定的IP地址不再是静态的&#xff0c;而是发生了变动。这一现象引起了广大用户的关注和疑惑&#xff0c;对网络服务的使用和信息安全产生了影响。为了解决用户的疑虑&#xff0c;我们对此现象进行了深入探究…

Linux 服务器查看每个用户或者当前用户的磁盘占用量及文件同步

1、查看每个用户的磁盘占用量 #参考du -sh 目录 sudo du -sh /home/*1、两台服务器文件夹同步 rsync -avz -e "ssh -p 端口号" /home/cb215/ 用户名ip地址:/home/dell/16000_port/yf215/参考文献 [1]ubuntu查看每个用户或者当前用户的磁盘占用量及磁盘空间清理

java.lang.UnsupportedOperationException

一、背景 记录一次小坑… 最近在写一个关于Excel导出的小需求&#xff0c;由于系统都有一些工具类&#xff0c;还有原来已经做好的导出&#xff0c;直接拿过来改了改就用了&#xff0c;没想到直接报错&#xff0c;尴尬。 还是那句话&#xff0c;别人都能用&#xff0c;我复制…

AUTOSAR从入门到精通-面向服务的中间件SOME/IP(六)

目录 前言 原理 SOME/IP 协议服务接口 SOME/IP-SD协议文档 1.概述 1

LeetCode260. Single Number III

文章目录 一、题目二、题解 一、题目 Given an integer array nums, in which exactly two elements appear only once and all the other elements appear exactly twice. Find the two elements that appear only once. You can return the answer in any order. You must …

国产浪潮服务器:风扇免手动调节脚本

简介&#xff1a;浪潮集团&#xff0c;是中国本土顶尖的大型IT企业之一&#xff0c;中国领先的云计算、大数据服务商。浪潮集团旗下拥有浪潮信息、浪潮软件、浪潮国际&#xff0c;业务涵盖云计算、大数据、工业互联网等新一代信息技术产业领域&#xff0c;为全球120多个国家和地…

【人工智能】模糊推理

模糊推理:交叉的隶属函数&#xff0c;方法如模糊规则中推理方法一致&#xff0c;step3中的每一个格子都有所应的隶属关系函数 引言&#xff1a;“生活中的模糊关系”模糊集合模糊集合的定义模糊集合的表示法模糊集合表示法示例 隶属函数 模糊规则模糊计算的流程 引言&#xff1…

RT-DETR 目标过线计数

使用 Ultralytics RT-DETR 进行目标计数 🚀 实际应用场景 物流水产养殖使用 Ultralytics RT-DETR 进行传送带包裹计数使用 Ultralytics RT-DETR 在海中进行鱼类计数请使用最新代码(2023年12月8日后),旧版本不支持! 示例 “目标计数示例” 目标计数 from ultralytics

Java8 IfPresent 与 forEach 的组合操作

一、需求背景 Java8的Optional接口是我们经常使用的一个接口&#xff0c;尤其是对对象进行判空的时候&#xff0c;需要经常使用到IfPresent()。 但是&#xff0c;如果是对List进行判空、循环的话&#xff0c;就稍显繁杂了&#xff0c;因为几乎每次对List进行操作的时候&a…

AI视频-stable-video-diffusio介绍

介绍 stbilityai/stable-video-diffusion-img2vid-xt模型&#xff0c;由Stability AI开发和训练的基于散度的图像到视频生成模型。该模型可以接受一张静态图像作为条件,并生成出一个短视频。 该模型通过在SVD Image-to-Video [14帧]的基础上进行微调而来,可以生成576x1024分辨…

初识Redis缓存,一文掌握Redis重要知识文集。

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

存储拆分后,如何解决唯一主键问题?

之前我们讲到了分库分表&#xff0c;现在考虑这样一个问题&#xff1a;在单库单表时&#xff0c;业务 ID 可以依赖数据库的自增主键实现&#xff0c;现在我们把存储拆分到了多处&#xff0c;如果还是用数据库的自增主键&#xff0c;势必会导致主键重复。 那么我们应该如何解决…

Windows 10/11 免费安装HEVC/H.265视频扩展

将系统从 Win 10 升级到 Win 11 后&#xff0c;用系统自带播放器打开 HEVC &#xff08;H.265编码&#xff09;格式视频时&#xff0c;提示缺少编码器无法播放&#xff1b;以前可以通过浏览器访问 ms-windows-store://pdp/?ProductId9n4wgh0z6vhq 跳转到微软应用店免费安装解…

【算法】【动规】乘积为正数的最长子数组长度

跳转汇总链接 &#x1f449;&#x1f517;算法题汇总链接 1.1 乘积为正数的最长子数组长度 &#x1f517;题目链接 给你一个整数数组 nums &#xff0c;请你求出乘积为正数的最长子数组的长度。 一个数组的子数组是由原数组中零个或者更多个连续数字组成的数组。 请你返回乘积…

docker镜像与容器的迁移

docker容器迁移有两组命令&#xff0c;分别是 save & load &#xff1a;操作的是images&#xff0c; 所以要先把容器commit成镜像export & import&#xff1a;直接操作容器 我们先主要看看他们的区别&#xff1a; 一 把容器打包为镜像再迁移到其他服务器 如把mysq…

RMQ算法总结

知识概览 RMQ又叫ST表、跳表&#xff0c;可以用来解决区间最值问题&#xff0c;这里这有查询没有修改。当然&#xff0c;这样的问题用线段树也是可以解决的。RMQ算法本质上是倍增动态规划&#xff0c;它的思想是先倍增预处理再查询。f(i, j)表示从i开始&#xff0c;长度是的区…

【Jeecg Boot 3 - 第二天】2.1、nginx 部署 JEECGBOOT VUE3

一、场景 二、实战 ▶ 2.1、打包&#xff08;build 前端&#xff09; &#xff1e; Stage 1&#xff1a;修改配置文件 .env.production&#xff08;作用&#xff1a;指向后端接口地址&#xff09; &#xff1e; Stage 2&#xff1a;点击build&#xff08;作用&#xff1…

【Ubuntu】Linux常用录屏软件

SimpleScreenRecorder SimpleScreenRecorder 是一款功能强大而易于使用的录屏工具&#xff0c;支持多种输出格式和编码器。 安装命令&#xff1a; sudo apt-get update sudo apt-get install simplescreenrecorder使用 SimpleScreenRecorder&#xff1a; 打开 SimpleScreenR…