位置: 编程技术 - 正文

Linux虚拟服务器 LVS的三种负载均衡方式比较(linux虚拟局域网搭建)

编辑:rootadmin

推荐整理分享Linux虚拟服务器 LVS的三种负载均衡方式比较(linux虚拟局域网搭建),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:服务器linux 虚拟windows,linux服务器虚拟化,linux服务器虚拟内存,虚拟服务器怎么重启linux,linux虚拟机服务器,虚拟服务器怎么重启linux,LINUX虚拟服务器增加硬盘跟目录,linux虚拟机服务器,内容如对您有帮助,希望把文章链接给更多的朋友!

  1、LVS的定义?

  LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。其实它是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。本项目在年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

  为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。一般来说,LVS集群采用三层结构,其体系结构如图所示:

  LVS集群的体系结构

  2、LVS主要组成部分为:

  负载调度器(load balancer/ Director),它是整个集群对外面的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址)上的。

  服务器池(server pool/ Realserver),是一组真正执行客户请求的服务器,执行的服务一般有WEB、MAIL、FTP和DNS等。

  共享存储(shared storage),它为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务。

  3、LVS负载均衡方式:

  Virtual Server via Network Address Translation NAT(VS/NAT)

  VS/NAT是一种最简单的方式,所有的RealServer只需要将自己的网关指向Director即可。客户端可以是任意操作系统,但此方式下,一个Director能够带动的RealServer比较有限。在VS/NAT的方式下,Director也可以兼为一台RealServer。VS/NAT的体系结构如图所示。

  VS/NAT的体系结构

  Virtual Server via IP Tunneling(VS/TUN)

  IP隧道(IP tunneling)是将一个IP报文封装在另一个IP报文的技术,这可以使得目标为一个IP地址的数据报文能被封装和转发到另一个IP地址。IP隧道技术亦称为IP封装技术(IP encapsulation)。IP隧道主要用于移动主机和虚拟私有网络(Virtual Private Network),在其中隧道都是静态建立的,隧道一端有一个IP地址,另一端也有唯一的IP地址。它的连接调度和管理与VS/NAT中的一样,只是它的报文转发方法不同。调度器根据各个服务器的负载情况,动态地选择一台服务器,将请求报文封装在另一个IP报文中,再将封装后的IP报文转发给选出的服务器;服务器收到报文后,先将报文解封获得原来目标地址为 VIP 的报文,服务器发现VIP地址被配置在本地的IP隧道设备上,所以就处理这个请求,然后根据路由表将响应报文直接返回给客户。

  VS/TUN的体系结构

  VS/TUN的工作流程:

  Virtual Server via Direct Routing(VS/DR)

  VS/DR方式是通过改写请求报文中的MAC地址部分来实现的。Director和RealServer必需在物理上有一个网卡通过不间断的局域网相连。 RealServer上绑定的VIP配置在各自Non-ARP的网络设备上(如lo或tunl),Director的VIP地址对外可见,而RealServer的VIP对外是不可见的。RealServer的地址即可以是内部地址,也可以是真实地址。

  VS/DR的体系结构

