我的编程空间,编程开发者的网络收藏夹
学习永远不晚

干货 | LVS虚拟服务器简介

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

干货 | LVS虚拟服务器简介

LVS即Linux Virtual Server,虚拟服务器是一个可高扩展且高可用的服务器,构建在真实服务器集群上。服务器群集的体系结构对最终用户完全透明,用户与群集系统进行交互,就好像它只是一个高性能的虚拟服务器一样。请参考下图:

干货 | LVS虚拟服务器简介

真实服务器和负载均衡器可以通过高速LAN(局域网)或地理上分散的WAN(广域网)互连。负载均衡器可以将请求分配给后端不同的服务器,而对外则只显示为单个IP的虚拟服务。分配的工作方式可以使用IP负载均衡技术或应用级负载均衡技术。通过透明地添加或删除集群中的节点来实现系统的可伸缩性。通过检测节点或守护程序故障并适当地重新配置系统来提供高可用性。

Linux Virtual Server Project的基本目标是:使用集群技术为Linux构建高性能,高可用性的服务器,提供良好的可扩展性,可靠性和可维护性。

为什么需要LVS?

随着互联网的爆炸性增长及其在我们生活中日益重要的作用,互联网上的流量急剧增加。服务器上的工作负载也随之迅速增加,因此服务器很容易在短时间内过载,尤其是对于一些受欢迎的网站。为了克服服务器的过载问题,有两种解决方案:一种是单服务器解决方案,即将服务器升级到性能更高的服务器,但是当请求增加时它很快就会过载,因此我们必须再次升级,升级过程复杂且成本高;另一种是多服务器解决方案,即在服务器集群上构建可扩展的网络服务系统。当负载增加时,我们可以简单地将新服务器或更多服务器添加到集群中以满足不断增长的请求。因此,为网络服务构建服务器集群系统更具可扩展性和成本效益。

有几种方法可以构建服务器集群:

A. 基于DNS的负载均衡集群

DNS负载平衡可能是构建网络服务集群的最简单方法。它使用域名系统通过将域名解析为服务器的不同IP地址来将请求分发到不同的服务器。当DNS请求到达DNS服务器解析域名时,DNS服务器根据调度策略(例如以循环方式)发出一个服务器IP地址,然后使用相同的本地缓存名称服务器从客户端发出后续请求在指定的名称解析生存时间(TTL)中发送到同一服务器。

但是,由于客户端和分层DNS系统,很容易导致服务器之间的动态负载不平衡,因此服务器不容易处理其峰值负载。在DNS服务器上无法很好地选择名称映射的TTL值,TTL值很小的话,会导致DNS流量很高,DNS服务器将成为瓶颈。而如果TTL值过高,则动态负载不平衡将变得更糟。即使TTL值设置为零,调度粒度是每个主机,不同用户的访问模式可能会导致动态负载不平衡,因为有些人可能从网站上拉大量页面,而其他人可能只是浏览几页而已。

B. 基于调度程序的负载均衡集群

Dispatcher,也称为负载均衡器,可用于在群集中的服务器之间分配负载,以便服务器的并行服务可以在单个IP地址上显示为虚拟服务,并且最终用户可以像单个服务器一样进行交互而不知道集群中的所有服务器。与基于DNS的负载平衡相比,调度程序可以以精细的粒度(例如每个连接)调度请求,以便在服务器之间实现更好的负载平衡。当一台或多台服务器发生故障时,可以屏蔽故障。服务器管理变得越来越容易,管理员可以随时使用服务器或更多服务器,而且不会中断最终用户的服务。

负载均衡可以在两个级别完成,即应用级和IP级。例如,Reverse-proxy和pWEB是用于构建可伸缩Web服务器的应用程序级负载平衡方法。他们将HTTP请求转发到群集中的不同Web服务器,获取结果,然后将其返回给客户端。由于在应用程序级别处理HTTP请求和回复的开销很高,当服务器节点数量增加到5或更多时,应用程序级负载均衡器将成为新的瓶颈。

LVS工作方式

现在虚拟服务器以三种方式实现。Linux Director中有三种IP负载均衡技术(数据包转发方法)。它们是通过NAT的虚拟服务器,通过IP隧道的虚拟服务器和通过直接路由的虚拟服务器。即NAT/DR/IP Tunneling。

以下小节将解释它们的优缺点。VS/NAT,VS/TUN 和 VS/DR的比较总结在下表中:

干货 | LVS虚拟服务器简介

A. NAT

通过NAT的虚拟服务器的优点是真实服务器可以运行任何支持TCP / IP协议的操作系统,真实服务器可以使用私有Internet地址,并且负载均衡器只需要1个IP地址。

