服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。根据服务器所提供的服务,一般来说服务器都具备承担响应服务请求、承担服务、保障服务的能力。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大,如:cpu、硬盘、内存,系统、系统总线等。 分类 从不同角度观察服务器,可以对服务器有不同的分类方法,下面我们从不同的角度讨论一下服务器的分类。 1、根据体系结构不同,服务器可以分成两大重要的类别:IA架构服务器和RISC架构服务器。 这种分类标准得主要依据是两种服务器采用得处理器体系结构不同。RISC架构服务器采用得CPU是所谓的精简指令集的处理器,精简指令集CPU的主要特点是采用定长指令,使用流水线执行指令,这样一个指令的处理可以分成几个阶段,处理器设置不同的处理单元执行指令的不同阶段,比如指令处理如果分成三个阶段,当第N条指令处在第三个处理阶段时,第N 1条指令将处在第二个处理阶段,第N 2条指令将处在第一个处理阶段。这种指令的流水线处理方式使得CPU有并行处理指令的能力,这使处理器能够在单位时间内处理更多的指令。IA架构的服务器采用的是CISC体系结构,即复杂指令集体系结构,这种体系结构的特点是指令较长,指令的功能较强,单个指令可执行的功能较多,这样我们可以通过增加运算单元,使一个指令所执行的功能能够同时并行执行来提高运算能力。长时间以来两种体系结构一直在相互竞争中成长,都取得了快速的发展。IA架构的服务器采用了开放体系结构,因而有了大量的硬件和软件的支持者,在近年有了长足的发展。 2、根据服务器的规模不同可以将服务器分成工作组服务器、部门服务器和企业服务器。 这种分类方法是一种相对比较老的分类方法,主要是根据服务器应用环境的规模来分类,比如一个十台客户机左右的计算机网络环境适合使用工作组服务器,这种服务器往往采用1个处理器,较小的硬盘容量和不是很强的网络吞吐能力;一个几十台客户机的计算机网络适用部门级服务器适用部门级服务器,部门级服务器相对能力要强,往往采用2颗处理器,较大的内存和磁盘容量,磁盘I/O和网络I/O的能力也较强,这样这台服务器才能有足够的处理能力来受理客户端提出的服务需求;而企业级的服务器往往处于百台客户机以上的网络环境,为了承担对大量服务请求的响应,这种服务器往往采用4颗处理器、有大量的硬盘和内存,并且能够进一步扩展以满足更高的需求,同时由于要应付大量的访问,所以,这种服务器的网络速度和磁盘速度也应该很高。为达到这个要求,往往要采用多个网卡和多个硬盘并行处理。所有上述描述是很不精确的,存在很多特殊情况的,比如一个网络的客户机可能很多,但对服务器的访问可能很少,就没有必要要一台功能超强的企业级服务器,由于这些因素的存在,使得这种服务器的分类方法更倾向于定性,而不是定量,也就是说从小组级到部门级到企业级,服务器的性能是在逐渐加强的,其他各种特性也是在逐渐加强的。 3、根据服务器的功能不同我们可以把服务器分成很多类别 如文件/打印服务器,这是最早的服务器种类,它可以执行文件存储和打印机资源共享的服务,至今,这种服务器还在办公环境里得到了广泛应用。数据库服务器,运行一个数据库系统,用于存储和操纵数据,向连网用户提供数据查询、修改服务,这种服务器也是一种广泛应用在商业系统中的服务器。WEB服务器、E-MAIL服务器、NEWS服务器、PROXY服务器,这些服务器都是INTERNET应用的典型、他们能完成主页的存储和传送、电子邮件服务、新闻组服务等。所有上面讲的这些服务器,都是不仅仅是一个硬件系统,他们往往是通过硬件和软件的结合来实现他们特定的功能。 特性 可以从这几个方面来衡量服务器是否达到了其设计目的;R:Reliability可靠性;A:Availability可用性;S:Scalability可扩展性;U:Usability易用性;M:Manageability可管理性,即服务器的RASUM衡量标准。可以从这几个方面来衡量服务器是否达到了其设计目的;R:Reliability可靠性;A:Availability可用性;S:Scalability可扩展性;U:Usability易用性;M:Manageability可管理性,即服务器的RASUM衡量标准。 1、可扩展性 服务器必须具有一定的"可扩展性",这是因为企业网络不可能长久不变,特别是在当今信息时代。如果服务器没有一定的可扩展性,当用户一增多就不能胜任的话,一台价值几万,甚至几十万的服务器在短时间内就要遭到淘汰,这是任何企业都无法承受的。为了保持可扩展性,通常需要在服务器上具备一定的可扩展空间和冗余件(如磁盘阵列架位、PCI和内存条插槽位等)。 可扩展性具体体现在硬盘是否可扩充,CPU是否可升级或扩展,系统是否支持WindowsNT、Linux或UNIX等多种可选主流操作系统等方面,只有这样才能保持前期投资为后期充分利用。 2、易使用性 服务器的功能相对于PC机来说复杂许多,不仅指其硬件配置,更多的是指其软件系统配置。服务器要实现如此多的功能,没有全面的软件支持是无法想象的。但是软件系统一多,又可能造成服务器的使用性能下降,管理人员无法有效操纵。所以许多服务器厂商在进行服务器的设计时,除了在服务器的可用性、稳定性等方面要充分考虑外,还必须在服务器的易使用性方面下足功夫。 服务器的易使用性主要体现在服务器是不是容易操作,用户导航系统是不是完善,机箱设计是不是人性化,有没有关键恢复功能,是否有操作系统备份,以及有没有足够的培训支持等方面。 3、可用性 对于一台服务器而言,一个非常重要的方面就是它的"可用性",即所选服务器能满足长期稳定工作的要求,不能经常出问题。其实就等同于Sun所提出的可靠性(Reliability)。 因为服务器所面对的是整个网络的用户,而不是单个用户,在大中型企业中,通常要求服务器是永不中断的。在一些特殊应用领域,即使没有用户使用,有些服务器也得不间断地工作,因为它必须持续地为用户提供连接服务,而不管是在上班,还是下班,也不管是工作日,还是休息、节假日。这就是要求服务器必须具备极高的稳定性的根本原因。 一般来说专门的服务器都要7X24小时不间断地工作,特别像一些大型的网络服务器,如大公司所用服务器、网站服务器,以及提供公众服务iqdeWEB服务器等更是如此。对于这些服务器来说,也许真正工作开机的次数只有一次,那就是它刚买回全面安装配置好后投入正式使用的那一次,此后,它不间断地工作,一直到彻底报废。如果动不动就出毛病,则网络不可能保持长久正常运作。为了确保服务器具有高的"可用性",除了要求各配件质量过关外,还可采取必要的技术和配置措施,如硬件冗余、在线诊断等。 4、易管理性 在服务器的主要特性中,还有一个重要特性,那就是服务器的"易管理性"。虽然我们说服务器需要不间断地持续工作,但再好的产品都有可能出现故障,拿人们常说的一句话来说就是:不是不知道它可能坏,而是不知道它何时坏。服务器虽然在稳定性方面有足够保障,但也应有必要的避免出错的措施,以及时发现问题,而且出了故障也能及时得到维护。这不仅可减少服务器出错的机会,同时还可大大提高服务器维护的效率。其实也就是Sun提出的可服务性(Serviceability)。 服务器的易管理性还体现在服务器有没有智能管理系统,有没有自动报警功能,是不是有独立与系统的管理系统,有没有液晶监视器等方面。只有这样,管理员才能轻松管理,高效工作。外形 机架式 机架式服务器的外形看来不像计算机,而像交换机,有1U(1U=1.75英寸=4.445CM)、2U、4U等规格。机架式服务器安装在标准的19英寸机柜里面。这种结构的多为功能型服务器。 对于信息服务企业(如ISP/ICP/ISV/IDC)而言,选择服务器时首先要考虑服务器的体积、功耗、发热量等物理参数,因为信息服务企业通常使用大型专用机房统一部署和管理大量的服务器资源,机房通常设有严密的保安措施、良好的冷却系统、多重备份的供电系统,其机房的造价相当昂贵。如何在有限的空间内部署更多的服务器直接关系到企业的服务成本,通常选用机械尺寸符合19英寸工业标准的机架式服务器。机架式服务器也有多种规格,例如1U(4.45cm高)、2U、4U、6U、8U等。通常1U的机架式服务器最节省空间,但性能和可扩展性较差,适合一些业务相对固定的使用领域。4U以上的产品性能较高,可扩展性好,一般支持4个以上的高性能处理器和大量的标准热插拔部件。管理也十分方便,厂商通常提供以相应的管理和监控工具,适合大访问量的关键应用,但体积较大,空间利用率不高。 刀片式 刀片式服务器是指在标准高度的机架式机箱内可插装多个卡式的服务器单元,实现高可用和高密度。每一块"刀片"实际上就是一块系统主板。它们可以通过"板载"硬盘启动自己的操作系统,如Windows NT/2000、Linux等,类似于一个个独立的服务器,在这种模式下,每一块母板运行自己的系统,服务于指定的不同用户群,相互之间没有关联,因此相较于机架式服务器和机柜式服务器,单片母板的性能较低。不过,管理员可以使用系统软件将这些母板集合成一个服务器集群。在集群模式下,所有的母板可以连接起来提供高速的网络环境,并同时共享资源,为相同的用户群服务。在集群中插入新的"刀片",就可以提高整体性能。而由于每块"刀片"都是热插拔的,所以,系统可以轻松地进行替换,并且将维护时间减少到最小。 塔式 塔式服务器应该是大家见得最多,也最容易理解的一种服务器结构类型,因为它的外形以及结构都跟我们平时使用的立式PC差不多,当然,由于服务器的主板扩展性较强、插槽也多出一堆,所以个头比普通主板大一些,因此塔式服务器的主机机箱也比标准的ATX机箱要大,一般都会预留足够的内部空间以便日后进行硬盘和电源的冗余扩展。 由于塔式服务器的机箱比较大,服务器的配置也可以很高,冗余扩展更可以很齐备,所以它的应用范围非常广,应该说使用率最高的一种服务器就是塔式服务器。我们平时常说的通用服务器一般都是塔式服务器,它可以集多种常见的服务应用于一身,不管是速度应用还是存储应用都可以使用塔式服务器来解决。 机柜式 在一些高档企业服务器中由于内部结构复杂,内部设备较多,有的还具有许多不同的设备单元或几个服务器都放在一个机柜中,这种服务器就是机柜式服务器。机柜式通常由机架式、刀片式服务器再加上其它设备组合而成。 对于证券、银行、邮电等重要企业,则应采用具有完备的故障自修复能力的系统,关键部件应采用冗余措施,对于关键业务使用的服务器也可以采用双机热备份高可用系统或者是高性能计算机,这样的系统可用性就可以得到很好的保证 虚拟化技术简介 虚拟化是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机,它是一个广义的术语,目的是将IT基础设施简单化。虚拟化的对象可以包括服务器、Internet、桌面以及存档空间的虚拟化。自从虚拟化这个概念的提出,其优点被大多数人所熟知,服务器虚拟也变得流行,在过去很长一段时间,世界有一半的服务器都被虚拟化过。它自身存在的一些问题也逐渐袒露在大家面前,例如:服务器虚拟化的过程中颠覆了原有的一些基本结构,使虚拟后的服务器的安全性问题没有办法得到保障,在此基础上访问一些软件可能会产生个人隐私流出的危害,这也将连累被共同虚拟的服务器,而其保存方式也大大增加了信息被盗的几率。由此可见,虚拟化带来的弊端亟需人们解决,根据一项系统的研究表明,大部分的虚拟服务器都比物理服务器更容易被攻击。优点 1、整合资源 完成资源整合是服务器虚拟化的主要工作,在信息时代,各行各业在发展过程中,产生的数据呈现爆炸式增长,如何实现对这些数据和资源的综合利用,是各大行业亟需解决的问题。计算机服务器虚拟化技术的研发和应用,为实现资源整合提供技术支持和应用平台。尤其是近年来,云计算技术的不断普及,集中化资源管理愈发先进,为云技术的发展和推广提供了条件,目前各大企业对计算机硬件资源的利用率不足20%,资源浪费现象依然非常严重,通过服务器虚拟化技术可在原应用保持不变的基础上,集中在某一计算机服务器中,可促使企业的物力资源调利用率大大提升,从而降低了各项硬件的投入,节约了成本。 2、低能耗 在信息时代,技术革新的重中之重,也是降低资源消耗的主要途径,云计算,云计算技术备受推广,在IT界大量推广云计算技术。计算机服务器虚拟化是提升资源利用率的主要途径,也可以对能耗进行合理的管理。虚拟化技术则可以模拟出不同场景,从而实现对计算机系统中各种硬件及软件进行全面系统的检查,发现问题立即显示在界面上,提醒相关人员及时处理,从而达到降低能耗,实现绿色发展的目的。 3、降低运营成本 在信息化服务商不断经营转型的背景下,集约化对成本控制提出了更高的要求,投资愈发精细化,而企业实现IT化运行的关键自傲与集中对数据中心的投资,此项内容主要涉及到两方面内容; ①计算机硬件和许可服务支持的投资。 ②计算机系统运维承的成本投资,通过计算机服务器虚拟化技术,能充分发挥服务器应的性能。 4、应用更加平坦化 通过服务器虚拟化技术可促使计算机服务器应用平台更加平坦化和透明化,在信息时代,数据中心平台逐年增加,计算机服务器的应用愈发复杂,不同平台在具体运行过程中,需要充分考虑不同操作系统和中间件的层面问题。通过服务器虚拟化技术可有效解决此类问题,将应用和硬件平台相互隔离,实现了跨越平台的限制。 1、CPU虚拟化技术 将计算机服务器中的物理CPU虚拟成为一个虚拟的CPU,系统操作可同时使用一个或者多个虚拟CPU,在计算机服务器系统虚拟化CPU可实现相互隔离。目前很多计算机操作系统都是基于X86架构组建起来的,在系统研发设计中,CPU在运行过程中主要涉及到四个层级,分别是Ring0、Ring1、Ring2、Ring3。其中Ring0属于指令层级,可有效执行任何指令,比如;CPU运行的修改都是在Ring0中完成的。虚拟化X86系统,在运行需要在操作系统和硬件之间同时设置虚拟层,Ring0通常情况下,只能在虚拟层中运行,使得一些比较特殊的指令,无法直接作用在硬件上。虚拟化技术则能对各种指令进行有效执行,在计算机服务器虚拟中采用了先进的二进制代码动态翻译机,无论是普通指令,还是特权指令都能有效执行。应用比较先进的前插陷入指令,直接作用在虚拟机上,由虚拟机进行指令翻译,再执行相关操作,此种做法和传统虚拟技术相比,从而实现多系统操作,是目前实现CPU虚拟化的关键技术。 2、内存虚拟化技术 内存虚拟化是实现计算机服务器虚拟化的核心,众所周知,计算机的内存决定了计算机系统的运行效率和稳定性,内存虚拟化的主要原理对服务器中的所有内存都进行统一管理,然后通过虚拟化的封装技术,让内存能够在虚拟机中良好运行。进而促使每个虚拟机都能良好运行。在实现计算机服务器虚拟化过程中,内存虚拟技术和CPU虚拟技术同等重要,访问次数的频率也相互一致。实现虚拟化内存的关键在于实现对物理内存的合理管理,并实现对内存的合理划分,构建起和虚拟层所需内存地址及计算机服务器内存地址相互一致的映射关系,从而确保整个虚拟层的内存访问能够在虚拟化内存和物理内存中的一致性。 3、设备、I/O和网口虚拟化技术 在计算机服务器虚拟化实现过程中,设备和I/O也是计算机系统的主要组成部门,也需要实现虚拟化,才能促使服务器也实现虚拟化。和内存虚拟化相比,设备、I/O和网口虚拟化主要通过专业的封装技术来实现,为虚拟机的运行提供技术支持。经常满足虚拟机进行设备访问和I/O请求的需求,在计算机服务器虚拟化平台中,为设备和I/O的虚拟化实现奠定了坚实基础。在具体运行中,各设备型号、配置、参数等在计算机服务器中存在一定的差异,但具体实现计算机服务器中,虚拟机和实体机之间数据和信息的互换,展现出服务器虚拟化技术应用的效果。此项技术的合理应用,既能拓展计算机服务器虚拟化技术的应用范围,也可以大幅度降低信息时代对计算机底层硬件的依赖程度。只要搭设虚拟平台,就可以实现在不同物理机上的相互迁移。 4、实时虚拟迁移技术 此种虚拟技术和基站软切换的机理基本相同,在计算机服务器中构建了2条链路,虚拟机在实际运行过程中,能够把相对完整的运行环境从原宿机快速迁移到新宿机中,整个迁移过程所需的时间非常短,用户技术几乎察觉不到任何变化。简而言之,实时虚拟迁移技术就是数据拷贝、传送、切换的过程,对计算机服务器硬件维护有非常重要的意义。