在资源受限的环境中最大化服务器利用率的系统和方法

文档序号:7967385阅读:200来源:国知局
专利名称:在资源受限的环境中最大化服务器利用率的系统和方法
技术领域
本发明一般地涉及数据处理系统,具体地说,涉及被称为刀片服务器的通信网络设备。
背景技术
将服务器用作通信网络内的设备是本领域内公知的。服务器是为有权访问该服务器提供服务的网络的客户机/终端站提供可用的文件、数据库、打印、传真、通信或者其他服务的设备。当服务器允许客户机/终端站访问外部通信网络时,它有时也被称为网关。服务器可以有不同的大小、形状和种类。服务器可以分布在整个网络中,也可以集中在集中式数据中心内。
集中式数据处理中心的发展导致服务器设备的更小构型以及处理单元密度的增加,从而减少了计算基础结构的空间要求。刀片服务器是本领域中一种常见的构型,包括制造为能垂直地插入机架中的设备,所述机架可容纳多个在公共背板(即,刀片中心)上共享电源以及其他连接的设备。细长的、可热插拔的刀片服务器安装在单个机架中,就像书放在书架上-并且每个刀片服务器都是独立的服务器,具有其自己的处理器,存储器,存储装置,网络控制器,操作系统以及应用。刀片服务器(也简称为刀片)放入机架中的插槽并插入中板或背板,与其他刀片服务器共享电源,风扇,软盘驱动器,开关以及端口。对于任何浏览支架间数以百计的电缆而只是为了增加或移除服务器的人来说,刀片服务器方法的优点将是显而易见的。借助共享开关和电源设备,释放了宝贵的空间-并且刀片服务器更容易允许更高的密度。借助单个机架中的大量高性能刀片服务器,刀片技术实现了很高级别的密度。
尽管对于刀片中心,每单位处理能力的功耗和设备复杂性实际上可能减小,但由于计算设备的物理密度增加,对处理能力和冷却的功耗要求也随着总体计算能力增加而增加。刀片中心机架具有由机壳中的多个组件共享的资源,如电源和冷却。每个机架中存在负责管理机架内所有组件以及它们之间关系的管理模块。每个刀片服务器都分配了固定数量的功率或冷却能力。如果任何刀片服务器超出了它的分配量,则它可以迫使整个机架超出阈值,这又可以迫使公共电源关闭,导致其他刀片服务器关闭。另一个危害是,任何超出它的分配量的刀片服务器都可以造成其他刀片服务器由于温度超过它们的临界阈值而关闭。
与服务器关联的最紧迫的问题之一可能是可管理性,具体地说,是应用于机架安装的服务器的可管理性。这种类型的服务器内的可管理性的一个方面涉及在可用资源的限制内管理性能。用于在面对高度波动或确定的服务请求时维持足够级别的计算能力和总体数据吞吐量的管理方法及其相关的系统体系结构是本领域内公知的。已记载的应用服务器资源管理方法旨在根据计算能力的特定要求,为给定的资源集合提供最佳的服务水平;基于可用资源的总体利用率,所述方法一般假设处理能力是可无限扩展的,因而要求额外的计算基础结构。但是,任何给定计算中心位置的某些固有资源限制(例如可用的电功率,空间,以及冷却)是有限的,并且因此实际上限制了所述基础结构的进一步扩展。用于扩展或复制现有计算中心的工程通常要求相当的协作资源,并带有超出核心计算基础结构成本的经济效果。由于刀片服务器的性能值(如处理器速度和总线时钟频率)显著地增加,所以单个刀片中心内的电功率要求频繁地达到限制值,使得给定机架中可用的电功率不足以同时对所述机架中存在的所有刀片服务器供电是常见的。此外,由于刀片中心机架通常为将来的发展和扩展而设计,可能需要将更新、更快、功耗巨大的刀片服务器添加到现有机架中,这通常将超出额定功耗值。
此前所述的所有因素都表明功率资源是刀片服务器的经济成功中的关键要素。因此,此类应用服务器内的可管理性的一个重要方面涉及分配功率资源,这已由过去配置中的系统体系结构通过迫使单个刀片服务器关闭,或者不允许其他刀片服务器通电来解决。显然,并非机架中的所有刀片服务器都可以被供电的情况会使刀片中心的运营商蒙受经济损失。
遗憾的是,单个刀片服务器中的计算资源经常会被浪费,这是由于正常操作期间的低利用率,由此分配给单个刀片服务器的功率(或由其消耗的功率)保持不变,通常处于所有组件的最大功率。当确定目标应用所需的服务器资源时,管理员一般必须为最坏的情况做打算。在一个示例性实例中,在80%的时间内,应用可能需要某些数量为X的资源,包括CPU周期和物理存储器。另外20%的时间内,应用可能需要数量为2X这些资源。为了为该20%的时间做准备,管理员被迫将服务器设计为具有2X的资源以便运行所述应用。
存在两种在刀片中心机架中分配功率的方法。在一种情况下,如图1和图2中所示,可以为刀片服务器的子集分配足够满足它们的最大功耗的功率。这可能引起资源利用不足,如此前的实例中所述,其中在提供数量为2X的资源的系统中,80%的时间内只利用了数量为X的资源。可替代地,如图3中所示,可以为刀片服务器的子集分配使它们在最大功耗的低百分比处运行的功率。由于所述功率分配是不可实施的,应用的任何利用峰值都将引起功耗的增加,这能促使总功耗超出公共电源的容量,灾难性地导致机架中所有的服务器出现故障或关闭。
鉴于以上问题,本领域中需要一种用于管理电功率受限的环境中的刀片服务器利用的更有效的系统和更可靠的方法。

