什么是服务器
服务器是一种高性能计算机,作为网络的节点,存储、处理网络上80%的数据、信息,因此也被称为网络的灵魂。做一个形象的比喻:服务器就像是邮局的交换机,而微机、笔记本、PDA、手机等固定或移动的网络终端,就如散落在家庭、各种办公场所、公共场所等处的电话机。我们与外界日常的生活、工作中的电话交流、沟通,必须经过交换机,才能到达目标电话;同样如此,网络终端设备如家庭、企业中的微机上网,获取资讯,与外界沟通、娱乐等,也必须经过服务器,因此也可以说是服务器在“组织”和“领导”这些设备。
服务器的构成与微机基本相似,有处理器、硬盘、内存、系统总线等,它们是针对具体的网络应用特别制定的,因而服务器与微机在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面存在差异很大。尤其是随着信息技术的进步,网络的作用越来越明显,对自己信息系统的数据处理能力、安全性等的要求也越来越高,如果您在进行电子商务的过程中被黑客窃走密码、损失关键商业数据;如果您在自动取款机上不能正常的存取,您应该考虑在这些设备系统的幕后指挥者————服务器,而不是埋怨工作人员的素质和其他客观条件的限制。
服务器技术之EMP技术
目前服务器的技术热点主要有:IRISC与CISC技术、处理器技术、多处理器技术(AMP技术、SMP技术、MPP技术、COMA技术、集群技术和NUMA技术)、SCSI接口技术、智能I/O技术、容错技术、磁盘阵列技术、热插拔技术、双机热备份。
服务器在网络中承担传输和处理大量数据的任务,要具备高可伸缩性、高可靠性、高可用性和高可管理性。IA-64体系将带动服务器技术特性的提高,如高性能CPU、多处理器技术、总线和内存技术、容错技术、群集技术、硬件管理接口、均衡服务器平台技术等。
EMP(Emergency Management Port)技术
EMP(Emergency Management Port)技术也是一种远程管理技术,利用EMP技术可以在客户端通过电话线或电缆直接连接到服务器,来对服务器实施异地操作,如关闭操作系统、启动电源、关闭电源、捕捉服务器屏幕、配置服务器BIOS等操作,是一种很好的实现快速服务和节省维护费用的技术手段。 应用ISC和EMP两种技术可以实现对服务器进行远程监控管理。
服务器技术之RAID冗余磁盘阵列技术
目前服务器的技术热点主要有:IRISC与CISC技术、处理器技术、多处理器技术(AMP技术、SMP技术、MPP技术、COMA技术、集群技术和NUMA技术)、SCSI接口技术、智能I/O技术、容错技术、磁盘阵列技术、热插拔技术、双机热备份。
服务器在网络中承担传输和处理大量数据的任务,要具备高可伸缩性、高可靠性、高可用性和高可管理性。IA-64体系将带动服务器技术特性的提高,如高性能CPU、多处理器技术、总线和内存技术、容错技术、群集技术、硬件管理接口、均衡服务器平台技术等。
RAID(Redundant Array of Independent Disks)冗余磁盘阵列技术
RAID技术是一种工业标准,各厂商对RAID级别的定义也不尽相同。目前对RAID级别的定义可以获得业界广泛认同的有4种,RAID 0、RAID 1、RAID 0+1和RAID 5。
RAID 0是无数据冗余的存储空间条带化,具有成本低、读写性能极高、存储空间利用率高等特点,适用于Video/Audio信号存储、临时文件的转储等对速度要求极其严格的特殊应用。但由于没有数据冗余,其安全性大大降低,构成阵列的任何一块硬盘的损坏都将带来灾难性的数据损失。所以,若在RAID 0中配置4块以上的硬盘,对于一般应用来说是不明智的。
RAID 1是两块硬盘数据完全镜像,安全性好,技术简单,管理方便,读写性能均好。但它无法扩展(单块硬盘容量),数据空间浪费大,严格意义上说,不应称之为"阵列"。
RAID 0+1综合了RAID 0和RAID 1的特点,独立磁盘配置成RAID 0,两套完整的RAID 0互相镜像。它的读写性能出色,安全性高,但构建阵列的成本投入大,数据空间利用率低,不能称之为经济高效的方案。
负载均衡技术概览
当前,无论在企业网、园区网还是在广域网如Internet上,业务量的发展都超出了过去最乐观的估计,上网热潮风起云涌,新的应用层出不穷,即使按照当时最优配置建设的网络,也很快会感到吃不消。尤其是各个网络的核心部分,其数据流量和计算强度之大,使得单一设备根本无法承担,而如何在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不致于出现一台设备过忙、而别的设备却未充分发挥处理能力的情况,就成了一个问题,负载均衡机制也因此应运而生。
负载均衡建立在现有网络结构之上,它提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。它主要完成以下任务:解决网络拥塞问题,服务就近提供,实现地理位置无关性 ;为用户提供更好的访问质量;提高服务器响应速度;提高服务器及其他资源的利用效率;避免了网络关键部位出现单点失效。
对一个网络的负载均衡应用,可以从网络的不同层次入手,具体情况要看对网络瓶颈所在之处的具体分析,大体上不外乎从传输链路聚合、采用更高层网络交换技术和设置服务器集群策略三个角度实现。
■传输链路聚合
为了支持与日俱增的高带宽应用,越来越多的PC机使用更加快速的链路连入网络。而网络中的业务量分布是不平衡的,核心高、边缘低,关键部门高、一般部门低。伴随计算机处理能力的大幅度提高,人们对多工作组局域网的处理能力有了更高的要求。当企业内部对高带宽应用需求不断增大时(例如Web访问、文档传输及内部网连接),局域网核心部位的数据接口将产生瓶颈问题,瓶颈延长了客户应用请求的响应时间。并且局域网具有分散特性,网络本身并没有针对服务器的保护措施,一个无意的动作(像一脚踢掉网线的插头)就会让服务器与网络断开。
通常,解决瓶颈问题采用的对策是提高服务器链路的容量,使其超出目前的需求。例如可以由快速以太网升级到千兆以太网。对于大型企业来说,采用升级技术是一种长远的、有前景的解决方案。然而对于许多企业,当需求还没有大到非得花费大量的金钱和时间进行升级时,使用升级技术就显得大材小用了。在这种情况下,链路聚合技术为消除传输链路上的瓶颈与不安全因素提供了成本低廉的解决方案,
链路聚合技术,将多个线路的传输容量融合成一个单一的逻辑连接。当原有的线路满足不了需求,而单一线路的升级又太昂贵或难以实现时,就要采用多线路的解决方案了。目前有4种链路聚合技术可以将多条线路“捆绑”起来。同步IMUX系统工作在T1/E1的比特层,利用多个同步的DS1信道传输数据,来实现负载均衡。IMA是另外一种多线路的反向多路复用技术,工作在信元级,能够运行在使用ATM路由器的平台上。用路由器来实现多线路是一种流行的链路聚合技术,路由器可以根据已知的目的地址的缓冲(cache)大小,将分组分配给各个平行的链路,也可以采用循环分配的方法来向线路分发分组。多重链路PPP,又称MP或MLP,是应用于使用PPP封装数据链路的路由器负载平衡技术。MP可以将大的PPP数据包分解成小的数据段,再将其分发给平行的多个线路,还可以根据当前的链路利用率来动态地分配拨号线路。这样做尽管速度很慢,因为数据包分段和附加的缓冲都增加时延,但可以在低速的线路上运行得很好。
链路聚合系统增加了网络的复杂性,但也提高了网络的可靠性,使人们可以在服务器等关键LAN段的线路上采用冗余路由。对于IP系统,可以考虑采用VRRP(虚拟路由冗余协议)。VRRP可以生成一个虚拟缺省的网关地址,当主路由器无法接通时,备用路由器就会采用这个地址,使LAN通信得以继续。总之,当主要线路的性能必需提高而单条线路的升级又不可行时,可以采用链路聚合技术。
更高层交换
大型的网络一般都是由大量专用技术设备组成的,如包括防火墙、路由器、第2层/3层交换机、负载均衡设备、缓冲服务器和Web服务器等。如何将这些技术设备有机地组合在一起,是一个直接影响到网络性能的关键性问题。现在许多交换机提供第四层交换功能,可以将一个外部IP地址映射为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址,达到负载均衡的目的。有的协议内部支持与负载均衡相关的功能,例如HTTP协议中的重定向能力。
Web内容交换技术,即URL交换或七层交换技术,提供了一种对访问流量的高层控制方式。Web内容交换技术检查所有的HTTP报头,根据报头内的信息来执行负载均衡的决策,并可以根据这些信息来确定如何为个人主页和图像数据等内容提供服务。它不是根据TCP端口号来进行控制的,所以不会造成访问流量的滞留。如果Web服务器已经为图像服务、SSL对话、数据库事务服务之类的特殊功能进行了优化,那么,采用这个层次的流量控制将可以提高网络的性能。目前,采用第七层交换技术的产品与方案,有黎明网络的iSwitch、交换机,Cisco的CDN(内容交换网络系统)等。
服务器群集解决方案
在某些情况下,例如,某网站内部职员和外部客户同时使用网站,而公司要将内部职员的服务请求连接到一个较慢的服务器来为外部客户提供更多的资源,这时就可以使用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系统的优势之一。导致日常维护工作的中断有:主机升级、硬件维护或安装、操作系统升级、应用/文件升级或维护、文件重组、全系统备份等原因。意外的灾难包括硬盘损坏、系统故障、软件故障、用户错误、电源掉电、人为破坏和自然灾害等因素。
SMP
SMP(Symmetrical Multi-Processor)就是对称式多处理器。在对称式结构中,机器里每一位处理器的地位都是一样的,它们连接在一起,共享一个存储器。存储器里有一个操作系统,每个计算机都能运行这个操作系统,都能响应外部设备的要求,即每个存储器的地位是平等的、对称的。在国内市场上这类机型的处理器一般以4个或8个为主,有少数是16个处理器。但是一般来讲,SMP结构的机器可扩展性较差,很难做到100个以上多处理器,常规的一般是8个到16个,不过这对于多数的用户来说已经够用了。这种机器的好处在于它的使用方式和微机或工作站的区别不大,编程的变化相对来说比较小,原来用微机工作站编写的程序如果要移植到SMP机器上使用,改动起来也相对比较容易。SMP结构的机型可用性比较差。因为4个或8个处理器共享一个操作系统和一个存储器,一旦操作系统出现了问题,整个机器就完全瘫痪掉了。而且由于这个机器的可扩展性较差,不容易保护用户的投资。但是这类机型技术比较成熟,相应的软件也比较多,因此现在国内市场上推出的并行机大量都是这一种。
集群技术
通俗地说,集群是这样一种技术:它至少将两个系统连接到一起,使两台服务器能够像一台机器那样工作或者看起来好像一台机器。采用集群系统通常是为了提高系统的稳定性和网络中心的数据处理能力及服务能力。自80年代初以来,各种形式的集群技术纷纷涌现。因为集群能够提供高可用性和可伸缩性,所以,它迅速成为企业和ISP计算的支柱。
常见集群技术
1.服务器镜像技术
服务器镜像技术是将建立在同一个局域网之上的两台服务器通过软件或其他特殊的网络设备(比如镜像卡)将两台服务器的硬盘做镜像。其中,一台服务器被指定为主服务器,另一台为从服务器。客户只能对主服务器上的镜像的卷进行读写,即只有主服务器通过网络向用户提供服务,从服务器上相应的卷被锁定以防对数据的存取。主/从服务器分别通过心跳监测线路互相监测对方的运行状态,当主服务器因故障宕机时,从服务器将在很短的时间内接管主服务器的应用。