1.2 数据中心的演变
思科UCS服务器统一计算
本节介绍数据中心服务器架构的演变。
1.2.1 独立服务器
也称为离散服务器,它们是具有专有外观尺寸的独立服务器,可能包含从桌面PC到大型主机的任何计算机。它们都有如图1-3所示的基本组件,但处理器、内存、I/O容量、扩展槽和集成存储的数量可能不同。
最大型的独立服务器可以运行多个不同应用程序,且支持大量用户。通常,它们使用某种形式的虚拟化软件来同时运行多个操作系统。但是,无论一台服务器的性能多强大,在物理限制和用于运行特定应用程序的操作系统方面都存在扩展性问题。
为了克服扩展性限制,可采用两种不同的方法:向上扩展和向外扩展。
1.2.2 向上扩展
向上扩展,也称为垂直扩展,该术语用于指一种基于增加单个服务器计算能力的扩展策略,方法是增加服务器资源,包括更多的处理器、内存和I/O设备等。
这种对现有系统的垂直扩展还支持它们更有效地利用虚拟化技术,因为它为托管的操作系统和应用程序提供了更多资源。
向上扩展减少了管理点的数量,可能会使安全策略执行变得更简单。
虽然对某些应用程序很有吸引力,但是大多数数据中心更愿意使用标准组件并采用向外扩展方法。
1.2.3 向外扩展
向外扩展,也称为水平扩展,该术语用于指基于增加服务器数量的扩展策略。其最大优点是管理员能够更轻松地根据需要重新调整计算。
向外扩展策略通常用于Intel x86服务器。近年来,这些基于PC架构的服务器类型价格持续下降但性能却不断提高。现在,这些“通用”系统已具备足够的计算能力来运行数据中心中出现的大多数应用程序。还可将它们互联成集群来执行高性能计算(High Performance Computing,HPC)应用程序,比如在建模与仿真、石油和天然气、抗震分析和生物技术等科学领域,这些计算以前只能在大型机或超级计算机上运行。
向外扩展模型刺激了有非常高I/O性能的共享数据存储的增长,特别是当需要处理大量数据时,比如数据库。
1.2.4 向上扩展与向外扩展
在这两种模型之间需要权衡。
向上扩展要求专用且更加昂贵的硬件,并且提供的操作系统环境数量有限,此外,对服务器可支持的总负载量也有限制。其优点是管理点少和对资源的利用率高,因而在功率和冷却的效率方面往往要比向外扩展高。
向外扩展将每台服务器专门用于特定应用程序。每款应用程序受到单个节点能力的限制,但是每台服务器都可运行最适合应用程序的操作系统,且能够应用合适的补丁。此外,应用程序不会相互干扰,应用程序的性能是非常确定的。这个方法明显增加了服务器数量,并且增加了管理的复杂性。
1.2.5 机架优化的服务器
由于向外扩展不断地增加服务器数量,因此明显需要优化其规模、空气流动、连接,并进行合理化安装。
机架优化的服务器是解决这一问题的初次尝试(参见图1-4)。他们也称为机架安装服务器,能装进19英寸宽的机架,其高度以机架单位(Rack Unit,RU)来定义,一个机架单位为1.75英寸(44.45mm)高。典型的基于Intel的服务器高度为一个RU且大约耗电500W。机架通常为42 RU高,但是其功率和冷却不足以满足整个机架服务器的需要。
一个典型的数据中心为每个机架提供5kW~10kW的功率和冷却能力,因而每个机架中可安装10到20台服务器。剩下的空间装上配线架。有时安装ToR交换机来汇聚相邻的几个机架中服务器所产生的流量。在其他设计中,则使用更大型的EoR交换机来以列方式和混合使用ToR/EoR的方式连接所有服务器。
这种方法的好处是合理的空间利用率和高度的灵活性:相对较大的服务器支持采用最新的处理器和更大的内存,以及多个I/O插槽。缺点是缺乏合理布线、不易于维修,以及缺乏有效的功率和冷却,因为每个服务器有自己的电源和风扇。
机架安装服务器只是在某些方面对传统服务器的简单重新包装,这使得可在数据中心地板的每平方英尺上安装更多的服务器,但是功能上没有太大不同。
编写本书时(2010年3月,下同),机架优化的服务器数量大约占市场上所有服务器的50%。
1.2.6 刀片服务器
与机架安装服务器相比,刀片服务器是作为优化服务器布线和电源效率的方法而引入的。刀片服务器机箱为6~12 RU高,可包含6~16个计算刀片,外加不同的I/O模块、电源、风扇和机箱管理CPU(参见图1-5)。
刀片服务器的优点是共享的机箱基础架构(主要是电源和冷却)、合理的布线,以及监控共享基础架构的能力。管理点的数量从每个服务器一个降到每个机架一个,但是机箱通常是额外的人工汇聚点。
图1-5 刀片服务器
机箱的概念不是最重要的,例如,当将服务器池定义为用于特定应用程序或用于虚拟化时。
刀片服务器不能安装一般的PCI卡,而是需要有专门规格的“夹层卡”。与机架安装服务器相比,这限制了I/O选项。
编写本书时,刀片服务器占整个服务器市场大约10%,但是其使用量正在逐步增加,并且这一比例正在迅速增长。
1.2.7 服务器蔓延
目前,大多数服务器在每台服务器上只运行一个操作系统(通常是某种Windows或Linux)和一个应用程序(参见图1-6)。这种部署模型导致“服务器蔓延”,即CPU利用率极低的服务器数量的不断增加,平均利用率仅有5%~10%。这意味着大量空间、电力和冷却系统的浪费。
图1-6 每台服务器上一个操作系统/应用程序
这种部署模型的好处是独立(每个应用程序有确定的资源)、灵活(通常可在任意服务器上启动任意操作系统/应用程序)且简单(每个应用程序有专门的服务器和最适合的操作系统版本)。每台服务器都是一个管理对象,因为每台服务器运行一个应用程序,因而每个应用程序都是一个管理对象。
此架构允许为不同应用程序应用一致的差异化策略设置。网络为每个应用程序提供一个(或多个)物理端口,并且在该端口上,可确保QoS、ACL和安全等。这与交换机是否在刀片服务器内这一事实无关。
尽管如此,由于空间、电力和冷却的浪费,服务器蔓延正迅速变得难以接受。此外,管理所有这些服务器是管理员的恶梦,而且花费巨大。
1.2.8 虚拟化
虚拟化是用于减少服务器蔓延的关键技术之一,为世界各地的机构所广泛采用。相对于机箱作为容器,通过虚拟化,服务器可成为多个逻辑服务器的容器(参见图1-7和图1-8)。虚拟化软件包含等同于机箱中物理交换机的软件交换机。服务器虚拟化的优点是利用率、移动性和可用性,缺点是缺乏分布式策略、安全性、诊断和性能可预测性。
1.2.9 服务器部署现状
目前为止介绍的服务器演进主要着眼于“规模的演进”,而不是模型的显著变化。向上扩展意味着更大型的服务器;向外扩展意味着更多的服务器,因此有更多网络基础架构。例如,图1-9显示了安装在机架中、由外部交换机互联的运行虚拟化的3台刀片服务器。
通常是事后才考虑管理工具:它们只是应用于服务器,而没有深度集成。这使得管理同一组服务器的工具数量增加,通常也会难以维护策略的一致性,难以确保安全并进行扩展。