Linux虚拟服务器 LVS的三种负载均衡方式比较(linux虚拟局域网搭建)

  VS/DR的工作流程

  VS/DR的工作流程如图所示:它的连接调度和管理与VS/NAT和VS/TUN中的一样,它的报文转发方法又有不同,将报文直接路由给目标服务器。在VS/DR中,调度器根据各个服务器的负载情况,动态地选择一台服务器,不修改也不封装IP报文,而是将数据帧的MAC地址改为选出服务器的MAC地址,再将修改后的数据帧在与服务器组的局域网上发送。因为数据帧的MAC地址是选出的服务器,所以服务器肯定可以收到这个数据帧,从中可以获得该IP报文。当服务器发现报文的目标地址VIP是在本地的网络设备上,服务器处理这个报文,然后根据路由表将响应报文直接返回给客户。

  VS/DR的工作流程

  4、三种负载均衡方式比较:

  Virtual Server via NAT

  VS/NAT 的优点是服务器可以运行任何支持TCP/IP的操作系统,它只需要一个IP地址配置在调度器上,服务器组可以用私有的IP地址。缺点是它的伸缩能力有限,当服务器结点数目升到时,调度器本身有可能成为系统的新瓶颈,因为在VS/NAT中请求和响应报文都需要通过负载调度器。我们在Pentium 处理器的主机上测得重写报文的平均延时为us,性能更高的处理器上延时会短一些。假设TCP报文的平均长度为 Bytes,则调度器的最大吞吐量为8. MBytes/s. 我们再假设每台服务器的吞吐量为KBytes/s,这样一个调度器可以带动台服务器。(注:这是很早以前测得的数据)

  基于 VS/NAT的的集群系统可以适合许多服务器的性能要求。如果负载调度器成为系统新的瓶颈,可以有三种方法解决这个问题:混合方法、VS/TUN和 VS/DR。在DNS混合集群系统中,有若干个VS/NAT负调度器,每个负载调度器带自己的服务器集群,同时这些负载调度器又通过RR-DNS组成简单的域名。

  但VS/TUN和VS/DR是提高系统吞吐量的更好方法。

  对于那些将IP地址或者端口号在报文数据中传送的网络服务,需要编写相应的应用模块来转换报文数据中的IP地址或者端口号。这会带来实现的工作量,同时应用模块检查报文的开销会降低系统的吞吐率。

  Virtual Server via IP Tunneling

  在VS/TUN 的集群系统中,负载调度器只将请求调度到不同的后端服务器,后端服务器将应答的数据直接返回给用户。这样,负载调度器就可以处理大量的请求,它甚至可以调度百台以上的服务器(同等规模的服务器),而它不会成为系统的瓶颈。即使负载调度器只有Mbps的全双工网卡,整个系统的最大吞吐量可超过 1Gbps。所以,VS/TUN可以极大地增加负载调度器调度的服务器数量。VS/TUN调度器可以调度上百台服务器,而它本身不会成为系统的瓶颈,可以用来构建高性能的超级服务器。VS/TUN技术对服务器有要求,即所有的服务器必须支持“IP Tunneling”或者“IP Encapsulation”协议。目前,VS/TUN的后端服务器主要运行Linux操作系统,我们没对其他操作系统进行测试。因为“IP Tunneling”正成为各个操作系统的标准协议,所以VS/TUN应该会适用运行其他操作系统的后端服务器。

  Virtual Server via Direct Routing

  跟VS/TUN方法一样,VS/DR调度器只处理客户到服务器端的连接,响应数据可以直接从独立的网络路由返回给客户。这可以极大地提高LVS集群系统的伸缩性。跟VS/TUN相比,这种方法没有IP隧道的开销,但是要求负载调度器与实际服务器都有一块网卡连在同一物理网段上,服务器网络设备(或者设备别名)不作ARP响应,或者能将报文重定向(Redirect)到本地的Socket端口上。

  三种LVS负载均衡技术的优缺点归纳以下表:

  注:以上三种方法所能支持最大服务器数目的估计是假设调度器使用M网卡,调度器的硬件配置与后端服务器的硬件配置相同,而且是对一般Web服务。使 用更高的硬件配置(如千兆网卡和更快的处理器)作为调度器,调度器所能调度的服务器数量会相应增加。当应用不同时,服务器的数目也会相应地改变。所以,以上数据估计主要是为三种方法的伸缩性进行量化比较。

  5、负载均衡调度算法

  1)最少的连接方式(Least Connection):传递新的连接给那些进行最少连接处理的服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从服务器队列中拿出,不参加下一次的用户请求的分配, 直到其恢复正常。

  2)最快模式(Fastest):传递连接给那些响应最快的服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。

  3)观察模式(Observed):连接数目和响应时间以这两项的最佳平衡为依据为新的请求选择服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。

  4)预测模式(Predictive):BIG-IP利用收集到的服务器当前的性能指标,进行预测分析,选择一台服务器在下一个时间片内,其性能将达到最佳的服务器相应用户的请求。(被BIG-IP 进行检测)

  5)动态性能分配(Dynamic Ratio-APM):BIG-IP 收集到的应用程序和应用服务器的各项性能参数,动态调整流量分配。

  6)动态服务器补充(Dynamic Server Act.):当主服务器群中因故障导致数量减少时,动态地将备份服务器补充至主服务器群。

  7)服务质量(QoS):按不同的优先级对数据流进行分配。

  8)服务类型(ToS): 按不同的服务类型(在Type of Field中标识)负载均衡对数据流进行分配。

  9)规则模式:针对不同的数据流设置导向规则,用户可自行。

  

