技术领域本发明涉及一种机柜,尤其涉及一种具有自动重置功能的机柜及其自动重置方法。
背景技术:
一般来说,设置在机柜(Rack)内的每一台服务器皆需配置有各自的基板管理控制器(BaseboardManagementController,BMC),并由该BMC来对该服务器进行控制及维护。该机柜内一般设置有一机柜管理服务器(RackManagementController,RMC),用以与该机柜内的所有服务器中的该BMC进行沟通,以通过该些BMC控制各该服务器、搜集各该服务器的信息以及传递各该服务器所需的档案(例如韧体的更新档)。于相关技术中,该RMC与该些BMC主要可通过智能平台管理总线(IntelligentPlatformManagementBus,IPMB)、内部整合电路(Inter-IntegratedCircuit,I2C)或是局域网络(LocalAreaNetwork,LAN)等通讯通道来进行沟通,并进行控制指令、信息及档案的传输。但上述该些通讯通道主要都是双向的。具体而言,该RMC要与一目标BMC进行沟通时,首先会发出一个初始讯号(ASK)至该目标BMC,待收到该目标BMC的响应讯号(RESPONSE)后,确认所使用的该通讯通道是畅通的,该RMC才会发送真正要传输的数据给该目标BMC。换句话说,当该目标BMC本身或与该RMC间的通讯接口发生问题(例如韧体出错或因硬件讯号错误而失效),而无法对该RMC的讯号作出响应时,该RMC即无法与该目标BMC进行沟通。于现行的机柜中,各服务器设置有BMC看门狗(Watchdog)功能,能够自动侦测BMC的错误进而自动重置BMC。然而,该BMC看门狗功能只有在特定错误(例如整个BMC挂掉)时才能够侦测得到,因此当遭遇某些情况(例如该BMC只有部分接口出现错误)时,现有的该BMC看门狗不一定能够侦测出错误进而重置BMC。因此,只能由该RMC通知该机柜的管理人员(例如通过蜂鸣器发出警示声响,通过发光二极管发出警示灯号或向管理人员发出e-mail与简讯等)。管理人员收到上述警示讯息后,再将发生问题的BMC以人工的方式重置(例如将所属的服务器抽离该机柜(使该BMC断电)后再重新插入(使该BMC重置))。由上述说明可看出,在相关技术中必须以人工来解决RMC与BMC无法沟通的问题,相当麻烦。并且,当该机柜已销售至客户端后,由于客户端不见得具备解决上述问题的能力,因此在问题发生时必须将机柜或服务器送回原厂维修,或是请管理人员直接到客户端进行维修,相当不方便。
技术实现要素:
有鉴于此,本发明的目的在于提供一种具有自动重置功能的机柜及其自动重置方法,可在机柜内的机柜管理控制器无法正常与端点服务器内的基板管理控制器进行沟通时,强制对基板管理控制器进行重置,以令基板管理控制器恢复初始的正常状态。为了达到上述目的,本发明提供了一种具有自动重置功能的机柜,包括:至少一个端点服务器,其具有一基板管理控制器;以及一控制模组,其电性连接该端点服务器,具有一机柜管理控制器,该机柜管理控制器通过一预设传输通道与该基板管理控制器进行沟通;其中,该机柜管理控制器通过一GPIO通道与该基板管理控制器电性连接,于无法经由该预设传输通道接收该基板管理控制器的一响应讯号时,改通过该GPIO通道发出一控制指令至该基板管理控制器,以强制该基板管理控制器重置。优选地,其中该机柜管理控制器具有一控制脚位,该基板管理控制器具有一重置脚位,该机柜管理控制器的该控制脚位通过该GPIO通道电性连接该基板管理控制器的该重置脚位。优选地,其中该控制模组更包括一电路板,该端点服务器更包括一基板,该机柜管理控制器电性连接于该电路板上,该基板管理控制器电性连接于该基板上,该控制脚位通过该电路板与该基板电性连接该重置脚位,以发送该控制指令。优选地,其中该预设传输通道为智能平台管理总线(IntelligentPlatformManagementBus,IPMB)、内部整合电路(Inter-IntegratedCircuit,I2C)、通用异步收发传输器(UniversalAsynchronousReceiver/Transmitter,UART)或局域网络(LocalAreaNetwork,LAN)。优选地,其中所述机柜更包括一电力控制芯片,其电性连接该机柜的电源及该端点服务器,该机柜管理控制器通过该GPIO通道连接该电力控制芯片,并于无法经由该预设传输通道接收该基板管理控制器的一响应讯号时,通过该GPIO通道发出一重置指令至该电力控制芯片,该电力控制芯片依据该重置指令先断除提供给该端点服务器的电力后,再重新送电给该端点服务器。为了达到上述目的,本发明另外提供了一种机柜的自动重置方法,该机柜包括一控制模组及与该控制模组电性连接的至少一端点服务器,该控制模组具有一机柜管理控制器,该端点服务器具有通过一预设传输通道与该机柜管理控制器沟通的一基板管理控制器,该自动重置方法包括:a)判断该机柜管理控制器是否无法经由该预设传输通道接收该基板管理控制器的一响应讯号;及b)当该机柜管理控制器无法经由该预设传输通道接收该响应讯号时,改通过一GPIO通道发出一控制指令至该基板管理控制器,以强制该基板管理控制器重置,其中该机柜管理控制器与该基板管理控制器通过该GPIO通道电性连接。优选地,其中该机柜管理控制器具有一控制脚位,该基板管理控制器具有一重置脚位,该机柜管理控制器的该控制脚位通过该GPIO通道电性连接该基板管理控制器的该重置脚位,以发送该控制指令。优选地,其中该步骤a之前更包括一步骤a0:该机柜管理控制器通过该预设传输通道发送一初始讯号至该基板管理控制器。优选地,其中该步骤a包括下列步骤:a1)判断是否通过该预设传输通道接收该基板管理控制器针对该初始讯号所回复的该响应讯号;a2)若未接收到该响应讯号,判断该初始讯号的发送次数是否大于一门坎值;a3)于该发送次数未大于该门坎值时,通过该预设传输通道重新发送该初始讯号至该基板管理控制器;及a4)于该发送次数大于该门坎值时,执行该步骤b。优选地,其中所述自动重置方法更包括一步骤c:该步骤b后,等待该基板管理控制器的重置作业,并通过该预设传输通道与重置后的该基板管理控制器重新进行沟通。本发明对照现有技术所能达到的技术功效在于,当端点服务器内的基板管理控制器发生问题时,造成机柜内的机柜管理控制器无法与之沟通时,可通过另一个简单、可靠的硬件机制来强制对发生问题的基板管理控制器进行重置,以恢复为初始的正常状态;机柜管理控制器可于发生问题的基板管理控制器重置完成后,再重新与之建立沟通通道,借此确保无论发生什么情况,机柜管理控制器皆可对基板管理控制器进行控制。附图说明图1为本发明的第一具体实施例的机柜示意图;图2为本发明的第一具体实施例的连接示意图;图3为本发明的第二具体实施例的连接示意图;图4为本发明的第一具体实施例的重置流程图。主要部件名称:1…机柜;2…控制模组;21…电路板;22…机柜管理控制器;3…端点服务器;31…基板;32…基板管理控制器;321…重置脚位;33…内存;4…预设传输通道;5…GPIO通道;S10~S20…重置步骤。具体实施方式有关本发明的详细说明及技术内容,将配合附图说明如下,然而附图仅作为说明之用,并非用于限制本发明。首请参阅图1,为本发明的第一具体实施例的机柜示意图。本发明揭示了一种机柜1,该机柜1具有自动重置功能。更具体而言,该机柜1包括一控制模组2及多个端点服务器(Node)3,该控制模组2至少包括一电路板21及电性连接于该电路板21上的一机柜管理控制器(RackManagementController,RMC)22,多个端点服务器3分别包括一基板31及电性连接于该基板31上的一基板管理控制器(BaseboardManagementController,BMC)32。本发明中所指的重置功能,主要是指对多个端点服务器3中的该些基板管理控制器32进行的重置。该控制模组2及该多个端点服务器3分别设置于该机柜1之中,并且彼此电性连接,因此,可由该控制模组2中的该机柜管理控制器22来与各该端点服务器3中的该些基板管理控制器32进行沟通,并经由该些基板管理控制器32来控制各该端点服务器3、搜集各该端点服务器3的信息、并且传递各该端点服务器3所需的档案(例如韧体的更新档案)。请同时参阅图2,为本发明的第一具体实施例的连接示意图。如图2所示,该控制模组2中的该机柜管理控制器22主要是通过多个预设传输通道4分别与各该端点服务器3中的该些基板管理控制器32连接。本实施例中,该预设传输通道4可为智能平台管理总线(IntelligentPlatformManagementBus,IPMB)、内部整合电路(Inter-IntegratedCircuit,I2C)、通用异步收发传输器(UniversalAsynchronousReceiver/Transmitter,UART)或是局域网络(LocalAreaNetwork,LAN)等,但不加以限定。该机柜管理控制器22可通过该些预设传输通道4与该些基板管理控制器32进行沟通,并传递各该端点服务器3所需的档案至各该基板管理控制器32,以利各该基板管理控制器32对档案进行使用。举例来说,各该端点服务器3可分别包含电性连接至该基板管理控制器32的内存33,各该内存33中可分别储存该些端点服务器3所需的基本输出输入系统(BasicInput/OutputSystem,BIOS)。当该些端点服务器3的BIOS需要更新时,该机柜管理控制器22由外部接收一更新档(例如为一映像档),并经由该些预设传输通道4将该更新文件分别传递至该些基板管理控制器32。接着,再由该些基板管理控制器32依据接收的该更新文件对该些内存33中的BIOS进行更新。以上述更新动作为例,该机柜管理控制器22要传输档案至该些基板管理控制器32前,先经由该些预设传输通道4发送一初始讯号(ASK)至该些基板管理控制器32,待接收到该些基板管理控制器32针对该初始讯号所回复的一响应讯号(RESPONSE)后,该机柜管理控制器22确认各该基板管理控制器32没有问题且该些预设传输通道4畅通,再经由该些预设传输通道4分别传递各该端点服务器3所需的档案至该些基板管理控制器32。反之,当该些基板管理控制器32的其中之一没有响应时,该机柜管理控制器22无法与没有响应的该基板管理控制器32进行沟通,因此也无法传递档案至没有响应的该基板管理控制器32。为解决此技术问题,本发明令该机柜管理控制器22可通过另一个简单、可靠的硬件机制来对发生问题的该基板管理控制器32进行控制,以令发生问题的该基板管理控制器32恢复为初始的正常状态。参阅图3,为本发明的第二具体实施例的连接示意图。于图3的实施例中,该机柜1内的该基板管理控制器32的数量以一个为例,以方便说明,但并非以此限定本发明的保护范围。本发明的该机柜1的主要技术特征在于,该机柜管理控制器22电性连接于该电路板21上,该基板管理控制器32电性连接于该基板31上,并且该机柜管理控制器22的其中一控制脚位(图末标示)通过该电路板21与该基板32直接电性连接该基板管理控制器32的一重置脚位(resetpin)321。更具体而言,本实施例中,该机柜管理控制器22通过通用型的输入输出(GeneralPurposeI/O,GPIO)直接电性连接该基板管理控制器32的该重置脚位321,并与该基板管理控制器32建立一GPIO通道5。通过本发明的技术方案,当该机柜管理控制器22通过该预设传输通道4发出该初始讯号至该基板管理控制器32,并且经过一等待时间后没有收到该基板管理控制器32针对该初始讯号所回复的该响应讯号时,该机柜管理控制器22会重新发送同样的讯号至没有响应的该基板管理控制器32。当该机柜管理控制器22重复发送该初始讯号的次数超过一门坎值时,该机柜管理控制器22会判断该基板管理控制器32发生问题。本实施例中,当该机柜管理控制器22判断该基板管理控制器32发生问题时,将会改通过该GPIO通道5对发生问题的该基板管理控制器32进行控制。具体而言,该机柜管理控制器22直接通过该GPIO通道5(经由该控制脚位)发出一控制讯号至发生问题的该基板管理控制器32的该重置脚位321,借以直接强制该基板管理控制器32重置。举例来说,于正常运作的情况下,该机柜管理控制器22的该控制脚位可设定成永远输出低电位讯号(即,为0),或是不输出任何讯号;当上述问题发生时,该机柜管理控制器22的该控制脚位改以输出高电位讯号(即,为1)。当该基板管理控制器32的该重置脚位321收到高电位讯号时,该基板管理控制器32即自行进行重置。但上述说明仅为本发明的一个具体实施例,但不以此为限。如上所述,无论该基板管理控制器32发生什么问题,导致该机柜管理控制器22无法通过该预设传输通道4与该基板管理控制器32进行沟通,该机柜管理控制器22永远可以通过该GPIO通道5强制该基板管理控制器32重置,令该基板管理控制器32恢复为初始的正常状态。并且,该机柜管理控制器22可在该基板管理控制器32恢复为初始的正常状态后,再通过该预设传输通道4重新与该基板管理控制器32建立连接,并进行沟通与数据的传输,不会有因为无法沟通而必须等待管理人员以人工进行修复的问题存在。于另一实施例中,该机柜管理控制器22还可通过该GPIO通道5关闭该基板管理控制器32的电力后再重新送电,或是关闭该基板管理控制器32所属的该端点服务器3的电力后再重新送电,以令该基板管理控制器32实现重置的目的。具体而言,该机柜1中设置有一或多个电力控制芯片(图未标示),该电力控制芯片电性连接该机柜1的电源及该些端点服务器3。本实施例中,该机柜管理控制器22通过该GPIO通道5连接该电力控制芯片。于该机柜管理控制器22无法通过该预设传输通道4与该基板管理控制器32进行沟通时,该机柜管理控制器22可通过该GPIO通道发出一重置指令至该电力控制芯片。因此,该电力控制芯片5依据该重置指令的内容,先断除提供给该端点服务器3(或该基板管理控制器32)的电力,接着再重新送电给该端点服务器3(或该基板管理控制器32)。如此一来,该基板管理控制器32即可重置,并可望于重置完成后恢复为初始的正常状态。值得一提的是,由于该电力控制芯片控制的是该些端点服务器3的电力,若擅自将该些端点服务器3的电力断除,将会对使用者造成很大的困扰。因此,于一较佳实施例中,该机柜管理控制器22会在发出该重置指令时,先产生并显示一警示讯号,待使用者确认该警示讯号并同意执行重置动作后,该机柜管理控制器22才会发出该重置指令。惟,以上所述仅为本发明的另一个具体实施例,不可以此为限。续请参阅图4,为本发明的第一具体实施例的重置流程图。图4揭示了本发明的该机柜1使用的自动重置方法。如图4所示,当该机柜管理控制器22要与该些基板管理控制器32进行沟通之前,首先通过该些预设传输通道4分别发送该初始讯号至该些基板管理控制器32(步骤S10)。接着,该机柜管理控制器22判断是否经由该些预设传输通道4分别接收该些基板管理控制器32针对该初始讯号所回复的该响应讯号(步骤S12)。当该机柜管理控制器22确实接收到该些基板管理控制器32的该响应讯号后,即可通过该些预设传输通道4分别与该些基板管理控制器32进行沟通(步骤S14),并传输各该端点服务器3所需的数据与档案。承上,若该机柜管理控制器22超过该等待时间未收到任一该基板管理控制器32的该响应讯号,则进一步判断该初始讯号的发送次数是否大于该门坎值(步骤S16)。若发送次数未大于该门坎值,则该机柜管理控制器22重新通过该预设传输通道4发送该初始讯号至没有响应的该基板管理控制器32,即重新执行上述步骤S10至步骤S16。若发送次数大于该门坎值,则该机柜管理控制器22认定没有响应的该基板管理控制器32发生问题,并改以通过该GPIO通道5发出该控制讯号至发生问题的该基板管理控制器32的该重置脚位321,借以强制发生问题的该基板管理控制器32重置(步骤S18)。并且,该机柜管理控制器22等待该基板管理控制器32的重置作业,并于该基板管理控制器32重置完成后,通过该预设传输通道4与重置后的该基板管理控制器32重新进行沟通(步骤S20)。通过本发明的机柜及自动重置方法,可确保在任何状况下,机柜内的机柜管理控制器皆可控制所有的基板管理控制器,令基板管理控制器恢复为初始的正常状态,借此排除机柜管理控制器无法经由预设传输通道与基板管理控制器进行沟通的问题。如此一来,可大幅降低机柜本身无法排除问题,而需待管理人员以人工方式解决的机率。以上所述仅为本发明的较佳实施例,并非用以限定本发明的专利保护范围,其它运用本发明专利精神所作的等效变化等,均应同理属于本发明的专利保护范围内。