【LVS】负载均衡--nat模式/实验

news2024/11/24 19:18:02

一、LVS运行原理

LVS:Linux Virtual Server ,负载调度器,内核集成,章文嵩,阿里的四层 SLB(Server LoadBalance) 是基于LVS+keepalived 实现
LVS 官网 : http://www.linuxvirtualserver.org/
LVS 相关术语
  • VS: Virtual Server,负责调度
  • RS:RealServer,负责真正提供服务

lvs集群体系结构:

lvs概念:

  • VSVirtual Server
  • RSReal Server
  • CIPClient IP
  • VIP: Virtual serve IP VS外网的IP
  • DIP: Director IP VS内网的IP
  • RIP: Real server IP
  • 访问流程:CIP <--> VIP == DIP <--> RIP
lvs 集群的类型
lvs-nat:
  • 本质是多目标IPDNAT,通过将请求报文中的目标地址和目标端口修改为某挑出的RSRIP
  • PORT实现转发
  • RIPDIP应在同一个IP网络,且应使用私网地址;RS的网关要指向DIP
  • 请求报文和响应报文都必须经由Director转发,Director易于成为系统瓶颈
  • 支持端口映射,可修改请求报文的目标PORT
  • VS必须是Linux系统,RS可以是任意OS系统
nat 模式数据逻辑

案例:

实施:

准备环境:

准备4台虚拟机(rhel9 )

网络编辑器:

lvs服务器

  • 配置两块网卡(nat/仅主机)
  • 虚拟机(rhel9)
  • IP:nat-172.25.254.100/24 ,172.25.254.2  仅主机-192.168.0.100/24
lvs打开内核路由功能
生效:
为了看到效果,在两台不同的服务端里面我们设置的html里的内容访问不一样
webserver1服务器
  • rhel9
  • 仅主机
  • IP:192.168.0.10/24 ,192.168.0.100

安装httpd并开机启动:并编写
webserver2服务器
  • rhel9
  • 仅主机
  • IP:192.168.0.20/24 ,192.168.0.100
 安装httpd并开机启动:并编写

测试环节

在lvs虚拟机上ping并且访问他的内容
在客户机(新机子/但是同一个网段里面)测试

访问流量:

客户把这个流量给了端口网关,然后通过算法到lvs的IP 在去访问这个分布式的ip的内容

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

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

相关文章

poetry配置镜像

1.简介 poetry 是一个包管理和打包的工具。 在 Python 中&#xff0c;对于初学者来说&#xff0c;打包系统和依赖管理是非常复杂和难懂的。即使对于经验丰富的开发者&#xff0c;一个项目总是要同时创建多个文件&#xff1a; setup.py ,requirements.txt,setup.cfg , MANIFES…

Python爬虫入门:如何设置代理IP进行网络爬取或数据采集

在如今这个信息爆炸的时代&#xff0c;数据成为了最有价值的资源之一。而Python作为一种强大且易学的编程语言&#xff0c;被广泛应用于数据采集和网络爬虫中。然而&#xff0c;直接进行网络爬取往往会遇到IP被封禁的问题&#xff0c;因此使用代理IP就成了一个有效的解决方案。…

SpringBoot中读取配置的七种方法总结

❃博主首页 &#xff1a; 「码到三十五」 &#xff0c;同名公众号 :「码到三十五」&#xff0c;wx号 : 「liwu0213」 ☠博主专栏 &#xff1a; <mysql高手> <elasticsearch高手> <源码解读> <java核心> <面试攻关> ♝博主的话 &#xff1a…

Python | TypeError: unsupported operand type(s) for +=: ‘int’ and ‘str’

Python | TypeError: unsupported operand type(s) for : ‘int’ and ‘str’&#xff1a;深度解析 在Python编程中&#xff0c;遇到“TypeError: unsupported operand type(s) for : ‘int’ and ‘str’”这类错误通常意味着你尝试将一个整数&#xff08;int&#xff09;和…

基于OpenCV+MFC的视频读取与对象跟踪平台

基于OpenCVMFC的视频读取与对象跟踪平台 引言一、软件功能简介二、各个功能介绍1、视频操作模块功能介绍1.1打开视频1.2打开摄像头1.3开始录制1.4结束录制1.5暂停1.6恢复1.7关闭1.8还原 2、对象跟踪模块功能介绍2.1 BSM跟踪2.2 颜色跟踪2.3 光流跟踪2.4 KCF多对象跟踪 资源链接…

干货 | 2024步入数字化转型深水区,云原生业务稳定性如何保障(免费下载)

云原生业务的稳定性保障是一个涉及多个层面的复杂任务&#xff0c;以下是一些关键措施和策略&#xff0c;以确保云原生业务的高效稳定运行&#xff1a; 一、平台安全性评估与加固 云原生平台安全评估&#xff1a;对云原生平台&#xff08;如Kubernetes、Docker等&#xff09;…

数学建模--智能算法之鱼群算法

目录 核心原理 应用与实现 实现步骤 性能分析与改进 鱼群算法在解决哪些具体优化问题方面表现最佳&#xff1f; 如何根据不同的应用场景调整鱼群算法的参数设置以提高其性能&#xff1f; 鱼群算法与其他群体智能优化算法&#xff08;如遗传算法、粒子群优化&#xff09;…