发明内容
本发明通过提供用于控制刀片服务器上的硬件资源的机制并由此以可实施的方式限制所述刀片服务器的功耗来解决上述需求。所述受控制的硬件资源包括中央处理单元(CPU)的基本频率以及物理存储器的各个存储体(例如双列直插存储器模块(DIMM))的功率。控制所述硬件资源以限制所述刀片服务器所需的功率,由此降低所述刀片服务器的计算能力。本发明的系统和方法根据实际服务器利用率来调整所述硬件资源,使得刀片服务器上运行的应用只具有可用于它们的分配的硬件资源。停用的硬件资源被断电,并且在不需要所述资源时不会将它们赋予操作系统。以这种方式,可以管理整个机架中的功耗以使所有的刀片服务器都可以通电并以较高的稳态利用率运行。当可用的功率和冷却不足以以100%的硬件资源运行所有刀片服务器时,可以通过以启用的硬件资源的某个较低百分比运行所有刀片服务器来达到充足的计算能力。因此,本发明提供了用于在刀片中心机架的刀片服务器之间调度已分配的功率的方法,并由此在更多通电的刀片服务器之间更有效地分配可用的电功率。本发明还提高了刀片中心内的已通电资源的利用率。
本发明的一个组件包括由监视代理软件监视硬件资源,所述监视代理软件在操作系统中运行并能够监视和报告物理存储器和CPU周期的利用。本发明利用非标准的协议和接口支持来限制CPU速度以及热插拔存储器模块。运行在管理模块上的机架功率管理软件充当刀片中心内的资源调度器,并且可以按比例减少刀片服务器上应用的可用资源来达到某个稳态阈值(SST),例如90%。其效果是为所述服务器的功耗设置了限制,该限制小于与以最高容量运行的服务器关联的值。所述机架功率管理软件然后可以将比最大功率运行所需的功率更少的功率分配给刀片服务器。通过限制CPU速度和禁用存储器DIMM的灵活组合,可以实施功耗的上限。即使应用对硬件资源的要求急剧增长或突然产生峰值,可用硬件资源和功耗仍保持受限。当运行在刀片服务器上的监视代理软件检测到服务器资源的利用超出SST并朝上趋阈值(TUT)攀升时,将根据算法或策略做出与要可用于操作系统的额外刀片服务器资源(CPU周期或DIMM)的数量相关的判定。单个刀片服务器上的额外物理资源将具有对刀片中心机架中的共享资源(即,电功率与冷却能力)的相应要求。所述资源监视代理软件将请求管理模块(其为机架中未使用的功率和冷却资源的公共池担当资源调度器)从所述池中分配充足的功率给刀片服务器以向上调整应用可用的服务器资源数量。类似地,当所述资源监视代理软件检测到服务器资源的监视值已降到下趋阈值(TDT)以下时,它能够从操作系统中移除资源并将它们断电。然后刀片服务器上的监视代理将刀片服务器由此将其相应分配的共享资源释放回所述池的通知发送到所述管理模块。在本发明的一个实施例中,为了控制CPU消耗的功率,简单的CPU利用可以表示受监视的阈值量SSU、TUT以及TDT的值。在本发明的另一个实例中,为了控制存储器消耗的功率,已用物理存储器的百分比、页错误数或者它们的组合可以表示受监视的阈值量SSU、TUT以及TDT的值。
本发明为可管理性问题提供了大量益处。本发明允许将单个服务器持续分配给个别应用来确保在应用的使用期间资源可用于满足峰值需求。当应用运行在峰值需求以下时,通过按比例减少使用中的资源来降低个别服务器的功耗。当支持以最大利用率运行的服务器所需的资源总数超过共享池中可用于所述服务器的资源时,本发明允许所述服务器在适合它们的稳态需求的水平上运行,同时确保利用率高峰不会导致超过所述公共池中的可用资源。
本发明的一个目标是提供以可实施的方式控制分配给刀片中心的个别刀片服务器的功率的机制,由此通过刀片中心机架中的管理模块来保持对所分配的功率的控制。
本发明的另一个目标是对于给定功耗水平处的给定计算工作负荷,增加刀片中心机架中的刀片服务器的有效利用率。
本发明的另一个目标是提供使用刀片中心中的刀片服务器的组合的能力,所述组合否则将超过刀片中心电源的最大额定功率。
本发明的另一个目标是提供备用功率的公共池,所述备用功率可以分配给个别刀片服务器,以使它们可以在适合它们稳态需求的功耗水平运行。
本发明的另一个目标是确保利用峰值不会导致超过所述公共池中的备用功率资源,并从而避免由公共电源过载或承受过量的热负荷引起的刀片中心机架中完全丧失功率。
以上相当粗略地概述了本发明的特征和技术优点以便更好地理解以下对本发明的详细描述。以下将描述形成本发明的权利要求的主题的本发明的其他特征和优点。


