服务器群集解决方案

发表于:2007-05-25来源:作者:点击数: 标签:
在某些情况下,例如,某网站内部职员和外部客户同时使用网站,而公司要将内部职员的服务请求连接到一个较慢的服务器来为外部客户提供更多的资源,这时就可以使用Web内容交换技术。Web主机访问控制设备也可以使用这种技术来降低硬件成本,因为它可以轻易地将

在某些情况下,例如,某网站内部职员和外部客户同时使用网站,而公司要将内部职员的服务请求连接到一个较慢的服务器来为外部客户提供更多的资源,这时就可以使用Web内容交换技术。Web主机访问控制设备也可以使用这种技术来降低硬件成本,因为它可以轻易地将访问多个主机的用户流量转移给同一个Web服务器。如果用户访问量增加到一定程度,这些流量还可以被转移到专用的Web服务器设备,虽然这种专用设备的成本较高,但是由于使用的是相同的Web内容交换技术来控制流量,所以网络的结构框架就不用再进行改变了。 

但是,使用Web内容交换技术的负载均衡设备所能支持的标准和规则的数目有限,其采用的标准和规则的灵活性也有限。另外,负载均衡设备所能监测到HTTP报头的深度也是限制内容交换能力的一个因素。如果所要找的信息在负载均衡设备所不能监测的字段内,那内容交换的作用就无法发挥。而且,内容交换还受到能够同时开启的TCP连接数量以及TCP连接的建立和断开比率的限制。另外,Web内容交换技术还会占用大量的系统资源(包括内存占用和处理器占用)。对Web内容交换技术进行的测试表明,操纵Web内容的吞吐量是很费力的,有时只能得到很小的性能改进。所以,网络管理员必须认真考虑投入与回报的问题。


■带均衡策略的服务器群集 

如今,服务器必须具备提供大量并发访问服务的能力,其处理能力和I/O能力已经成为提供服务的瓶颈。如果客户的增多导致通信量超出了服务器能承受的范围,那么其结果必然是――宕机。显然,单台服务器有限的性能不可能解决这个问题,一台普通服务器的处理能力只能达到每秒几万个到几十万个请求,无法在一秒钟内处理上百万个甚至更多的请求。但若能将10台这样的服务器组成一个系统,并通过软件技术将所有请求平均分配给所有服务器,那么这个系统就完全拥有每秒钟处理几百万个甚至更多请求的能力。这就是利用服务器群集实现负载均衡的最初基本设计思想。 

早期的服务器群集通常以光纤镜像卡进行主从方式备份。令服务运营商头疼的是关键性服务器或应用较多、数据流量较大的服务器一般档次不会太低,而服务运营商花了两台服务器的钱却常常只得到一台服务器的性能。新的解决方案见图,通过LSANT(Load Sharing Network Address Transfer)将多台服务器网卡的不同IP地址翻译成一个VIP(Virtual IP)地址,使得每台服务器均时时处于工作状态。原来需要用小型机来完成的工作改由多台PC服务器完成,这种弹性解决方案对投资保护的作用是相当明显的――既避免了小型机刚性升级所带来的巨大设备投资,又避免了人员培训的重复投资。同时,服务运营商可以依据业务的需要随时调整服务器的数量。 

网络负载均衡提高了诸如Web服务器、FTP服务器和其他关键任务服务器上的因特网服务器程序的可用性和可伸缩性。单一计算机可以提供有限级别的服务器可靠性和可伸缩性。但是,通过将两个或两个以上高级服务器的主机连成群集,网络负载均衡就能够提供关键任务服务器所需的可靠性和性能。 

为了建立一个高负载的Web站点,必须使用多服务器的分布式结构。上面提到的使用代理服务器和Web服务器相结合,或者两台Web服务器相互协作的方式也属于多服务器的结构,但在这些多服务器的结构中,每台服务器所起到的作用是不同的,属于非对称的体系结构。非对称的服务器结构中每个服务器起到的作用是不同的,例如一台服务器用于提供静态网页,而另一台用于提供动态网页等等。这样就使得网页设计时就需要考虑不同服务器之间的关系,一旦要改变服务器之间的关系,就会使得某些网页出现连接错误,不利于维护,可扩展性也较差。 

