具有客制化检测器数据记录的基板管理控制器的控制方法

文档序号:6335749阅读:336来源:国知局
专利名称:具有客制化检测器数据记录的基板管理控制器的控制方法
技术领域
本发明涉及一种基板管理控制器(Baseboard Management Controller,BMC)的控制方法,特别涉及一种提供服务予至少一个外部系统(external system)且具有客制化检测器数据记录(sensor data record, SDR)的BMC的控制方法。
背景技术
随着计算机的普及与网络技术的快速发展,仅由普通计算机或设备所能提供的服务以不敷使用,故发展出了服务器的技术。服务器是为一种善于处理网络技术的计算机平台,其可连结至各种网络系统,并对通过网络系统相连结的计算机提供各种的应用服务。 为了管理服务器,智能型平台管理接口 intelligent Platform Management Interface, IPMI)的技术应运而生。管理者可以通过IPMI以及配置于服务器中的基板管理控制器 (Baseboard Management Controller,BMC),监控并管理服务器。其中BMC通过内建的多个检测器以及针对每个检测器定义的检测器数据记录(sensor data record, SDR)与平台事件筛选(platform event filter,PEF)管理服务器。然而现在有越来越多的服务器客户希望达到各种独特的监控需求,而超出普通的BMC的能力。普通的BMC无法读取到额外所需的检测器的值,因此也无法进行监控。对此服务器的制造商需要针对不同的客户开发不同的BMC及其固件以支持额外的检测器,非但缺乏弹性,也造成BMC开发的工作非常琐碎又消耗时程。此外,工程师对于不同客户需求的开发途中,会逐步写出不同版本的固件,再烧进BMC的只读存储器(read only memory, ROM)中以更新BMC。但是每次要更新固件时,都需要把BMC完全停止、更新再重新启动。重新启动后的BMC又需要重新定义SDR以及PEF而耗费时间,还容易因为重新定义的定义SDR以及PEF无法完全支持额外的检测器等原因而产生系统异常。因此传统的更新方法的风险也比较大。

发明内容
为解决上述问题,本发明所要解决的技术问题在于提出了一种具有客制化检测器数据记录(sensor data record, SDR)基板管理控制器(Baseboard Management Controller, BMC)的控制方法。本发明提供的具有客制化SDR的BMC的控制方法,适用于具有一记忆体的一 BMC, 且BMC提供服务予至少一外部系统(external system)。具有客制化SDR的BMC的控制方法包括将BMC的记忆体分割为一原始区域以及一客制化区域,其中原始区域包括对应的至少一个原始检测器数据记录(sensor data record, SDR)以及至少一个原始平台事件筛选(platform event filter,PEF);提供一指令集给外部系统,外部系统通过指令集管理对应的至少一个客制化SDR和至少一个客制化PEF ;轮询原始区域中的原始SDR以及客制化区域中的客制化SDR ;判断轮询得到的这些SDR的值是否符合分别对应于这些SDR的多个临界值;以及当至少一个SDR的值不符合对应的临界值时,依据对应的PEF得到一处理策略。其中指令集可包括一新增指令,而外部系统通过新增指令于客制化区域中新增对应的客制化SDR以及客制化PEF。指令集还可包括一更新指令或一读取指令,而外部系统可分别通过更新指令或读取指令于客制化区域中更新或读取外部系统所新增的客制化SDR。 且更新指令执行前可自动执行一锁定程序,以禁止BMC存取欲更新的客制化SDR。指令集也可包括一删除指令,而外部系统通过删除指令于客制化区域中删除外部系统所新增的客制化SDR以及客制化PEF。更新指令执行前也可自动执行锁定程序,以禁止 BMC存取欲删除的客制化SDR或是客制化PEF。且外部系统可先通过读取指令确认所需的客制化SDR以及客制化PEF不存在于客制化区域之后,再通过新增指令新增所需的客制化 SDR以及客制化PEF。而外部系统可包括通过智能平台管理总线(Intelligent Platform Management Bus, IPMB)与BMC连接的一控制器,或是通过输入输出连接端口(input/output port, I/O port)与BMC连接的一操作系统的一监控程序。此外,具有客制化SDR的BMC的控制方法还可包括判断客制化SDR是否在一清除期限内未被更新;以及当客制化SDR在清除期限内未被更新时,删除客制化SDR以及对应的客制化PEF。综上所述,具有客制化SDR的BMC的控制方法提供指令集给外部系统而十分具有弹性。且更新BMC时客制化SDR以及客制化PEF被保留,因此能省下重新定义的时间,也能够避免引起系统的异常。以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。


