一、服务器的综述
服务器是指通过网络为客户端提供特定服务的高性能计算机。它是一种软件与硬件的结合体,通过服务器操作系统来管理和充分利用服务器硬件的计算能力并提供服务。
服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。
服务器的功能:作为网络节点,服务器负责完成数据的存储、传输、处理和发布。
服务器的最大特点就是强大的运算能力和存储数据能力,能在短时间内完成大量工作及负载大量文件资料存储,并为大量用户提供服务。
服务器被设计为每天24小时管理、存储、发送和处理数据,对比普通台式机,服务器需要有更高的处理能力、稳定性、可靠性、安全性、可拓展性和可管理性。
服务器与普通台式机的对比如下:
二、服务器的发展历史
20世纪60年代,吉恩·阿姆达尔创造最早的大型机(Mainframe)即IBM S/360大型机。在大型主机时代,曾经有“一个蓝色巨人与七个小矮人”的说法,包括:IBM—蓝色巨人以及Burroughs、UNIVAC、NCR、Control Data、Honeywell、General Electric和 RCA。
大型机由于其安全性和高可靠性一直被应用于金融、证券等行业。随着时间的推移,大型机的许多劣势被暴露出来,价格昂贵、技术封闭、应用和部署都异常复杂,更为关键的是,大型机虽然在某些领域仍然有着不可替代的位置,但传统的集中式处理方式和封闭的软件堆栈已经无法适应越来越小型化、普及化的计算需求。
在这样需求变化趋势下,1965年DEC公司开发了一款DPD-8小型机,掀起了一场小型机革命。
20世纪80年代以RISC架构和UNIX操作系统为主导的小型机成为市场主流。小型机继承了大型机在安全性和高可靠性的性能,同时相比大型机来说体积变小、更易用、价格降低。而小型机跟普通台式机有很大差别——最重要的一点高高可靠性、高可用性、高服务性(RAS, Reliability, Availability, Serviceability)。
20世纪90年代,x86架构的PC服务器开始崛起。PC服务器是一个通用开放系统,其操作系统安全性和可靠性相对较弱,但易用性、通用性、易开发性是最主要的优势。随着Linux和云计算等分布式计算模式的兴起,x86架构的PC服务器得到了更广泛的应用,近年来x86服务器的出货量占整个服务器市场的80%左右。
随着公司自身IT环境的复杂化,公司开始使用由多家供应商提供的商用服务器、操作系统和应用程序,他们必然面临着物理硬件利用率不足的问题 —— 每台服务器只能运行1个供应商特定的任务。另外还需要组建一个完整的运维团队来支持这些设备和软件的正常运作,对于中小型企业来说服务器的运维成本变得更加难以接受。
虚拟化技术的使用可以非常顺畅地解决2个重要问题:公司可对服务器进行分区,并在多种类型和版本的操作系统上运行传统应用。
自此,服务器开始得到更高效的利用,从而降低与采购、设置、散热和维护相关的成本。虚拟化的广泛适用性有助于减少对单家供应商的依赖,并为云计算的发展奠定了基础。
三、服务器的组成
服务器硬件主要包括处理器(即CPU)、存储器(Memory)、I/O接口等部件组成,其中三大核心零部件(处理器、内存、硬盘)的成本占服务器总成本75%以上。
处理器是服务器的核心与大脑。根据IDC数据,越高性能的服务器,其处理器相关成本占比越高,约为50-80%。在服务器中,CPU是性能的关键。
三、服务器的分类
根据形态分类
按照形态,服务器可以分为塔式服务器、机架式服务器、刀片式服务器、机柜式服务器。
根据功能分类
四、服务器集群与冗余技术
服务器集群技术
服务器集群(Server Clustering)是将很多服务器集中起来一起进行同一种服务,有着高可用性、可靠性和可伸缩性的特点。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行。
服务器集群通常运用于数据频繁更新的应用程序上,其中数据库服务器集群和计算机服务器集群是最常见的服务器集群。
通常服务器集群可分为三种类型:负载均衡集群(LB, Load Balancing)、高可用性集群(HA, High Availability)和高性能集群(HP, High Performance)
服务器冗余技术
服务器冗余技术是指采取两套同样独立配置的硬件、软件或设计等,防止在其中一套系统出现故障时,冗余配置部分的部件可及时介入并承担工作,由此有效减少故障时间和故障率。一般情况下冗余服务器保持离线状态,直到主服务器出现故障、停机或流量过大时,冗余服务器来代替主服务器或共享其流量负载。
虚拟化技术
虚拟化技术将计算环境与物理基础设施分开,计算资源(如CPU、内存和存储器)被视为一组可进行重新分配的资源,通过"Hypervisor" (虚拟机监控程序)的软件可直接连接到硬件,从而将一个系统划分为不同的、单独安全环境,即虚拟机(VM)。虚拟化技术是云计算服务的基础。虚拟化可提供多种重要的云计算功能,包括资源共享、虚拟机隔离和负载平衡。在云计算环境中,这些功能可提供出色的可扩展性、较高的资源池利用率、快速供应、工作负载隔离和更长的正常运行时间。