能进行负载均衡的网络设计结构为对称结构,在对称结构中每台服务器都具备等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。然后,可以通过某种技术,将外部发送来的请求均匀分配到对称结构中的每台服务器上,接收到连接请求的服务器都独立回应客户的请求。在这种结构中,由于建立内容完全一致的Web服务器并不困难,因此负载均衡技术就成为建立一个高负载Web站点的关键性技术。 

总之,负载均衡是一种策略,它能让多台服务器或多条链路共同承担一些繁重的计算或I/O任务,从而以较低成本消除网络瓶颈,提高网络的灵活性和可靠性。

高端服务器技术 

  
服务器性能指标以系统响应速度和作业吞吐量为代表。响应速度是指用户从输入信息到服务器完成任务给出响应的时间。作业吞吐量是整个服务器在单位时间内完成的任务量。假定用户不间断地输入请求,则在系统资源充裕的情况下,单个用户的吞吐量与响应时间成反比,即响应时间越短,吞吐量越大。为了缩短某一用户或服务的响应时间,可以分配给它更多的资源。性能调整就是根据应用要求和服务器具体运行环境和状态,改变各个用户和服务程序所分配的系统资源,充分发挥系统能力,用尽量少的资源满足用户要求,达到为更多用户服务的目的。 

技术目标 

服务器所要求的高扩展性、高可用性、易管理性、高可靠性不仅是厂商追求的技术目标,也是用户所需求的。 

可扩展性具体表现在两个方面:一是留有富余的机箱可用空间,二是充裕的I/O带宽。随着处理器运算速度的提高和并行处理器数量的增加,服务器性能的瓶颈将会归结为PCI及其附属设备。高扩展性意义在于用户可以根据需要随时增加有关部件,在满足系统运行要求同时,又保护投资。 

可用性是以设备处于正常运行状态的时间比例作为衡量指标,例如99.9%的可用性表示每年有8小时的时间设备不能正常运行,99.999%的可用性表示每年有5分钟的时间设备不能正常运行。部件冗余是提高可用性的基本方法,通常是对发生故障给系统造成危害最大的那些部件(例如电源、硬盘、风扇和PCI卡)添加冗余配置,并设计方便的更换结构(如热插拔),从而保证这些设备即使发生故障也不会影响系统的正常运行。 

可管理性旨在利用特定的技术和产品来提高系统的可靠性,降低系统的购买、使用、部署和支持费用。最显著的作用体现在减少维护人员的工时占用和避免系统停机带来的损失。服务器的管理性能直接影响服务器的易用性。可管理性是TCO各种费用之中所占比例最大的一项。有研究表明,系统的部署和支持费用远远超过了初次购买所花的费用,而付给管理和支持人员的报酬又是其中所占份额最高的。另外,工作效率的降低、商业机会的丧失和营业收入的下滑所带来的财务损失也不可忽视。因此,系统的可管理性既是IT部门的迫切要求,又对企业经营效益起着非常关键的作用。可管理性产品和工具可通过提供系统内部的有关信息而达到简化系统管理的目的。通过网络实现远程管理,技术支持人员在自己的桌面上即可解决问题,不必亲赴故障现场。系统部件可自动监视自己的工作状态,如果发现故障隐患可随时发出警告,提醒维护人员立即采取措施保护企业数据资产,故障部件更换的操作也非常简单方便。 

说到可靠性,简单来说就是要求服务器必须稳定运行,也就是宕机率低。其中的关键在于操作系统与硬件设备的协作,如果待处理的资源控制在CPU和操作系统上,而不是应用上,就会避免由于某项任务处理出错而导致系统无法运行,服务器宕机率将大大降低,而这也恰恰是Unix/Linux系统的优势之一。导致日常维护工作的中断有:主机升级、硬件维护或安装、操作系统升级、应用/文件升级或维护、文件重组、全系统备份等原因。意外的灾难包括硬盘损坏、系统故障、软件故障、用户错误、电源掉电、人为破坏和自然灾害等因素。

原文转自:http://www.ltesting.net