标签: linux虚拟局域网搭建

本文链接地址:https://www.jiuchutong.com/biancheng/353508.html 转载请保留说明!

上一篇:Linux中如何防止别人修改某些重要文件的解决办法(linux防御)

下一篇:如何用SARG日志分析器来分析Squid日志(sel 日志)

  • 人力资源公司怎么和企业谈合作
  • 关税计算怎么算?
  • 企业利润对外投资 所得税
  • 核定征收的计算方法有哪些
  • 怎么看运费
  • 小规模纳税人不能抵扣进项税额
  • 预付账款收不到发票汇算清缴调整增吗
  • 拍卖公司都要交前期费用吗?
  • 工程材料增值税税率2023年
  • 政策性搬迁资产损失情况怎么写
  • 公司增资麻烦吗?
  • 个人开具工程款发票所得税怎么算
  • 增值税有差额如何调账
  • 出售自建厂房的税率
  • 个体工商户个人经营所得税优惠政策
  • 税收缴款书税务收现专用的用途
  • 发票超过标准可以报销吗
  • 社保公司返还多交的保险费会计分录怎么写?
  • 宣传活动物资
  • 对公直接转私人卡会怎么样
  • 收取国外技术服务费如何在外管申报个税
  • 开票需要对方提供营业执照吗
  • 处理固定资产怎么计算
  • 1697510742
  • deepin解锁文件
  • windows10桌面右键没反应
  • 设计费和勘察费的会计科目
  • 研发费用的归集范围
  • 上月材料入库会计分录
  • 暂存款借方余额
  • php和数据库
  • 高新技术企业研发费用归集
  • 2020年前端面试
  • blender不支持win7
  • 贝纳克波斯图干红葡萄酒
  • 堡垒山是哪个国家
  • 银行利息收入应计入什么科目
  • 店面装修费怎么算
  • ci框架视频教程
  • php 编码
  • 用友u8删除凭证的步骤
  • 四舍五入 vb
  • python byte数组
  • 帝国cms移动端
  • 现金周期和经营周期的计算公式
  • 送货单收据怎么写
  • SQL 2005 ERROR:3145 解决办法(备份集中的数据库备份与现有的数据库不同)
  • 联营扣点怎么做账
  • 母公司与子公司内部合作协议
  • 税控服务费属于增值税减免费?
  • 文化事业建设费2023年是否减免了
  • 企业增值税包含哪些税项及税率
  • 固定资产评估收费标准
  • 商业银行提取的盈余公积可用于
  • 增值税专用发票丢了怎么补救
  • 工人发生工伤的责任划分
  • 代开租金发票的税金怎样入账?
  • 不是公司的车费用能走公司吗
  • 其他应付款贷方表示什么意思
  • 财务月末暂估成本是什么
  • 私营公司商业汇票怎么开
  • mssql查找备注(text,ntext)类型字段为空的方法
  • sqlserver 教程
  • sql字段转首字母大写
  • win8系统连接网络
  • windowxp操作系统
  • 手把手教你如何退税
  • Win10预览版镜像
  • centos设置ftp
  • unity5.x游戏开发指南
  • android 生成图片
  • javascript基础入门教程
  • 3ds 俄罗斯方块
  • bootstraptable方法
  • Javascript字符串对象函数
  • 国税发票打印汇总怎么弄
  • 税务上的工会经费是必须交的吗?
  • 税务稽查建议书反馈意见
  • 建筑行业增值税税收优惠政策
  • 查询完毕
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设