本发明系与服务器机柜相关,特别是一种服务器机柜监控方法。
背景技术:
因计算机产业的成熟与网络科技的进步,服务器机柜已普遍使用于诸多行业,例如电信业、银行业、游戏产业等。服务器机柜可容纳多个服务器节点。每个服务器节点均可以是一个独立运作的计算机系统,包含一个以上的中央处理器、主板、内存、硬盘等。然而,此些服务器节点密集置放在服务器机柜中,必须特别注意散热及电源管理。
一般的作法是,服务器机柜设置有机柜管理控制器(Rack Management Controller,RMC),多个服务器节点(Node)则连接至同一机柜背板(Rack Backplane,RBP ),多个机柜背板再连接至机柜管理控制器。当此些服务器节点在运作的过程中,机柜管理控制器会透过机柜背板逐一向各个服务器节点轮询其当下的各项参数(如中央处理器温度、电压等),之后再根据所收集的参数决定控制方式(如控制风扇的转速加快或减慢)。然而,前述逐一向各个服务器节点轮询的过程中,机柜管理控制器不但需先发送请求,还须逐一费时等待各个服务器节点回复的参数;此外,若服务器节点当机或因其他因素无法回传参数,机柜管理控制器还须等待一段超时(Time out)的时间。如此下来,全部轮询一次至少需耗费数分钟的时间。更重要的是,机柜管理控制器是根据数分钟前的数据来进行控制,无法根据实时的机柜状态进行处理,因此机柜管理控制器便无法实时且快速地因应各种状况实时改善。
技术实现要素:
本发明的主要目的在于提供一种服务器机柜监控方法,其对于频繁发送的状态参数不采轮询的方式,而仅以单向传送的方式来节省收集数据的时间,以利实时根据数据进行反应。
为达上述目的,本发明提供一种服务器机柜监控方法,适用于服务器机柜。服务器机柜包含机柜管理控制器、若干服务器及连接于机柜管理控制器与服务器之间的至少一机柜背板。各服务器包含一基板管理控制器。
服务器机柜监控方法包含:初始化机柜管理控制器的第一处理器、机柜背板的第二处理器及基板管理控制器的第三处理器;机柜管理控制器于初始完成后经由第一通讯界面发出一起始讯息至所连接的机柜背板的第二通讯界面;机柜背板于初始化完成后经由第四通讯界面发出另一起始讯息至所连接的基板管理控制器的第三通讯界面;每一基板管理控制器自收到机柜背板发出的起始讯息起,不间断地经由第三通讯界面定时传送其服务器的实时监测参数至所连接的机柜背板的第四通讯界面;及机柜背板自收到机柜管理控制器发出的起始讯息起,不间断地经由第二通讯界面定时传送实时监测参数至机柜管理控制器的第一通讯界面。藉此,机柜背板仅需被动地接收服务器不断地传送的实时监测参数,而省略了向逐次服务器发送请求的过程,而可缩短收集参数的时间。于此,实时监测参数可包含:服务器的电子器件温度值、服务器的电子器件电压值、服务器的功耗或环境温度。
优选地,机柜背板可根据所接收的实时监测参数执行一控制命令。据此,可实时因应服务器的状态实时反应进行控制。
优选地,机柜背板根据所接收的实时监测参数执行控制命令的步骤包含:第二处理器根据所接收的实时监测参数计算得一风扇转速;及第二处理器执行控制命令以根据风扇转速控制一风扇组的运转。
优选地,实时监测参数可区分为第一层级及第二层级,前述服务器机柜监控方法更可包含:机柜背板的第二处理器根据第一层级及第二层级过滤所接收实时监测参数,而将第二层级的实时监测参数经由第二通讯界面发送至机柜管理控制器的第一通讯界面;及机柜管理控制器的第一处理器根据所接收的第二层级的实时监测参数执行一动作命令。于此,机柜背板的第二处理器可根据第一层级的实时监测参数执行控制命令。藉由分级管理,让机柜背板专门负责第一层级的管控(例如所属机柜背板区域的服务器的散热管理),并让机柜管理控制器负责第二层级的管控(例如整体机柜的散热管理)。
优选地,所述服务器机柜监控方法还可包含:机柜背板的第二处理器于执行控制命令后,经由第二通讯界面传送一事件记录至机柜管理控制器的第一通讯界面;及机柜管理控制器的第一处理器储存事件记录至一储存器。机柜管理控制器仅需储存前述机柜背板因应第一层级的事件所进行的处理结果即可。
优选地,第二层级的实时监测参数可为服务器运行状态(如降频或关机),所述动作命令为控制对应于降频或关机的服务器的电源供应单元的输出。
优选地,机柜背板对应各服务器设定有一检查周期,以根据检查周期检查每一服务器是否仍持续发送实时监测参数。
与现有技术相比,本发明实施例提供的服务器机柜监控方法对于频繁发送的状态参数不采轮询的方式,而仅以单向传送的方式来节省收集数据的时间,以利实时根据数据进行反应。并且,机柜管理控制器所欲收集的服务器的数据可先由机柜背板先行整合,再提供给机柜管理控制器,可减少数据传递量且增加信道传输效率。再者,各个服务器的监测参数可分散于机柜背板先行处理,可减轻机柜管理控制器的运算负担,也可降低机柜管理控制器的软件开发难度。
【附图说明】
图1 为本发明一实施例的服务器机柜的方块示意图。
图2 为本发明一实施例的机柜背板与服务器间的连接示意图。
图3 为本发明一实施例的服务器机柜的另一方块示意图。
图4 为本发明一实施例的服务器机柜监控方法流程图。
图5 为本发明一实施例的信号传送示意图。
【具体实施方式】
请参阅第1图,为本发明一实施例的服务器机柜的方块示意图。服务器机柜包含机柜管理控制器100、若干服务器700及至少一机柜背板200(于此以多个机柜背板200为例)。每一服务器700包含一基板管理控制器(Baseboard Management Controller,BMC)300。机柜背板200连接于机柜管理控制器100与基板管理控制器300之间。一个机柜背板200可连接多个基板管理控制器300(服务器700)。服务器700是一个可以独立运作的节点,包含中央处理器(Central Processing Unit ,CPU)、南北桥、挥发性内存、储存单元、网络芯片等电子器件。储存单元可例如为独立磁盘备援数组(Redundant Array of Independent Disks,RAID)或简单磁盘绑定(Just a Bunch Of Disks,JBOD)系统等逻辑磁盘阵列。或者,储存单元也可以是硬盘(Hard Disk Drive,HDD)等非挥发性储存装置。
如第1图所示,服务器机柜还包含多个风扇组400,每一风扇组400可包含一个或一个以上的风扇。每一机柜背板200可连接一个风扇组400,以对同一个机柜背板200所连接的服务器700散热。在一些实施例中,机柜背板200可透过智能管理平台总线(Intelligent Platform Management Bus,IPMB)或脉冲宽度调变(Pulse Width Modulation,PWM)等信号传输方式来与风扇组400连接。
请参阅第2图,为本发明一实施例的机柜背板200与服务器700间的连接示意图。机柜背板200可经由节点信号转接板(Node Signal Transfer Board,NSTB)800及服务器托盘背板(Tray Backplane,TBP)900连接至服务器700的基板管理控制器300。节点信号转接板800是服务器托盘背板900和机柜背板200的中继接口,节点信号转接板800的一端通过电缆(Cable)连接服务器托盘背板900,另一端通过PCI Express接口连接机柜背板200,但本发明非限于此些界面类型。服务器托盘背板900是服务器机箱(Server Chassis)的背板,以实现取电、电源分配和信号转换功能。机柜背板200可连接多个节点信号转接板800,每一节点信号转接板800可再经由服务器托盘背板900连接多个服务器700的基板管理控制器300。
如第1图所示,服务器机柜还包含电源分配板(Power Distribution Board,PDB)500及多个电源供应单元(Power Supply Unit,PSU)600。 机柜管理控制器100可透过电源分配板500与电源供应单元600连接。服务器机柜可包含10个电源供应单元600及10个机柜背板200,每个电源供应单元600对应供应一个机柜背板200及其连接的服务器700与风扇组400工作电力,但本发明的服务器机柜的电源供应单元600与机柜背板200的数量非以此为限。
参阅第3图,为本发明一实施例的服务器机柜的另一方块示意图。机柜管理控制器100内部设有第一处理器110、第一通讯界面120、储存器130及电源管理总线(PMBus)140。第一处理器110电性连接第一通讯界面120、储存器130及电源管理总线140。电源管理总线140电性连接电源分配板500,藉此第一处理器110可执行动作命令而透过电源管理总线140传送控制讯息至电源分配板500,从而控制各个电源供应单元600的运作。
机柜背板200内部设有第二处理器210、第二通讯界面220、第四通讯界面230及风扇控制接口240。第二处理器210电性连接第二通讯界面220、第四通讯界面230及风扇控制接口240。风扇控制接口240电性连接风扇组400。风扇控制接口240可包含若干输入输出脚位(I/O Pins),而可由第二处理器210经由风扇控制接口240传送另一控制讯息至风扇组400,以控制风扇转速。在此,第四通讯界面具有兼容于PCI Express接口的端子,而可经由端子的脚位传输I2C、PWM、转速计(Tachometer,简称TACH)或通用型输入输出(General Purpose I/O,简称GPIO)等讯号。但本发明的实施例非限于此,第四通讯界面亦可以是具有兼容于其他接口的端子,如RJ45、RS232、RS485等。
基板管理控制器300内部设有第三处理器310、第三通讯界面320及传感器330。第三处理器310电性连接第三通讯界面320及传感器330。传感器330可例如为温度传感器,以感测服务器机柜内的某一空间的环境温度或某一电子器件的温度。但本实施例非限于此,传感器330亦可为电压侦测器,可侦测电子器件的工作电压;或为功率侦测器,可侦测电子器件的消耗功率。电子器件可为前述的中央处理器、南北桥、挥发性内存、储存单元、网络芯片等。基板管理控制器300经由第三通讯界面320连接至机柜背板200的第四通讯界面230(其间还连接了节点信号转接板800和服务器托盘背板900,如第2图所示),以将传感器330的感测数据传送给机柜背板200。第三通讯界面320可包含若干输入输出脚位,透过定义不同脚位的功能来传送讯号。机柜背板200的第二处理器210可根据感测数据判断是否要调整风扇组400的转速。并且,机柜背板200的第二处理器210可经由第二通讯界面220传送传感器330的感测数据或其他事件记录至机柜管理控制器100的第一通讯界面120,机柜管理控制器100的第一处理器110可将经由第一通讯界面120所接收到的感测数据或其他事件记录储存于储存器130中,或者进一步据以执行动作命令。第一通讯界面120与第二通讯界面220可为I2C、RS485、USB或以太网络。储存器130可为非挥发内存,如闪存。前述的第一处理器110、第二处理器210及第三处理器310为可执行编程语言(Programming language)的处理器。
第4图为本发明一实施例的服务器机柜监控方法流程图。第5图为本发明一实施例的信号传送示意图。合并参照第4图及第5图。当服务器机柜启动后,首先初始化机柜管理控制器100的第一处理器110、机柜背板200的第二处理器210及基板管理控制器300的第三处理器310(步骤S801)。待初始化完成后,即机柜管理控制器100、机柜背板200与基板管理控制器300可执行其各自的功能时,会依照预先制定好的通讯协议来发送起始讯息至其所连接的组件。亦即,机柜管理控制器100于初始完成后经由第一通讯界面120发出一起始讯息至所连接的机柜背板200的第二通讯界面220(步骤S802)。于是,机柜背板200可在接收到机柜管理控制器100发出的起始讯息后,得知机柜管理控制器100已初始化完成,而可准备发送监控参数或其他信息至机柜管理控制器100。机柜背板200的第二处理器210于初始化完成后,经由第四通讯界面230发出另一起始讯息至所连接的基板管理控制器300的第三通讯界面320(步骤S803)。于是,基板管理控制器300可在接收到机柜背板200发出的起始讯息后,得知机柜背板200已初始化完成,而可准备发送监控参数或其他信息至机柜背板200。另一方面,机柜背板200也会于初始化完成后经由第二通讯界面220发出起始讯息至所连接的机柜管理控制器100的第一通讯界面120。于是,机柜管理控制器100可在接收到机柜背板200发出的起始讯息后,得知机柜背板200已初始化完成,而可准备接收机柜背板200传送来的实时监控参数或其他信息,或可传送信息给机柜背板200。相似地,基板管理控制器300的第三处理器310则在初始化完成后,也会经由第三通讯界面320发送起始讯息至所连接的机柜背板200的第二通讯界面220。于是,机柜背板200可在接收到基板管理控制器300发出的起始讯息后,得知基板管理控制器300已初始化完成,而可准备接收基板管理控制器300传送来的实时监控参数或其他信息,或可传送信息给基板管理控制器300。据此,当收到起始讯息时,则可断定该起始讯息的来源已完成初始化,以决定是否开始传送数据给所相连的组件。换言之,上述的各机柜管理控制器100、机柜背板200及基板管理控制器300等组件均会在初始化完成之后,发送起始讯息给所相连的组件,以让收到此起始讯息的组件得知其可开始自动地传送给应传送的信息(如实时监测参数)给此完成初始化的组件。
于是,基板管理控制器300自收到起始讯息起,不间断地经由第三通讯界面320定时传送所属服务器700的实时监测参数至所连接的机柜背板200的第四通讯界面230(步骤S804)。实时监测参数可包含服务器700的电子器件温度值、服务器700的电子器件电压值、服务器700的功耗或一环境温度。电子器件可为前述的中央处理器、南北桥、挥发性内存、储存单元、网络芯片等。所述环境温度可由设置于服务器机柜内的温度传感器取得。温度传感器除了可以是连接于基板管理控制器300的第三处理器310之外,也可以连接机柜背板200的第二处理器210,而由第二处理器210取得侦测结果。基板管理控制器300是自初始化完成且收到机柜背板200发出的起始讯息后,不断地将最新的实时监测参数传送至机柜背板200,直至基板管理控制器300无法传送(如关机、当机等)为止,无需等待机柜背板200要求传送。机柜背板200则于初始化完成且收到机柜管理控制器100发出的起始讯息后,不断地经由第二通讯界面220定时传送实时监测参数至机柜管理控制器100的第一通讯界面120(步骤S805)。于步骤S805中,第二处理器210是将来自于各个基板管理控制器300的实时监测参数进行处理(例如过滤不必要的信息或简化信息),而将处理后的实时监测参数传送至机柜管理控制器100,但本发明实施例非限于此,亦可不经处理而直接将接收到的原始数据传送至机柜管理控制器100。透过上述步骤S801至步骤S805,机柜管理控制器100可不经轮询而接收到基板管理控制器300提供的实时监测参数,而可减少通讯所需的时间。
在一实施例中,机柜背板200的第二处理器210还可根据所接收的实时监测参数执行一控制命令。机柜背板200也可具有储存器,而可储存及更新所接收的实时监测参数。若是机柜背板200收到机柜管理控制器100的起始讯息,则机柜背板200可定时的将收到的实时监测参数传送给机柜管理控制器100。
于一实施例中,控制命令系控制风扇组400的转速或/及占空比(Duty cycle)。机柜背板200的第二处理器210可根据所接收的实时监测参数计算得一风扇转速或/及占空比,接着根据此风扇转速控制风扇组400的运转。藉此,举例而言,当机柜背板200根据所收到的实时监测参数判断出某一或某些服务器700的电子器件温度偏高时,可控制对应的风扇组400提高转速,以提高散热效率。在此,所述实时监测参数可区分为第一层级及第二层级。机柜背板200的第二处理器210可根据第一层级与第二层级过滤所接收实时监测参数,而仅将第二层级的实时监测参数经由第二通讯界面220发送至机柜管理控制器100的第一通讯界面120。机柜背板200的第二处理器210则根据第一层级的实时监测参数来执行前述控制命令(如判断服务器700是否需要提高散热)。
在一实施例中,机柜背板200的第二处理器210于执行前述控制命令后,可经由第二通讯界面220传送一事件记录至机柜管理控制器100的第一通讯界面120,由机柜管理控制器100储存此事件记录至储存器130。如此一来,可减少实时监测参数的传送次数。各个机柜背板200可各自负责其所连接的服务器700的散热管理,仅需回报异常事件及处理结果予机柜管理控制器100。机柜管理控制器100仅需负责处理第二层级的事件。
在一实施例中,第二层级的实时监测参数为服务器700的运行状态(如降频或关机),机柜管理控制器100的第一处理器110则可根据服务器700的运行状态决定是否要调整对应于服务器700的电源供应单元600的输出,据以执行动作命令,例如降低输出功率或降低输出电压。
在一些实施例中,电源分配板500可具有监控电路,若监控电路侦测到某一电源供应单元600的输出异常(如超出功率上限),可通过机柜管理控制器100与机柜背板200通知对应该异常的电源供应单元600的服务器700降频、关机或限制其他服务器700开机,以使得功率负载保持在最大功率限制以内。
在一实施例中,机柜背板200可对应各个服务器700设定一检查周期,以根据检查周期检查每一服务器700是否仍持续发送实时监测参数。
参照第3图,服务器700除了传送前述实时监测参数至机柜背板200之外,还可传送非经常性变动数据,如因特网协议(Internet Protocol,IP)地址、IP模式、主机名等。此些非经常性变动数据仅需于变动时才传送,如此可减少数据传送数量。
在一些实施例中,机柜管理控制器100可在收到机柜背板200传送的起始讯息之后,得知此机柜背板200已初始化完成,而可对该机柜背板200传送控制讯息。此控制讯息的控制对象可为机柜背板200,也可为该机柜背板200连接的服务器700的基板管理控制器300。若控制对象为基板管理控制器300,则机柜背板200在收到此基板管理控制器300发出的起始讯息之后,可转送此控制讯息至此基板管理控制器300。
前述虽以散热管理与电源管理来说明,然而机柜管理控制器还可供管理人员查看资源清册与错误报告(如硬件配置错误),并可发出警报。因此,所传输的监测参数、控制命令与动作命令不以上述为限。
综上所述,本发明实施例提供的服务器机柜监控方法对于频繁发送的状态参数不采轮询的方式,而仅以单向传送的方式来节省收集数据的时间,以利实时根据数据进行反应。并且,机柜管理控制器100所欲收集的服务器700的数据可先由机柜背板200先行整合,再提供给机柜管理控制器100,可减少数据传递量且增加信道传输效率。再者,各个服务器700的监测参数可分散于机柜背板200先行处理,可减轻机柜管理控制器100的运算负担,也可降低机柜管理控制器100的软件开发难度。并且,藉由上述各机柜管理控制器100、机柜背板200及基板管理控制器300等组件均会在初始化完成之后,发送起始讯息给所相连的组件,可让收到此起始讯息的组件可自动地传送给应传送的信息给此完成初始化的组件,无需进行轮询。