缺点是通过NAT的虚拟服务器的可扩展性是有限的。当服务器节点的数量增加到大约20或更多时,负载平衡器可能是整个系统的瓶颈,因为请求包和响应包都需要由负载平衡器重写。假设TCP数据包的平均长度为536字节,重写数据包的平均延迟约为60us(在奔腾处理器上,使用更高的处理器可以减少一点),负载均衡器的最大吞吐量为8.93 MB /秒。假设真实服务器的平均吞吐量为400Kbytes / s,负载均衡器可以调度22个真实服务器。

B. IP Tunneling

在通过NAT的虚拟服务器中,请求和响应数据包都需要通过负载均衡器,当服务器节点数量增加到20个或更多时,负载均衡器可能成为新的瓶颈,因为网络接口的吞吐量最终有限。从许多Internet服务(例如Web服务)可以看出,请求数据包通常很短,而响应数据包通常包含大量数据。

在通过IP隧道的虚拟服务器中,负载均衡器仅调度对不同真实服务器的请求,而真实服务器直接向用户返回回复。因此,负载均衡器可以处理大量请求,它可以调度超过100个真实服务器,并且它不会成为系统的瓶颈。因此,使用IP隧道将大大增加负载均衡器的最大服务器节点数。即使负载均衡器只有100Mbps全双工网络适配器,虚拟服务器的最大吞吐量也可以达到1Gbps以上。

IP隧道功能可用于构建高性能的虚拟服务器。构建虚拟代理服务器非常好,因为当代理服务器获得请求时,它可以直接访问Internet以获取对象并将它们直接返回给用户。

C. Direct Routing

与通过隧道方法在虚拟服务器中一样,DR模式仅通过直接路由处理虚拟服务器中的客户端到服务器的流量,而由后端的真实服务器直接相应数据包并发送到客户端。这可以大大提高虚拟服务器的可扩展性。

与通过IP隧道方法的虚拟服务器相比,这种方法没有隧道开销,但要求负载均衡器的接口和真实服务器的接口必须在同一网段。

LVS的架构

对于整个系统的可扩展性,可用性和可管理性,我们通常采用下图所示的LVS集群中的三层架构。

干货 | LVS虚拟服务器简介

三层结构包括:

Load Balancer
它是整个集群系统的前端机器,并在一组服务器之间平衡来自客户端的请求,以便客户端认为所有服务都来自单个IP地址。

服务器群集
它是一组运行实际网络服务的服务器,例如Web,邮件,FTP,DNS和媒体服务。

共享存储
为服务器提供共享存储空间,以便服务器可以轻松拥有相同的内容并提供相同的服务。

负载均衡器是服务器集群系统的单一入口点,它可以运行在Linux内核中实现IP负载平衡技术的IPVS,或在Linux内核中实现应用程序级负载平衡的KTCPVS。当使用IPVS时,所有服务器都需要提供相同的服务和内容,负载均衡器根据指定的调度算法和每个服务器的负载将新的客户端请求转发给服务器。无论选择哪个服务器,客户端都应该得到相同的结果。当使用KTCPVS时,服务器可以具有不同的内容,负载均衡器可以根据请求的内容将请求转发到不同的服务器。由于KTCPVS是在Linux内核中实现的,因此中继数据的开销很小,因此它可以具有高吞吐量。

可以根据系统接收的负载更改服务器集群的节点数目。当集群中所有服务器都过载时,可以添加更多新服务器来处理不断增加的工作负载。对于大多数Internet服务(如Web),请求可以在不同的服务器上并行运行。因此,随着服务器集群的节点数量的增加,整体的性能几乎可以线性扩展。

共享存储可以是数据库系统,网络文件系统或分布式文件系统。服务器节点需要动态更新的数据应该存储在基于数据的系统中,当服务器节点并行地读取或写入数据库系统中的数据时,数据库系统可以保证并发数据访问的一致性。静态数据通常保存在网络文件系统(如NFS和CIFS)中,以便所有服务器节点可以共享数据。但是,单个网络文件系统的可扩展性是有限的,例如,单个NFS / CIFS只能支持从4到8个服务器的数据访问。对于大规模集群系统,分布式/集群文件系统可以用于共享存储,例如GPFS,Coda和GFS,然后共享存储也可以根据系统要求进行扩展。

负载均衡器,服务器集群和共享存储通常由高速网络连接,如100Mbps以太网和千兆以太网,这样网络在系统成长时不会成为系统的瓶颈。

LVS高可用

随着越来越多的任务关键型应用程序在Internet上运行,提供高可用服务变得越来越重要。集群系统的一个优点是它具有硬件和软件冗余,因为集群系统由许多独立节点组成,每个节点运行一个操作系统和应用软件的副本。通过检测节点或守护程序故障并适当地重新配置系统,可以实现高可用性,从而可以由集群中的其余节点接管工作负载。