为了更完整地理解本发明及其优点,现在将结合附图参考以下描述,这些附图是图1示出了刀片中心内的资源分配和利用的现有技术情况;图2示出了刀片中心内的资源分配的现有技术方法;图3示出了刀片中心内的资源分配的现有技术方法;图4示出了本发明的实施例中的刀片中心内的资源可用性和利用率;图5示出了本发明的实施例中的刀片中心内的功率利用;图6示出了本发明的实施例中的一个刀片服务器的功率分配的时间线;图7示出了刀片中心管理子系统的示意图;图8示出了本发明的刀片中心机架的正面、俯视和右侧分解透视图;图9示出了本发明的刀片中心机架的后部的背面、俯视和左侧透视图;图10示出了本发明的一个实施例中的系统组件;图11是本发明的一个实施例中的供电周期过程的通电部分的流程图;以及图12是本发明的一个实施例中的供电周期过程的功率分配部分的流程图。
具体实施例方式
在以下描述中,说明了许多诸如特定字或字节长度之类的具体细节以便提供对本发明的彻底理解。但是,对本领域的技术人员显而易见的是,本发明可以在没有这些具体细节的情况下被实施。在其他实例中,以方块图的形式示出了公知的电路,以免在不必要的细节上使本发明变得不清晰。在很大程度上,省略了与计时考虑等有关的细节,因为这些细节对完整理解本发明不是必需的,并且是在相关领域技术人员的理解范围之内。
现在参考附图,其中示出的元素无需按比例显示,并且其中由相同的标号代表若干视图中相同或相似的元素。
图1和2中示出了用于在刀片中心机架中分配功率的现有技术方法。可以为刀片服务器的子集分配足够满足它们的最大功耗的功率。如此前所述的,这可能引起资源的利用不足,其中在提供数量为2X的资源的系统中,80%的时间内只利用了数量为X的资源。根据最大功率来设计刀片服务器,所述刀片服务器可以满足最坏的运行情况。但是,所述最坏的情况也是不常见的情况。硬件资源的最大利用与硬件所有者得到的最大益处的增加相称。如果刀片中心内的少数系统以20%的利用率运行,而余下的系统由于可用功率不足而被关闭,则显然客户没有从硬件中得到最大益处。在图2中,示出了安装有六个刀片服务器的示例性刀片中心机架的没有管理资源利用率以及可用性的静态功率分配方法。机架中的可用功率根据其中刀片服务器的最大功耗来均匀地分配。在图2中,每个刀片服务器有300W的最大额定功率,而机架中的可用功率是1400W。因此刀片服务器1-4可以在这种分配方案下通电,消耗1200W功率,但是刀片服务器5-6不能够通电,尽管仍有200W的可用功率。在图1中,考虑到在刀片服务器1-4上运行的应用所使用的可用资源的百分比(大多数时间它们以低利用率运行),进一步示出了这种方法的低效率。
图3示出了用于在与图1和2相同的刀片中心机架中分配功率的可替代的现有技术方法。这种方法(其中所有系统不受限制地运行)带来了自然地超过系统可用功率的可能性。这可能导致电源故障并且所有相关系统直接关闭。可以为刀片服务器的子集分配使它们在它们的最大功耗的低百分比处运行的功率,例如图3中所示,对于约1350W的总分配功率,每个刀片服务器为200W或250W。由于所述功率分配是不可实施的,任何刀片服务器都可以在运行的任何时刻消耗最多300W功率。应用利用中的任何峰值都可能引起总功耗增加到超过1400W,这超过了公共电源所能提供的功率,很可能灾难性地导致机架中所有的服务器出现故障或关闭。因而图3的现有技术功率分配方法引入了数据可靠性问题,以及具有不可运行的系统的一般问题,其中所述系统具有其中不能执行分配给它们的工作的时段。
图4示出了本发明的实施例中的刀片中心内加强的资源可用性和利用率。为了说明,参考了与先前情况(图1-3)相同的刀片中心机架配置。但是,在这种情况中,机架100(参见图10)具备本发明的可实施的功率分配系统,该系统与图11和12中包含的体系结构一致。在图4中,每个刀片服务器130具有硬件资源(CPU 138周期和DIMM 139)的唯一百分比,所述资源被启用和通电以供操作系统136和应用133使用。在图4中所示的稳态实例中,运行在刀片服务器130上的应用133的平均利用率保持在由本发明的可实施功率分配过程提供给它们的资源的80%SST处,如在引导操作系统136时由处理步骤1110在一种情况中所示出的。通过仲裁和调度(如在处理1250中),可用资源的百分比可以增加到维持80%SST。在由应用133资源的峰值引起的工作请求的情况中,提供给操作系统的硬件资源(CPU 138,存储器139)收到限制,以使利用率峰值不会导致刀片服务器130超出分配给它的功率。如果利用率保持临界高值,则给定应用可能以它特有的方式失败。例如,确定的工作请求在利用率保持临界高值的期间可能得不到服务。
图5示出了本发明的实施例中的刀片中心内的功率利用。为了说明,参考了与图4相同的刀片中心机架配置(参见图10)和可实施的功率分配方案。在图5中,示出了每个刀片服务器130的功率利用的绝对值。注意,在每个刀片服务器130上,平均功率利用恰好保持低于允许容量处的最大功率利用。这示出了所述方法调节本发明的允许容量的稳态性能。在图5中,分配的总功率大约是1200W,与图1-3中的情况相当。但是,本发明有效地降低了此前所述的图1-3中现有技术分配方法的风险。
图6示出了本发明的实施例中的一个刀片服务器130的功率分配的时间线。为了说明,参考了与图4和5中相同的刀片中心机架配置和可实施的功率分配方案。但是,图6示出了本发明如何管理功率分配随时间的转变。在时间t5之前,对于200W的功率分配,利用保持在TUT以下。在时间t5,利用开始上升并超过200W的TUT,通过处理1250发生对额外功率的仲裁,引起额外的50W功率从公共池分配到刀片服务器130。因而从时间t5到时间t12,分配到刀片服务器130的功率是250W。在时间t12,对于250W的功率分配,利用降到TDT以下,刀片服务器130通过处理1210释放50W的功率,该功率被调度回公共池中。在时间t12以后,分配的功率又为200W,且利用保持低于200W的TUT。此实例示出了一个刀片服务器130经历先增加功率1250然后减少功率1210的两次转变。在本发明的其他实施例中,每个单独机架100中的每个刀片服务器130上的转变顺序和数量可以有所不同。
图10示出了刀片中心机架中用于控制功率的系统组件和体系结构。刀片中心机架包括如下与控制功率相关的组件安装在机架插槽120中的刀片服务器130;管理模块(MM)110,其可包含它们自己的MM处理器117;公共电源140和通风设备150;以及这些组件之间的通信接口125,141,151。在用于实现本发明的刀片中心中,刀片服务器130上的服务处理器(SP)135通过双向接口125与MM 110上的MM处理器117通信。MM 110通过总线141与公共电源140连接,通过风扇总线151与通风设备150连接。MM处理器117与SP 135之间的双向接口125可以是多支路RS-485接口。可以实现其他用于125的接口协议。控制总线141,151可以是I2C接口。在刀片服务器130上,SP 135通过系统管理接口SMI 131与BIOS 137(基本输入/输出系统)通信,用于控制CPU 138的周期频率或向DIMM的各个存储体供电。BIOS 137(可由存储在闪速存储器设备中的固件实现)可通过接口132来控制CPU 138和DIMM 139,所述接口132可以是SMI或其他在本发明的范围之内实现的用于控制CPU 138和DIMM 139的功耗的接口机制。硬件资源监视代理软件134与BIOS 137通信,并监视CPU 138周期和DIMM 139的当前状态。所述资源监视代理134通过接口129与SP 135通信,所述接口129可以是操作系统136中的内核模式驱动器或其他通信接口。操作系统136和应用133包含刀片服务器130上执行的计算负荷。操作系统136还执行资源监视代理134,并负责提供任何必需的内核模式驱动器例程或硬件接口管理服务。
图11是本发明的一个实施例中的供电周期过程的通电部分1110的流程图。刀片中心机架100中存在的MM 110将负责在安装在机架100的插槽120中的刀片服务器130之间分配和调度来自公共电源140的功率资源。存在多个刀片服务器130,每个刀片服务器130都包含SP 135和BIOS 137,并运行操作系统136。在系统初始化1101处,MM 110通过读取1111机架100中电源140的重要产品数据(VPD)来确定机架100中的可用功率数量,得到最大可用功率(MAP)。对于每个刀片服务器130,SP 135通过SMI或其他接口131与BIOS 137通信,以确定1112每个DIMM的功耗,每个DIMM的容量,CPU步进级别,以及每个步进级别处的CPU功耗。假设刀片中心机架100中存在N个刀片服务器130,则MM 110将固定量的功率(在一个实例中,等于MAP/N的值)分配1113给每个刀片服务器130。用于确定为每个单独刀片服务器130提供1113多少功率的备选方法可以基于策略、机架100的历史(由MM 110维护)、刀片服务器130的历史(由刀片服务器130维护)、由外部管理者确定,或在本发明的各种其他实施例中基于规则。所述MAP与分配给每个刀片服务器130的总功率之间的差为公共池中初始可用的功率数量。通过经由接口125将消息从MM处理器117传送到SP 135来执行由MM 110分配功率1113。根据1112中确定的存储器DIMM和不同步进级别处的CPU的功耗值,SP 135通过SMI或其他接口131通知BIOS 137应对操作系统136可用的初始配置。此配置包括要启用的DIMM数(以及它们的具体模块),以及CPU 138应设置成的限制步进级别。BIOS 137然后通过接口132设置合适的配置1114,并随后允许操作系统136引导1115。在刀片服务器130引导后,供电周期的功率分配部分1250,1210开始1201,并重复直到刀片服务器130关闭1202。
图12是本发明的一个实施例中的供电周期过程的功率分配部分1250,1210的流程图。功率分配事件包括将功率从公共池转移到需要更高功率分配的刀片服务器130 1250,以及从使用比当前分配的功率更低数量功率的刀片服务器130将功率转移回公共池1210。所述供电周期过程在刀片服务器130断电1216后结束1202。
当到刀片服务器130的功率分配增加1250时,由监视CPU 138和存储器139的利用率值SST和TUT的资源监视代理软件134做出需要更多资源的初始判定1251。此判定1251可以是趋势分析(如图6中所示)、由外部实体(如管理员)驱动的策略、基于规则,或从应用于本发明的各个实施例的系统准则的任何组合得出的结果。在一种情况中,判定1251源自平衡系统响应性对最小化总功耗的考虑,例如控制算法的实现。在另一种情况中,跨多个供电周期过程1110,1250,1210的趋势分析可以产生主动地触发判定1251的记录历史阈值。在另一种情况中,判定1251可以是调度驱动的,其中管理员知道应用利用率峰值将在特定的时间和日期发生,或规律的利用率模式(如正常上班时间)需要调度相关的资源管理。当资源监视软件代理134判定1251需要更多的资源时,代理134向SP 135发出服务请求来启用额外的硬件资源(CPU 138周期和/或DIMM 139)。然后SP 135计算1252启用所请求的硬件资源所需的额外功率。然后SP 135向负责调度公共池中功率的MM 110发出对额外数量功率的请求1253。如果MM 110(在考虑所有可适用规则和策略下在其能力内用作资源调度器)判定1254应将更多的功率用于发出请求的刀片服务器130,则MM 110将确认响应1255发送回SP 135,所述响应指示了从公共池分配到刀片服务器130的额外功率的实际数量。注意,由MM 110确认的功率数量可能不同于(即可能低于)SP 135所请求的数量。然后SP 135将通过适当地请求CPU138速度提升或启用额外的存储器DIMM 139来经由SMI 131向BIOS 137确认MM 110的指令。注意,CPU步进增加和启用的额外DIMM数可以不同于BIOS 137对SP 135的原始请求。BIOS 137然后根据SP 135的请求来设置硬件资源1256。注意,MM 110仍是调度1250期间所有在机架100中分配的功率增加的决定性管理者,并且必须批准所有来自刀片服务器130的额外功率请求。刀片服务器130必须遵照MM 110的指令,并必须能够遵照体系结构要求。
当到刀片服务器130的功率分配减少1210时,由监视CPU 138和存储器139的利用率值SST和TUT的资源监视代理软件134做出可以释放所述资源的初始判定1211。此判定1211可以是趋势分析(如图6中所示)、由外部实体(如管理员)驱动的策略、基于规则,或从应用于本发明的各个实施例的系统准则的任何组合得出的结果。在一种情况中,判定1211源自平衡系统响应性对最小化总功耗的考虑,例如控制算法的实现。在另一种情况中,跨多个供电周期过程1110,1250,1210的趋势分析可以产生主动地触发判定1211的记录历史阈值。在另一种情况中,判定1211可以是调度驱动的,其中管理员知道应用利用率峰值将在特定的时间和日期发生,或规律的利用率模式(如正常上班时间)需要调度相关的资源管理。当资源监视软件代理134判定1211需要更少的资源时,代理134向SP 135发出服务请求以停用某些已启用的硬件资源(CPU 138周期和/或DIMM139)。然后SP 135计算1212通过停用所请求的硬件资源而可用于公共池的额外功率。然后SP 135将通过适当地请求CPU 138速度降低或停用额外的存储器DIMM 139来经由SMI 131向BIOS 137发出请求1213。在BIOS已降低1213刀片服务器130的功耗后,SP 135通知1214 MM 110额外的功率已可用于公共池。MM 110(在考虑所有可适用规则和策略下在其能力内用作资源调度器)取消分配刀片服务器130的功率,并向SP 135发送回确认响应1216,所述响应指示了从刀片服务器130分配给公共池的额外功率的实际数量。注意,刀片服务器130需要及时将功率释放回公共池1210,以使MM 110能够调度来自机架100中其他刀片服务器130的需要更多功率1250的未来请求。
图7是刀片中心机架管理子系统的示意图,示出了先前由MM 110示意地表示的各个管理模块MM1-MM4的工程细节,并示出了包含在刀片中心机架100的先前示意表示内的各个组件的工程细节。参考此图,每个管理模块具有到开关模块SM1至SM4中的每一个模块的单独以太网链路。因此,管理模块MM1通过以太网链路MM1-ENet1至MM1-Enet4链接到开关模块SM1至SM4,且管理模块MM2通过以太网链路MM2-ENet1至MM2-Enet4链接到开关模块。此外,所述管理模块还通过两个公知的在所述管理模块与开关模块之间提供“带外”通信的串行I2C总线SM-I2C-BusA和SM-I2C-BusB连接到开关模块。类似地,所述管理模块还通过两个串行I2C总线(对应于接口141)PM-I2C-BusA和PM-I2C-BusB连接到电源模块(先前由140示意地表示)PM1至PM4。另外两个I2C总线Panel-I2C-BusA和Panel-I2C-BusB连接到介质托盘MT以及后部面板。鼓风机BL1和BL2(先前由150示意地表示)通过单独的串行总线Fan1和Fan2(对应于接口151)来控制。两个公知的RS485串行总线RS185-A和RS485-B连接到服务器刀片PB1至PB14,用于在所述管理模块与所述服务器刀片之间的“带外”通信。
图8示出了刀片服务器系统的正面、俯视和右侧分解透视图,示出了包含在刀片中心机架100的先前示意表示中的各个组件的工程细节。参考此图,主机架CH1容纳了刀片服务器系统的所有组件。最多14个处理器刀片PB1至PB14(或其他刀片,例如存储刀片)可热插拔到机架CH1正面的14个插槽中。术语“服务器刀片”、“刀片服务器”、“处理器刀片”或只是“刀片”用于整个说明书和权利要求书,但是应当理解,这些术语并不限于只完成“处理器”或“服务器”功能的刀片,而且还包括完成其他功能的刀片,例如通常包括硬盘驱动器且其主要功能为数据存储的存储刀片。
处理器刀片提供了工业标准服务器的处理器、存储器、硬盘存储装置以及固件。此外,它们还包括键盘、通过控制面板的视频和鼠标(KVM)选择、板载服务处理器以及对介质托盘中的软盘和CD-ROM驱动器的访问。子卡可以通过板载PCI-X接口连接并用于提供额外的到各种模块的高速链路。每个处理器刀片还具有前面板,所述前面板具有5个指示当前状态的LED加上4个用于通电/断电、选择处理器刀片、复位以及本地控制的核心转储的NMI的按钮开关。
刀片可以是“热插拔的”,意味着在通电状态移除或安装而不会影响系统中其他刀片的运行。刀片服务器通常实现为单插槽卡(394毫米×227毫米);但是,在某些情况中,单个处理器刀片可能需要两个或更多插槽。处理器刀片可以使用任何微处理器技术,只要它兼容刀片服务器系统的机械和电气接口并符合所述系统的功率和冷却要求。
为了冗余,处理器刀片具有两个信号和电源连接器;一个连接到中板MP(在以下描述)的相应插槽的上连接器,而另一个连接到所述中板的相应的下连接器。处理器刀片与所述刀片服务器系统的其他组件通过以下中板接口连接1.千兆以太网(每个刀片2个;必需);2.光纤通道(每个刀片2个;可选);3.管理模块串行链路;4.VGA模拟视频链路;4.键盘/鼠标USB链路;5.CD-ROM和软盘驱动器(FDD)USB链路;6.12VDC电源;以及7.各种控制信号。这些接口提供了与所述刀片服务器系统中的其他组件(如管理模块,开关模块,CD-ROM和FDD)通信的能力。这些接口在中板上是双重的以提供冗余。处理器刀片通常支持从介质托盘CD-ROM或FDD,网络(光纤通道或以太网),或它的本地硬盘驱动器来引导。
介质托盘MT包括可以连接到14个刀片中的任何一个刀片的软盘驱动器和CD-ROM驱动器。所述介质托盘还容纳了其上安装接口LED的接口板,用于测量入口空气温度的热敏电阻,以及4端口USB控制器集线器。系统级接口控制包括功率、位置、温度过高、信息,以及通用故障LED和USB端口。
中板电路板MP大约放置在机架CH1的中间并包括两排连接器上排包括连接器MPC-S1-R1至MPC-S14-R1,下排包括连接器MPC-S1-R2至MPC-S14-R2。因此,14个插槽中的每个插槽都包括一对中板连接器(例如,连接器MPC-S1-R1与MPC-S1-R2),其中一个连接器位于另一个连接器之上,且每对中板连接器和每个处理器刀片后沿的一对连接器相配(在图8中不可见)。
图9是所述刀片服务器系统后部的背面、俯视和左侧透视图。参考图8和9,机架CH2容纳了各种用于冷却、供电、控制和切换的热插拔组件。机架CH2滑动并锁入到主机架CH1的后部。
两个热插拔鼓风机BL1和BL2(先前由150示意地表示)包括后曲叶轮鼓风机,并为刀片服务器系统组件提供冗余冷却。气流从机架CH1的前部到后部。处理器刀片PB1到PB14中的每个处理器刀片包括用于导入空气的前栅格,并且基于小尺寸(low profile)蒸发室的散热器被用于冷却刀片内的处理器。穿过系统机架的总气流在1.778厘米(0.7英寸)H2O静压降下大约是300CFM。在鼓风机故障或移除时,余下的鼓风机的速度自动地增加以维持所需的气流,直到安装了替换单元为止。鼓风机速度控制还通过持续监视入口空气温度的热敏电阻来控制。还监视刀片服务器系统组件的温度,并且鼓风机速度将自动增加以响应由各个温度传感器报告的上升的温度水平。
四个热插拔电源模块PM1至PM4(先前由140示意地表示)为处理器刀片和其他组件提供直流工作电压。一对电源模块为所有的管理模块和开关模块,以及任何插入插槽1-6的刀片供电。另一对电源模块为插槽7-14中的任何刀片供电。在每对电源模块内,一个电源模块用作另一个模块在出现故障或移除时的后援。因此,最少需要两个活动的电源模块来为加载有14个处理器刀片、4个开关模块、2个鼓风机以及2个管理模块的完全功能和配置的机架供电。但是,需要4个电源模块来提供完全冗余和后援能力。所述电源模块设计为在50/60Hz且范围为200VAC至240VAC的交流输入电压之间工作,并使用IEC320C14凸模装置联结器。所述电源模块提供+12VDC输出到中板,所有刀片服务器系统组件都从该处得到它们的电源。两个+12VDC中板电源总线用于冗余,并且执行在冗余电源模块之间的输出负载的有效电流共享。
管理模块MM1至MM4(先前由110示意地表示)是热插拔的组件,它们提供了基本的管理功能,如控制、监视、警报、重新启动以及诊断。管理模块还提供了管理共享资源所需的其他功能,如在处理器刀片间切换公共键盘、视频和鼠标信号的能力。
尽管已详细描述了本发明及其优点,但是应当理解,在不偏离由所附权利要求限定的本发明的精神和范围的情况下,可以在此做出各种更改、替换和修改。
权利要求
1.一种用于为安装在刀片中心机架中的多个刀片服务器分配电功率的方法,所述刀片中心机架还包括管理模块,所述方法包括如下步骤通过查询安装在所述刀片中心机架中的所有电源来读取所述刀片中心机架的总功率容量;通过查询所述多个刀片服务器中的每个刀片服务器的功耗值来计算所述多个刀片服务器消耗的最大功率负载;为所述多个刀片服务器中的每个刀片服务器分配单独的功率量,其中所分配的单独功率的总量保持小于所述刀片中心机架的所述总功率容量;引导所述多个刀片服务器中的每个刀片服务器上的操作系统;在所述操作系统的运行期间监视所述多个刀片服务器中的每个刀片服务器上的耗电资源的利用率;判定所述多个刀片服务器中的每个刀片服务器上的所述耗电资源的所述利用率何时需要改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量;以及作为所述判定步骤的功能,通过改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量来调度所述刀片中心机架中的所述总功率容量。
2.如权利要求1中所述的方法,其中所述查询所述多个刀片服务器中的每个刀片服务器的所述功耗值还包括如下步骤向刀片服务器上的服务处理器发出服务请求;通过与所述刀片服务器上的BIOS通信来确定所述刀片服务器上的所述耗电资源的功耗设置;根据所述功耗设置来计算功耗值;以及将所述功耗值传送给所述管理模块。
3.如权利要求1中所述的方法,其中所述通过改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量来调度所述刀片中心机架中的所述总功率容量表示增加分配给所述刀片服务器的功率,还包括如下步骤计算与所述刀片服务器上的所述耗电资源的可用性的所需增加相当的额外的功率量;从所述管理模块请求增加分配给所述刀片服务器的功率;由所述管理模块确认将功率单独分配给所述刀片服务器;以及实施由所述管理模块确认的所述将功率单独分配给所述刀片服务器,还包括如下步骤确定所述刀片服务器上的耗电资源的功耗设置;向所述刀片服务器的BIOS发出应用所述功耗设置的请求;以及由所述BIOS启用所述耗电资源,其中所述启用导致功耗增加。
4.如权利要求1中所述的方法,其中所述通过改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量来调度所述刀片中心机架中的所述总功率容量表示减少分配给所述刀片服务器的功率,还包括如下步骤实施减少分配给所述刀片服务器的功率量,还包括如下步骤确定所述刀片服务器上的耗电资源的功耗设置;向所述刀片服务器的BIOS发出应用所述功耗设置的请求;以及由所述BIOS停用所述耗电资源,其中所述停用导致功耗减少;以及通知所述管理模块所述减少分配给所述刀片服务器的功率量。
5.如权利要求1中所述的方法,其中所述监视步骤由作为应用在所述操作系统中执行的资源监视代理计算机程序产品来完成。
6.一种刀片中心机架装置,所述装置包括安装在多个机架插槽中的多个刀片服务器;管理模块;所述多个机架插槽公用的用于向所述多个刀片服务器供电的电源,其中所述电源还包括多个电源模块;以及构建在所述管理模块中的电路,所述电路可执行以下操作通过查询安装在所述刀片中心机架中的所述多个电源模块中的每个电源模块来读取所述刀片中心机架的总功率容量;通过查询所述多个刀片服务器中的每个刀片服务器的功耗值来计算所述多个刀片服务器消耗的最大功率负载;为所述多个刀片服务器中的每个刀片服务器分配单独的功率量,其中所分配的单独功率的总量保持小于所述刀片中心机架的所述总功率容量;以及通过改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量来调度所述刀片中心机架中的所述总功率容量。
7.如权利要求6中所述的装置,其中所述构建在所述管理模块中的可用于所述查询所述多个刀片服务器中的每个刀片服务器的功耗值的电路还包括可执行以下操作的电路向所述刀片服务器上的服务处理器发出服务请求;以及从所述服务处理器接收功耗值。
8.如权利要求6中所述的装置,其中所述构建在所述管理模块中的可用于所述通过改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量来调度所述刀片中心机架中的所述总功率容量的电路还包括可执行以下操作的电路接收来自刀片服务器上的服务处理器的增加分配给所述刀片服务器的功率的请求;确定何时可通过将功率从分配给公共池的功率转移到所述刀片服务器来许可所述增加分配给所述刀片服务器的功率;确定从分配给所述公共池的所述功率的可用量分配给所述刀片服务器的功率的单独增加;以及确认分配给所述刀片服务器的功率的所述单独增加。
9.如权利要求6中所述的装置,其中所述构建在所述管理模块中的可用于所述通过改变分配给所述多个刀片服务器中的每个刀片服务器的所述单独的功率量来调度所述刀片中心机架中的所述总功率容量的电路还包括可执行以下操作的电路从刀片服务器上的服务处理器接收已减少所述刀片服务器的功耗的通知,其中所述通知包括所述刀片服务器的所述功耗已减少的数量;以及根据所述刀片服务器的所述功耗已减少的所述数量,将功率分配的单独减少从所述刀片服务器转移到分配给公共池的功率的可用量。
10.一种刀片服务器设备,所述刀片服务器设备包括用于通信和资源管理功能的服务处理器,其中所述服务处理器还包括可执行如下操作的电路通过与所述刀片服务器上的BIOS通信来确定所述刀片服务器上的耗电资源的功耗设置;根据所述功耗设置来计算功耗值;以及将所述功耗值传送给安装有所述刀片服务器的刀片中心机架内的管理模块。
11.如权利要求10中所述的刀片服务器设备,其中所述服务处理器还包括可执行如下操作的电路计算与所述刀片服务器上的所述耗电资源的可用性的所需增加相当的额外的功率量;从所述管理模块请求增加分配给所述刀片服务器的功率;接收所述管理模块的将功率单独分配给所述刀片服务器的确认;以及实施由所述管理模块确认的所述将功率单独分配给所述刀片服务器,还包括如下步骤确定所述刀片服务器上的耗电资源的功耗设置;向所述刀片服务器的BIOS发出应用所述功耗设置的请求;以及由所述BIOS启用所述耗电资源,其中所述启用导致功耗增加。
12.如权利要求10中所述的刀片服务器设备,其中所述服务处理器还包括可执行如下操作的电路实施减少分配给所述刀片服务器的功率量,还包括如下步骤确定所述刀片服务器上的耗电资源的功耗设置;向所述刀片服务器的BIOS发出应用所述功耗设置的请求;以及由所述BIOS停用所述耗电资源,其中所述停用导致功耗减少;以及通知所述管理模块所述减少分配给所述刀片服务器的功率量。
13.一种包含在机器可读介质中的用于监视刀片服务器中的硬件资源的计算机程序产品,所述计算机程序产品包括如下程序步骤在多个刀片服务器中的每个刀片服务器上引导的操作系统的运行期间,监视所述多个刀片服务器中的每个刀片服务器上的耗电资源的利用率;以及判定所述多个刀片服务器中的每个刀片服务器上的所述耗电资源的所述利用率何时需要改变分配给所述多个刀片服务器中的每个刀片服务器的单独功率量。
全文摘要
本发明公开了一种用于控制刀片服务器上的硬件资源并由此限制所述刀片服务器的功耗的机制。所述受控的可实施硬件资源包括中央处理单元(CPU)的基本频率以及物理存储器的各个存储体(例如,双列直插存储器模块(DIMM))的功率。根据实际服务器利用率来调整所述硬件资源,使得刀片上运行的应用只具有可用于它们的分配的硬件资源。停用的硬件资源被断电,并且在不需要所述硬件资源时对操作系统是“隐藏的”。以这种方式,可以管理整个机架中的功耗以使所有的刀片服务器都可以通电并以较高的稳态利用率运行。还提高了刀片中心内的已通电资源的利用率。
文档编号H04L12/24GK1920745SQ20061011599
公开日2007年2月28日 申请日期2006年8月22日 优先权日2005年8月23日
发明者A·E·默金 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1