鸿道Intewell工业操作系统ARM平台生态:飞腾E2000Q

在这个智能制造和工业自动化的新时代&#xff0c;工业操作系统不仅是技术进步的推动者&#xff0c;更是企业转型升级的加速器。随着全球工业的快速发展&#xff0c;对于能够适应复杂工业环境、满足多样化生产需求的工业操作系统的需求愈发迫切。 鸿道Intewell工业操作系统ARM…

【Java 第七篇章】异常处理

一、简介 Java 异常&#xff08;Exception&#xff09;是 Java 提供的一种用于处理程序中错误情况的机制。当 Java 程序运行时遇到无法继续执行的情况&#xff08;如数组越界、空指针引用等&#xff09;&#xff0c;就会抛出&#xff08;throw&#xff09;一个异常。异常处理是…

【书生大模型实战营第三期】入门岛 第2关 Python基础知识

1. 闯关任务 1 任务描述&#xff1a;实现一个 wordcount 函数&#xff0c;统计英文字符串中每个单词出现的次数。返回一个字典&#xff0c;key 为单词&#xff0c;value 为对应单词出现的次数。 上面是作者编写的代码&#xff0c;运行结果如下。 2. 闯关任务 2 任务描述&#x…

有限元和稀疏矩阵

对于大规模的有限元计算&#xff0c;系统的整体刚度矩阵是非常耗费内存的&#xff0c;以百万自由度为例&#xff0c;刚度矩阵K的大小为100万x100万&#xff0c;元素大小为双精度double&#xff0c;占用8 byte&#xff0c;那么K占用的内存为100万x100万x8 byte 8000G&#xff0…

【模版进阶】

模版进阶 小杨 一、非类型模版参数 模板参数分为类型形参与非类型形参。 类型形参即&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称。 非类型形参&#xff0c;就是用一个常量作为类(函数)模板的一个参数&#xff0c;在类(函数)模板中可…

mysql数据库触发器同步数据

首先检查数据源库是否支持触发器&#xff0c;show ENGINES&#xff0c;如果FEDERATED是NO&#xff0c;表示未开启&#xff0c;如需开启&#xff0c;再mysql配置文件中&#xff0c;添加federated配置到mysqld下面。 一、同服务器不同库触发器同步&#xff0c;这里只举例插入数据…

【用Java学习数据结构系列】探索Java集合框架的无尽秘密pro

看到这句话的时候证明&#xff1a;此刻你我都在努力 加油陌生人 个人主页&#xff1a;Gu Gu Study专栏&#xff1a;用Java学习数据结构系列 喜欢的一句话&#xff1a; 常常会回顾努力的自己&#xff0c;所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者&#xff…

修改SpringBoot启动图标banner

方式一: 将图标文件命名为banner放在resources目录下 文本文件banner 图片banner 方式二&#xff1a;通过配置文件指定图标路径 指定文本图标&#xff1a;spring.banner.locationclasspath:相对于resources下的位置 ("classpath:"可以省略) 指定图片作为图标: sprin…

C语言——扫雷游戏

扫雷游戏通常是一个由方格组成的区域内进行的&#xff0c;其中随机分布着一定数量的地雷 。玩家的目标是通过点击方格来标记出所有地雷的位置&#xff0c;同时避免自己点到地雷而导致游戏失败。游戏开始时&#xff0c;玩家通常只能看到一部分方格&#xff0c;而其余的方格则需要…

消息框:tkinter.messagebox

文章目录 一、tkinter 简介二、tkinter 基础&#xff08;部件 布局管理器&#xff09;三、项目实战3.1、主循环&#xff1a;root.mainloop()3.2、手动摧毁窗口&#xff1a;root.destroy()3.3、布局管理器&#xff1a;pack3.4、布局管理器&#xff1a;grid3.5、布局管理器&…

【ML】transform 之 decoder 及其实现细节

【ML】transform 之 decoder 及其实现细节 1. decoder2. encoder 和decoder 之间是如何处理和传递讯息的&#xff1f;self-attention3. 查询&#xff08;Query&#xff09;、键&#xff08;Key&#xff09;、值&#xff08;Value&#xff09;是三个核心概念及其具体含义和计算方…

轻松应对大量订单:快递批量查询软件大揭秘

在日常生活和工作中&#xff0c;我们经常会遇到需要查询多个快递单号物流信息的情况&#xff0c;无论是电商卖家需要跟踪大量订单&#xff0c;还是消费者想要及时了解自己包裹的运输状态&#xff0c;手动逐一查询都显得既繁琐又低效。今天&#xff0c;我就向大家推荐一款效果非…

如何使用Alist:多网盘管理神器!一站式挂载、集成管理,支持WebDav

在日常生活中&#xff0c;我们或多或少会使用不同的网盘存储和处理各类文件&#xff0c;这往往导致我们的文件管理繁琐且效率低下。 Alist支持将多种不同的网盘服务集成到一个统一的界面中&#xff0c;让你能够轻松地挂载和管理所有文件。 通过Alist&#xff0c;你可以在一个界…