事实上,高可用性是一个很大的领域。高级的高可用系统可以具有可靠的通信子系统,成员管理子系统,并发控制子系统等,需要比较多的学习成本。但是,我们现在可以使用一些现有的软件包来构建高度可用的LVS集群系统。

通常,在负载均衡器上运行服务监视器守护程序以定期检查服务器运行状况,如下图所示。如果在指定时间内服务器访问请求或ICMP ECHO_REQUEST没有响应,服务监视器将认为服务器已经挂掉,并将其从负载均衡器的可用服务器列表中删除,因此不会向这个挂掉的服务器再转发请求。当服务监视器检测挂掉的服务器恢复工作时,服务监视器将服务器添加回可用服务器列表。因此,负载均衡器可以自动掩盖服务守护进程或服务器的故障。此外,管理员还可以使用系统工具添加新服务器以提高系统吞吐量或删除服务器以进行系统维护,而无需关闭整个系统服务。

干货 | LVS虚拟服务器简介

现在负载均衡器可能成为整个系统的单一故障点。为了防止整个系统因负载均衡器故障而停止运行,我们需要设置负载均衡器的备份(或多个备份)。两个心跳守护程序分别在主服务器和备份服务器上运行,它们通过定期检测到“我还活着”这样的消息。当备份的心跳守护进程在指定时间内无法听到来自主服务器的心跳消息时,它将接管虚拟IP地址以提供负载均衡服务。当失败的负载均衡器恢复工作时,有两种解决方案,一种是自动成为备份负载均衡器,另一种是主动负载均衡器释放VIP地址,并且恢复一次接管VIP地址并成为主要负载均衡器。

主负载均衡器具有连接状态,即连接转发到哪个服务器。如果备份负载均衡器在没有这些连接信息的情况下接管,则客户端必须再次将其请求发送到访问服务。为了使负载均衡器故障转移对客户端应用程序透明,我们在IPVS中实现连接同步,主IPVS负载均衡器通过UDP多播将连接信息同步到备份负载均衡器。当备份负载均衡器在主要负载均衡器发生故障后接管时,备份负载均衡器将具有大多数连接状态,因此几乎所有连接都可以通过备份负载均衡器继续访问服务。

点击"产品文档"了解Linux入门指南及创建实例。

欢迎点击“京东云”了解更多精彩内容

干货 | LVS虚拟服务器简介


 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

干货 | LVS虚拟服务器简介

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

干货 | LVS虚拟服务器简介

LVS即Linux Virtual Server,虚拟服务器是一个可高扩展且高可用的服务器,构建在真实服务器集群上。服务器群集的体系结构对最终用户完全透明,用户与群集系统进行交互,就好像它只是一个高性能的虚拟服务器一样。请参考下图:真实服务
2023-06-04

云虚拟服务器的简单介绍

本篇内容主要讲解“云虚拟服务器的简单介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“云虚拟服务器的简单介绍”吧!虚拟主机就是运用网络空间技能把一台服务器分成很多“虚拟的”主机,每一台网络空间都
2023-06-07

虚拟云服务器能干嘛

虚拟云服务器是一种将应用程序与云服务相结合的解决方案,可以为用户提供虚拟化和高可靠性的基础设施。它可以用于创建一个私有云、云存储、数据分析和人工智能平台,以支持大规模数据集的存储、处理和分析。此外,虚拟云服务器还可以为用户提供高可用性、容错性和弹性扩展机制,以应对各种负载。虚拟云服务器的优点包括:高可用性:虚拟云服务器可以提供高可用性和容错性保护,以应对故障或其他不可预见的情况。弹性
2023-10-26

chatgpt虚拟云服务器能干什么

1、可以使用忆 速yunchatgpt虚拟云服务器来托管您的网站并提供稳定的服务。2、chatgpt虚拟云服务器可以用于存储和管理数据,例如备份文件和数据库。3、chatgpt虚拟云服务器可以用于托管您的应用程序,例如电子商务和博客。4、c
2023-05-13

服务器vps虚拟机用来干什么

服务器VPS虚拟机可以用于多种用途,包括但不限于以下几种:1. 网站托管:VPS可以用来托管网站和应用程序。通过VPS,您可以轻松地搭建和管理自己的网站,提供稳定的访问速度和可靠的服务。2. 数据存储和备份:VPS可以安全的数据存储和备份解
2023-08-11

Linux虚拟服务器LVS的三种负载均衡方式对比

本篇内容介绍了“Linux虚拟服务器LVS的三种负载均衡方式对比”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1、LVS的定义?  LV
2023-06-13

香港虚拟云服务器租用能干什么