图1为一实施范例的基板管理控制器的示意图;图2为一实施范例的具有客制化检测器数据记录的基板管理控制器的控制方法的流程图;图3为另一实施范例的具有客制化检测器数据记录的基板管理控制器的控制方法的流程图。其中,附图标记20 服务器22 基板管理控制器222 处理器224 记忆体24 中央处理器25 服务器记忆体26 储存装置27 网络卡30 原始区域32,32a, 32b原始检测器数据记录(原始SDR)34,34a, 34b原始平台事件筛选(原始PEF)
4
40 客制化区域42,42a, 42b客制化检测器数据记录(客制化SDR)44,44a, 44b客制化平台事件筛选(客制化PEF)
具体实施例方式以下在实施方式中详细叙述本发明的详细特征以及优点,其内容足以使任何本领域技术人员了解本发明的技术内容并据以实施,且根据本说明书所揭露的内容、权利要求范围及图式,任何本领域技术人员可轻易地理解本发明相关的目的及优点。本发明是关于一种具有客制化检测器数据记录(sensor data record, SDR)的基板管理控制器(Baseboard Management Controller, BMC)的控制方法,其适用于具有一记忆体的基板管理控制器(BMC),其中BMC可用以管理一服务器。请参照图1,其为一实施范例的BMC的示意图。服务器20除了包括BMC 22之外, 还可包括一中央处理器M、一服务器记忆体25、一储存装置沈以及一网络卡27。而BMC 22 则可包括一处理器222以及记忆体224。且BMC 22提供服务予至少一外部系统(external system,未绘示)。其中记忆体2 可以是只读(read only memory, ROM)或是可擦写记忆体,且记忆体2M在不供电时,其中储存的数据并不会消失。服务器20可支持智能型平台管理接口 Gntelligent Platform Management Interface, IPMI),并通过上述硬件运行一操作系统。其中服务器20可使用Unix的Linux、 FreeBSD或是微软(Microsoft)的Windows (窗口操作系统)Server 2003等操作系统,也可为磁盘操作系统(Disk Operating System, DOS)或是可延伸固件接口(可扩展固件接口, Extensible Firmware Interface,EFI)的系统。且服务器20也可各种厂牌的各种服务器产品,本发明并不对其限制。更详细地说,智能型平台管理接口是一种服务器管理平台的标准架构,它包含BMC 22、系统接口 (System Interface)、非挥发性储存单元(Non-volatile Storage)、智能平台管理总线(Intelligent Platform Management Bus, IPMB)以及智能型机箱管理总线 (Intelligent Chassis Management Bus,ICMB)等 5 项组件。而其中最重要的就是BMC 22。而BMC 22又可称为管理芯片,其能够监控服务器20的运行状况。且通过BMC 22, 可自由地将服务器20电力开启(power on)或是电力关闭(power off)。此外,BMC 22就像是一台独立的计算机,包括自己的处理器222以及记忆体2 等资源。BMC 22在服务器 20未开机的情况下便可运作,且BMC22的运作均使用自己具有的资源,而不会占用服务器 20的硬件模块的其它资源。举例而言,BMC 22可以使用惠普(HP)公司的iLO系统、戴尔 DELL公司的iDRAC系统,或是英特尔Qntel)公司的ESB2系统。请配合图1并参照图2,图2为一实施范例的具有客制化SDR的BMC的控制方法的
流程图。首先将BMC 22的记忆体2 分割为一原始区域30以及一客制化区域40,其中原始区域30包括对应的至少一原始SDR 32以及至少一原始平台事件筛选(platform event filter, PEF)34(步骤S100)。原始区域30提供给BMC 22进行一般的作业,而客制化区域 40则提供服务给BMC 22以及外部系统。更详细地说,通过配置于服务器20的中央处理器对、服务器记忆体25、储存装置沈或是网络卡27等各个硬件模块上的原本就具有的多个检测器(sensor),BMC 22可监控这些硬件模块的运行状况。这些原本就具有的检测器检测分别负责的硬件模块,并定时将负责的硬件模块的状态写入对应的原始SDR 32中。且所有对应于相同型号的BMC 22,所能监控的检测器都是固定且相同的。而每一个原始PEF 34具有至少一处理策略,例如关机、 重新开机或是警告管理员。BMC 22可依据原始SDR 32的值,可针对各种异常事件通过原始 PEF 34过滤出相对应的处理策略。举例而言,BMC 22本身可具有监控中央处理器M的温度的检测器以及检测服务器记忆体25的负荷的检测器。而监控中央处理器M的温度的检测器对应于原始SDR 32a 以及原始PEF 34a,检测服务器记忆体25的负荷的检测器对应于原始SDR 32b以及原始 PEF 34b。BMC 22可依据原始SDR 32a得知中央处理器M的温度,并依据原始PEF 34a判断在目前温度需要执行的处理策略。具有客制化SDR的BMC的控制方法并提供指令集给外部系统,而外部系统通过指令集管理对应的至少一客制化SDR 42和至少一客制化PEF 44(步骤S110)。其中指令集可包括一新增指令,而外部系统通过新增指令于客制化区域40中新增对应的客制化SDR 42 以及客制化PEF 44。换句话说,客制化区域40中存放的客制化SDR 42以及客制化PEF 44 都不属于BMC 22原先具有的检测器,而是属于外部系统的检测器。外部系统可包括通过IPMB与BMC 22连接的一控制器,或是通过输入输出连接端口(input/output port, I/O port)与BMC 22连接的操作系统的一监控程序。例如外部系统可以是网络卡27的控制器,其可通过额外的检测器监控网络卡27。网络卡27的控制器 (也就是外部系统)便可通过新增指令在客制化区域40中新增成对的客制化SDR 42a以及客制化PEF 44a。同样的储存装置沈或其它硬件模块的控制器可在客制化区域40中新增成对的客制化SDR42b以及客制化PEF 44b。指令集还可包括一更新指令或一读取指令,而外部系统可分别通过更新指令或读取指令于客制化区域40中更新或读取外部系统所新增的客制化SDR42。根据一实施范例, 外部系统可先通过读取指令确认其所需的客制化SDR 42以及客制化PEF 44不存在于客制化区域40之后,再通过新增指令新增所需的客制化SDR 42以及客制化PEF 44。指令集也可包括一删除指令,而外部系统通过删除指令于客制化区域40中删除外部系统所新增的客制化SDR 42以及客制化PEF 44。需注意的是,任一外部系统只能删除自己新增过的客制化SDR 42以及客制化PEF 44,而不能删除其它外部系统的。且更新指令或是删除指令执行前,可自动执行一锁定程序,以禁止BMC 22存取欲更新或删除的客制化SDR 42或客制化PEF 44。通过锁定程序,BMC 22便不会在外部系统进行更新或删除时读取客制化区域40并进行对应的处理。因此可以防止有程序读取正在被删改的客制化SDR 42或客制化PEF 44,所造成的信息错乱或事件判别等错误。此外,外部系统对BMC 22下达指令集的新增指令、更新指令、读取指令或是删除指令,BMC 22再依据指令的内容执行。因此外部系统能够通过自行新增或更新客制化SDR 42以及客制化PEF 44的方式,提供BMC 22原本没有的信息以及对应的处理策略。如此一来,就不需要因为分别的客制化检测器需求而更动整个BMC 22中的原始SDR 32与原始PEF 34。也就是说,即使面对客户对于BMC 22的各种不同需求,也能够提供极有弹性的管理BMC 22的方法。
而当需要更新BMC 22的一 BMC固件时,则只会更新原始区域30中的数据,而不会影响到客制化区域40。其中BMC固件可以是BMC 22的驱动程序或是上述的原始PEF 34。 例如需要更新BMC 22的固件版本时,客制化SDR42以及客制化PEF 44被保留,而能避免因为BMC 22的更新被清空而需要重新进行新增,甚至是引起外部系统异常的问题。在新增客制化SDR 42以及客制化PEF 44之后,外部系统可依据各自的检测器定期检测状况,并将状况量化后更新对应的客制化SDR 42。而BMC 22轮询(polling)原始区域30中的原始SDR 32以及客制化区域40中的客制化SDR 42 (步骤S120)。且BMC 22可判断轮询得到的SDR (含原始SDR 32以及客制化SDR 42)的值是否符合分别对应于SDR的一临界值(步骤S130)。当至少一个SDR的值不符合对应的临界值时,BMC 22再如前述依据对应的PEF (含原始PEF 34以及客制化PEF 44)得到应该进行的处理策略(步骤S140)。因此BMC 22仅需照一般方式轮询客制化SDR 42,便能轻易地额外控管原先没有直接的检测器的硬件模块。而于另一实施范例,具有客制化SDR的BMC的控制方法可如图3。BMC 22可判断客制化SDR 42是否在一清除期限内未被更新(步骤S200)且当客制化SDR 42在清除期限内未被更新时,便删除此未被更新的客制化SDR 42以及与其对应的客制化PEF 44(步骤 S210)。对于长期未被更新的客制化SDR 42,可能是对应的外部系统长期未运行所造成。因此依据清除期限清除没在使用的客制化SDR 42以及客制化PEF 44,能够更有效率地维护客制化区域40并且避免BMC 22花费不必要的时间于没在使用的客制化SDR 42以及客制化PEF 44上。此外,即使对应的外部系统再度运行,也能够自行新增所需的客制化SDR 42 以及客制化PEF 44,而不会造常异常。综上所述,具有客制化SDR的BMC的控制方法提供指令集给外部系统自行新增或更新客制化SDR以及客制化PEF,而能够提供极有弹性的管理BMC的方法。且需要更新BMC 时,客制化SDR以及客制化PEF被保留,因此能节省重新进行新增客制化SDR以及客制化 PEF的时间,也能够避免引起系统的异常。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种具有客制化检测器数据记录SDR的基板管理控制器BMC的控制方法,适用于具有一记忆体的一基板管理控制器BMC,该BMC提供服务予至少一外部系统,其特征在于,该具有客制化检测器数据记录的基板管理控制器的控制方法包括将该BMC的该记忆体分割为一原始区域以及一客制化区域,其中该原始区域包括对应的至少一原始SDR以及至少一原始平台事件筛选PEF ;提供一指令集给该外部系统,该外部系统通过该指令集管理对应的至少一客制化SDR 和至少一客制化PEF ;轮询该原始区域中的该原始SDR以及该客制化区域中的该客制化SDR ;判断轮询得到的该些SDR的值是否符合分别对应于该些SDR的多个临界值;以及当至少一该SDR的值不符合对应的该临界值时,依据对应的该PEF得到一处理策略。
2.根据权利要求1所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,该指令集包括一新增指令,该外部系统通过该新增指令于该客制化区域中新增对应的该客制化SDR以及该客制化PEF。
3.根据权利要求2所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,该指令集包括一更新指令,该外部系统通过该更新指令于该客制化区域中更新该外部系统所新增的该客制化SDR ;且该更新指令执行前自动执行一锁定程序,以禁止该BMC存取欲更新的该客制化SDR。
4.根据权利要求2所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,该指令集包括一删除指令,该外部系统通过该删除指令于该客制化区域中删除该外部系统所新增的该客制化SDR以及该客制化PEF ;且该删除指令执行前自动执行一锁定程序,以禁止该BMC存取欲删除的该客制化SDR或该客制化PEF。
5.根据权利要求2所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,该指令集包括一读取指令,该外部系统通过该读取指令于该客制化区域中读取该外部系统所新增的该客制化SDR。
6.根据权利要求5所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,该外部系统先通过该读取指令确认所需的该客制化SDR以及该客制化PEF不存在于该客制化区域,再通过该新增指令新增所需的该客制化SDR以及该客制化PEF。
7.根据权利要求1所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,该外部系统包括通过智能平台管理总线IPMB与该BMC连接的一控制器,或是通过输入输出连接端口与该BMC连接的一操作系统的一监控程序。
8.根据权利要求1所述的具有客制化检测器数据记录的基板管理控制器的控制方法, 其特征在于,还包括判断该客制化SDR是否在一清除期限内未被更新;以及当该客制化SDR在该清除期限内未被更新时,删除该客制化SDR以及对应的该客制化PEF。
全文摘要
一种具有客制化检测器数据记录SDR的基板管理控制器BMC的控制方法包括将BMC的记忆体分割为原始区域以及客制化区域,其中原始区域包括对应的至少一个原始检测器数据记录以及原始平台事件筛选PEF;提供指令集给至少一外部系统,外部系统通过指令集管理对应的至少一个客制化SDR和客制化PEF;轮询原始区域中的原始SDR以及客制化区域中的客制化SDR;判断轮询得到的这些SDR的值是否符合分别对应于这些SDR的多个临界值;以及当至少一个SDR的值不符合对应的临界值时,依据对应的PEF得到一处理策略。
文档编号G06F11/30GK102467435SQ20101054137
公开日2012年5月23日 申请日期2010年11月10日 优先权日2010年11月10日
发明者卢晓芬, 陈志伟 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1