香港虚拟云服务器租用能干很多事情,以下是一些常见的用途:1. 网站托管:你可以将你的网站部署在香港虚拟云服务器上,让用户在香港和周边地区更快地访问你的网站。2. 数据备份和存储:你可以将重要的数据备份到香港虚拟云服务器上,确保数据的安全性和
2023-08-18

香港虚拟云服务器租用能干什么

香港虚拟云服务器租用用途业务拓展和全球覆盖网站托管和应用程序电子商务和在线零售游戏和娱乐数据存储和分析教育和研究其他用途(电子邮件服务、VDI、区块链开发)
香港虚拟云服务器租用能干什么
2024-04-13

简述虚拟主机与云服务器的区别

虚拟主机和云服务器都是在计算机上提供虚拟化服务的技术。它们的区别在于它们的用途和优点。以下是它们之间的一些区别和比较:用途:虚拟主机通常用于网站托管,可以为网站提供可靠的访问,而且通常是按需提供的。而云服务器则通常用于数据存储或虚拟化平台,例如VMware或GoogleCloud。优点:虚拟主机通常是按需分配的,可以根据网站需求随时添加和减小。这意味着网站的性能可以随着时间推移而得到改善,因为服务器可以在需要的时候添加...
2023-10-27

简述虚拟主机与云服务器的区别与联系

区别:1.技术原理不同:虚拟主机是基于Web服务器的一种软件,使用者通过配置Web服务器的IP地址和其他配置文件来管理和运行应用程序。而云服务器则是一种基于云计算平台的服务器架构,通过云计算技术来提供虚拟化的资源供用户使用。2.可用资源不同:虚拟主机通常需要管理大量的服务器资源,包括CPU、内存、存储等,这些资源的可用性和性能通常受到技术架构和服务器硬件配置的限制。而云服务器则可以根据用户的需求动态分配服...
2023-10-27

简述虚拟主机与云服务器的区别是什么

用途虚拟主机通常用于建立网站或应用程序。它们提供了一种快速、便宜的方式来构建您的网站和应用程序。云服务器是一种托管服务器,可以提供可扩展性和可靠性。云服务器通常包含云计算基础设施,如计算、存储和网络等,以便您可以将数据和应用程序存储在任何地方,并通过互联网访问它们。资源虚拟主机通常有大量的资源,如服务器硬件和带宽,以及
2023-10-27

阿里云服务器能装虚拟机详细介绍与应用

阿里云服务器是一种高性能、高可靠的云计算服务,为用户提供了一种便捷的方式来进行计算和存储资源的管理。然而,很多用户可能会问,阿里云服务器是否可以安装虚拟机?答案是肯定的,阿里云服务器可以安装虚拟机,并且提供了丰富的工具和环境,使得用户能够轻松地在服务器上运行和管理虚拟机。正文:阿里云服务器能够安装虚拟机,主要是因
阿里云服务器能装虚拟机详细介绍与应用
2023-10-30

亚马逊云服务器虚拟机:简单易用的弹性计算服务

1.注册亚马逊云服务账号在开始使用亚马逊云服务器虚拟机之前,您需要先注册一个亚马逊云服务账号。访问亚马逊云服务官方网站,按照指引填写相关信息并完成注册。2.创建云服务器实例登录亚马逊云服务控制台后,点击"EC2"(弹性计算云)服务,进入云服务器实例管理页面。点击"实例启动"按钮,按照向导创建一个新的云服务器实例。3.选择实例配置在创建实例的过程中,您需要选择实例的配置。这包括选择实例类型、操作系统、存储和网络...
2023-10-27

简述虚拟主机与云服务器的区别是什么呢

虚拟主机是一种在因特网上托管网站的技术,可以将多个计算机或其他设备分配给单个服务器上,这些服务器可以使用自己的IP地址或租用其他服务器的IP地址。云服务器是一种提供虚拟化基础设施(包括服务器、存储、网络、应用程序等)的云服务,这些服务在全球范围内为用户提供可扩展的计算资源和服务。虚拟主机是一种在因特网上托管网站的技术,它不需要托管服务提供商的基础设施,因此可以拥有更大的灵活性和控制权。但是,它可能会...
2023-10-27

简述虚拟主机与云服务器的区别和联系方式

一、区别虚拟主机:虚拟主机是一种在物理服务器上创建虚拟机的方式,用于在服务器上运行各种应用程序和网站。相比之下,云服务器是一种提供云服务的平台,它通过互联网将服务器提供给用户。云服务器:云服务器是一种将数据和应用程序存储在云端的服务器。它允许用户租用云服务器,并在其上运行自己的应用程序和网站。相比之下,虚拟主机允许用户
简述虚拟主机与云服务器的区别和联系方式
2023-10-28

编程热搜

目录