设备诊断系统的制作方法

文档序号:6500640阅读:207来源:国知局
专利名称:设备诊断系统的制作方法
技术领域
本申请涉及设备管理系统。
背景技术
基于插槽的模块化计算机系统包括连接至同一后板的多个设备(例如,服务器)。系统是模块化的,可以按需添加或移除设备。这些设备可以来自相同的厂商或不同的厂商。
因为基于插槽的模块化计算机系统的异类性,所以很难诊断系统内出现的故障或差错。也就是说,因为不同的设备来自不同的厂商,所以设备故障类型和数量通常不同。需要获取各类设备的特定知识以诊断并修复每一设备内的故障。
通常只有少数几个人拥有识别并修复基于插槽的整个模块化计算系统上的故障所需的知识。结果是,经常是必须等到这些人能够来诊断系统时才能识别和/或修复系统故障。


图1是基于插槽的模块化计算系统的框图;图2是示出由基于插槽的模块化计算机系统内设备执行过程的流程图。
图3是可用于执行图2所示过程之一的计算机近视图。
具体实施例方式
图1示出了基于插槽的模块化计算机系统10,它包括设备管理系统11。基于插槽的模块化计算机系统的一个实例是“刀片(blade)服务器”系统。刀片服务器系统具有模块化、多厂商的体系结构并专门为电信和数据中心应用使用。典型的刀片服务器系统包括连接至并经由单后板通信的服务器。其他的“智能”设备也可连接至后板,它们包括网络接口卡(NIC)、冷却系统、路由器、其他“外加插件”卡。刀片服务器系统上经由后板通信的每个智能设备都可被称为“刀片”。
在图1中每个刀片都包括处理器和存储器,这可参考刀片12(见视图13)。处理器14可以是“高端”处理器,诸如IntelPentium或IntelXeon处理器。这类处理器都能够执行一个或多个计算机程序并经由后板或别的途径与其他设备通信。存储器15包括一个或多个存储器设备,诸如只读存储器(ROM)和/或随机存取存储器(RAM)。
存储器15内包括现场可换单元(FRU)16。FRU 16是为刀片12存储标识信息的存储器设备或存储器区域。标识信息例如可包括厂商标识符(ID)和该设备的零件号或序列号。刀片服务器系统的体系结构是将来自不同厂商的设备并入该系统。于是厂商的身份就可以是用于识别系统内设备的一部分信息。
存储器15内还包括操作系统管理栈17,如下所述它用于运行诊断模块。在刀片上运行的操作系统实例包括Windows和Linux。
连接至每个刀片的是控制器19,即已知的“智能平台管理”(IPM)设备。控制器19可以是微控制器等,诸如Intel8051微控制器。该微控制器协调刀片12与底盘管理模块(CMM或简称为″管理模块″)20和21(如下所述)之间的通信。控制器19经由系统管理软件(SMS)接口(未示出)与刀片12上的操作系统通信。控制器19经由后板上的冗余IPM总线(IPMB)22与管理模块20和21通信。
管理模块20和21是用于获取来自刀片的诊断信息并生成诊断信息报告的冗余软件例程。管理模块20和21也可以控制系统10的其他方面,包括功率、冷却、互连(E-键控)以及事件日志。它们还监视系统10的基本健康状况、报告异常并在需要时采取校正行动(如下将详述)。
管理模块之一,例如管理模块20是在有源模式下运行。在有源模式下,管理模块20执行如下将参考图2描述的功能,以获取并报告诊断信息。另一个管理模块,在此实例中的管理模块21,则在备用模式下运行(当管理模块20在有源模式下运行时)。在备用模式下,管理模块21不执行如下将参考图2描述的功能,而是作为管理模块20失效情况下的备份。
备用模式期间,管理模块21发送被称为“查验(ping)”的信号给管理模块20。查验经由连接管理模块20和21的总线24发送。如果管理模块20在预定时间段内不响应一个或多个查验,则管理模块21就进入有源状态并强迫管理模块20进入备用状态。在此情况下,从前的有源管理模块20就需要修复。因此,新的有源管理模块21就可生成并发送把关于(例如,故障的)管理模块20的问题通知给例如网络管理员。
管理模块的职能(即,有源或备用)也可由系统管理员分配。可经由总线23、24将控制信号发送给管理模块20和21以通知一个管理模块在备用模式下运行而另一个管理模块在有源模式下运行。如果一个管理模块故障,那仍在运行的管理模块就处于有源状态而无需考虑控制信号。
由于备用管理模块21可以从有源管理模块20处“接管”,所以要同步这两个管理模块以确保它们含有相同的最新刀片信息。经由IPM总线(IPMB)25执行同步。同步可以自动(例如,周期性地)或响应于外部信号出现。同步可以包括使用有源管理模块的当前诊断和配置信息来更新备用管理模块21。
因为管理模块是冗余的,所以随后对管理模块20的描述也可用于管理模块21。管理模块20包括多个诊断模块26。诊断模块是能够在典型管理框架(诸如公用信息模块(CIM))下运行的软件组件。诊断模块的种类不同并具有指定的厂商,这就意味着它们可能不完全相同并由刀片厂商提供。这样就具有一个显著优势,因为诊断模块能够“调试”它支持的指定硬件设备(刀片)并准备诊断测试报告作为磁盘文件。也就是说,可以预先配置由设备厂商提供的诊断模块(例如通过厂商)以获取指定设备的诊断信息。
诊断模块26获取来自刀片的诊断信息。因为诊断模块是由刀片厂商设计并提供的,所以每个诊断模块获取对适当保持及操作其相应刀片的最基本诊断信息。诊断信息包括但不限于与刀片相关联的信息,诸如差错或故障数据、配置数据、温度数据、湿度数据、操作数据、连接数据等等。基本上,诊断信息可以是涉及能被监视的刀片状态的任何信息。如下所述,诊断信息在获取并报告刀片内发生差错方面特别有用。
管理模块20包括网络连接27,管理模块20通过它连接诸如因特网的远程网络。管理模块20可以按需从远程网络获取诊断模块。例如,管理模块20可以利用通用描述、发现与综合(UDDI)来识别特定刀片的厂商网站。UDDI是基于网络的分布式目录,它使得各公司能够在因特网上列出自己并相互发现。管理模块20也可通过其他途径获取厂商的网站统一资源定位器(URL)或者可以结合URL预编程。
无论如何,一旦管理模块20访问了刀片厂商的网站,管理模块20就将诸如该刀片零件号的标识信息输入给网站。这就引发网站提供合适的诊断模块给管理模块20,并且管理模块20高速缓存该诊断模块直到其被需要。诊断模块可以经由加密套接字层(SSL)协议从网络服务器上获取以确保安全。SSL协议通过使用私钥加密通过SSL连接传输的数据来起作用。
设备管理系统11也包括两个串行电可擦除可编程只读存储器(SEEPROM)29和30。每个SEEPROM 29和30都存储了相同的信息副本(如下所述)。此种配置确保了系统冗余。冗余I2C总线31提供了到达SEEPROM 29和30的路径。SEEPROM 29和30存储系统宽度的标识信息,即用于后板内每个刀片的标识信息,包括厂商身份、零件号等等。
SEEPROM 29和30还可包括一个或多个系统事件日志(SEL)。SEL可以包括在预定时间段内从刀片获取的诊断信息记录。SEL也可包括由管理模块生成并发送的报告副本以及其他任何系统监视信息。
图2示出了用于管理系统10内刀片的过程32,包括检测刀片内差错以及发送关于刀片的差错报告。过程32中标有“管理模块”的部分是由有源管理模块(例如,管理模块20)执行的,过程32中标有“控制器”的部分是由控制器(例如,控制器19)执行的,而过程32中标有“刀片”的部分是由刀片中的处理器(例如,处理器14)执行的。
在过程32中,控制器19从FRU 16中检索用于其相应刀片12的标识信息(34)。控制器19将该标识信息提供给管理模块20(35)。标识信息可自动提供,例如在刀片12并入系统10的情况下;或者可以响应于管理模块20的请求提供标识信息。可以响应于由系统管理员提供的“调试”命令发出这一请求。
管理模块20接收用于刀片12的标识信息(36)。管理模块20使用该标识信息识别对应于刀片12的诊断模块(37)。在一个实施例中,管理模块20使用数学算法基于厂商ID和标识信息内的零件号计算模块ID。该模块ID用于检索恰当的诊断模块(由管理模块索引到模块ID)。
可以从内部存储器或外部位置(诸如网络服务器/网站)检索合适的诊断模块。更具体地,如果管理模块20无法在系统10上定位对应于该模块ID的诊断模块,则管理模块20就查询如上所述该刀片的厂商网站以获取诊断模块。假设诊断模块可获取,则过程32继续。
管理模块20经由IPMB 22将诊断模块送至(即,“推入”)控制器19(39)。控制器19轮流接收来自管理模块20的诊断模块(40)。诊断模块可要求操作系统执行。在此情况下,控制器19将诊断模块与执行诊断模块的指令一道送入刀片12上的处理器14(41)。处理器14执行诊断模块(42)。诊断模块获取刀片12的诊断信息(即,诊断测试结果)。如上所述,诊断模块是专用于刀片12的,由此就有权使用能以相对高精度查明问题的专利细节。
处理器14为控制器19提供诊断信息(44)。应该注意到控制器19可以在无需操作系统管理栈的情况下运行某些诊断模块。这些诊断模块可被具体标记以确保它们由控制器“本地”运行,而不是在处理器14上。
控制器19接收诊断信息(例如,来自处理器14)(45)并且发送诊断信息给管理模块20(46)。管理模块20轮流接收诊断信息(47)。管理模块20基于诊断信息生成报告(49)。该报告可以是提供关于刀片12状态的所有可用信息的详尽报告,包括特定的差错相关信息。可选地,该报告也可以是所选状态信息的摘要。报告的格式可由系统管理员发出的命令指定,或者可被编程入管理模块20。
管理模块20在存储器(例如,SEEPROM 29)内存储该报告和/或将该报告(例如,经由管理模块的网络连接)输出给系统管理员(50)。管理模块可以一收到诊断信息就自动地或响应问讯地把报告提供给系统管理员。系统管理员使用该报告定位刀片问题并离线维修或修复问题。
图3示出了其上可以执行管理模块的计算机。计算机51包括处理器52、存储器54和存储介质55(例如,硬盘)。存储介质55存储机器可执行指令56,该指令可由处理器52从存储器54中执行以实现管理模块20和21的功能。
管理模块20和21不限于使用图1和图3所示的硬件和软件;它们在任何计算或处理环境中都能找到应用。
可以在数字电路,或计算机硬件、固件、软件,或它们的组合中实现管理模块。管理模块可被实现作为计算机程序产品或其他产品,例如在信息载体(例如机器可读存储设备或传播信号)内具体实现的计算机程序,用于数据处理装置(例如可编程处理器、计算机或多台计算机)执行或控制操作。计算机程序可由任何形式的编程语言(包括编译或解释语言)写成,并且可具有任何形式,例如包括作为独立程序或模块、组件、子例程或其他适于在计算环境中使用的单元。计算机程序可以在一台计算机上或者在一个网站或通过多个网站分布并由通信网络互连的多台计算机上执行。
由管理模块执行的方法可由执行计算机程序以执行功能的一个或多个可编程处理器执行。由管理模块执行的方法也可由专用逻辑电路执行,并且管理模块装置可以专用逻辑电路,所述电路包括FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
适于执行计算机程序的处理器(以实例的形式)包括通用和专用微处理器以及任何种类的数字计算机的任何一个或多个处理器。处理器通常接收来自只读存储器或随机存取存储器或两者的指令和数据。计算机元件包括执行指令的处理器以及存储指令和数据的一个或多个存储器设备。计算机通常还包括或者操作耦合以接收数据或传输数据或同时至一个或多个存储数据的大容量存储设备,例如磁盘、磁光盘或光盘等等。
适于具体实现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,诸如可包括半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路增补或并入。
管理模块可以在计算系统中实现,计算系统可以包括后端组件(例如数据服务器),或者包括中间件(例如应用服务器),或者包括前端组件(例如具有系统管理员通过其可与管理模块交互的图形用户界面或网络浏览器的客户机计算机),或者这类后端、中间件或前端组件的任何组合。
系统的组件能够通过诸如通信网络的数字数据通信的任何形式或介质互连。通信网络的实例包括局域网(″LAN″)和广域网(″WAN″),例如因特网。
计算系统可以包括客户机和服务器。客户机和服务器通常相互远离并经由通信网络交互。客户机和服务器的关系依赖于在各自计算机上运行并相互具有客户机-服务器关系的计算机程序。
在此描述的过程不限于上述特定的实施例。例如,可以按需重新排序和/或省略图2中的过程框以实现前述结果。每个基于插槽的模块化计算系统可以具有多于或少于两个管理模块。基于插槽的模块化计算系统也可包括未在此描述的其他组件。
未在此描述的其他实施例也位于所附权利要求范围内。
权利要求
1.一种系统,包括后板;经由所述后板进行通信的设备,所述设备存储标识信息;接收所述标识信息并提供对应于该标识信息的诊断模块的管理模块;以及与所述设备相关联的控制器,所述控制器为所述管理模块提供所述标识信息,接收来自所述管理模块的诊断模块并输出经由所述诊断模块获取的所述设备的诊断信息。
2.如权利要求1所述的系统,其特征在于,所述管理模块接收来自所述控制器的所述诊断信息并基于所述诊断信息生成报告。
3.如权利要求1所述的系统,其特征在于,所述报告包括所述诊断信息的摘要以及所述诊断信息的详尽报告中的一种。
4.如权利要求1所述的系统,其特征在于,还包括为所述管理模块提供冗余功能的备份模块。
5.如权利要求4所述的系统,其特征在于,还包括互连所述管理模块和所述备份模块的总线,所述管理模块和所述备份模块经由所述总线保持同步。
6.如权利要求5所述的系统,其特征在于,所述备份模块查验所述管理模块,并且若要是未从所述管理模块接收到响应查验的返回信号,则所述备份模块控制由所述管理模块执行的功能。
7.如权利要求1所述的系统,其特征在于,所述管理模块使用所述标识信息获取所述诊断模块。
8.如权利要求7所述的系统,其特征在于,所述管理模块经由因特网获取所述诊断模块。
9.如权利要求1所述的系统,其特征在于,还包括存储器,在其中管理模块存储所述标识信息。
10.如权利要求1所述的系统,其特征在于,还包括经由所述后板通信的第二设备、为所述第二设备提供第二诊断模块并从所述第二设备接收经由所述第二诊断模块获取的第二诊断信息的管理模块。
11.如权利要求1所述的系统,其特征在于,所述设备包括执行所述诊断模块的处理器、为所述处理器提供所述诊断模块的所述控制器,所述处理器为所述控制器提供所述诊断信息。
12.一种管理模块化计算系统内设备的方法,所述方法包括接收用于所述设备的标识信息;基于所述标识信息识别对应于所述设备的诊断模块;将所述诊断模块发送给所述设备;以及从所述设备接收使用所述诊断模块生成的诊断信息。
13.如权利要求12所述的方法,其特征在于,还包括基于所述诊断信息生成报告;以及输出所述报告。
14.如权利要求12所述的方法,其特征在于,所述报告包括所述诊断信息的摘要以及与所述诊断信息相关联的细节中的一种。
15.如权利要求12所述的方法,其特征在于,还包括使用所述标识信息经由网络获取所述诊断模块。
16.如权利要求15所述的方法,其特征在于,可以使用对应于各自设备的诊断模块为多个设备中的每一个执行所述方法。
17.一种由与设备相关联的控制器执行的方法,所述方法把所述设备的诊断信息提供给模块化计算系统内的管理模块,所述方法包括把标识信息提供给所述管理模块;接收来自所述管理模块的诊断模块;经由所述诊断模块获取用于所述设备的诊断信息;以及将所述诊断信息输出给所述管理模块。
18.如权利要求17所述的方法,其特征在于,获取包括将所述诊断模块送至在所述设备上运行所述诊断模块的处理器;以及接收来自所述处理器的所述诊断信息。
19.如权利要求17所述的方法,其特征在于,响应于来自所述管理模块的请求提供所述标识信息。
20.如权利要求17所述的方法,其特征在于,在所述设备并入所述模块化计算系统时自动地提供所述标识信息。
21.一种包括机器可读介质的物品,所述机器可读介质存储用于管理模块化计算系统内设备的指令,所述指令会引发机器接收用于所述设备的标识信息;基于所述标识信息识别对应于所述设备的诊断模块;将所述诊断模块发送给所述设备;以及从所述设备接收使用所述诊断模块生成的诊断信息。
22.如权利要求21所述的物品,其特征在于,还包括指令,该指令会引发所述机器基于所述诊断信息生成报告;以及输出所述报告。
23.如权利要求21所述的物品,其特征在于,所述报告包括所述诊断信息的摘要以及与所述诊断信息相关联的细节中的一种。
24.如权利要求21所述的物品,其特征在于,还包括指令,该指令会引发所述机器使用所述标识信息经由网络获取所述诊断模块。
25.一种包括机器可读介质的物品,所述机器可读介质存储可执行指令,以便将设备的诊断信息提供给模块化计算系统内的管理模块,所述指令会引发机器把标识信息提供给所述管理模块;接收来自所述管理模块的诊断模块;经由所述诊断模块获取用于所述设备的诊断信息;以及将所述诊断信息输出给所述管理模块。
26.如权利要求25所述的物品,其特征在于,获取包括将所述诊断模块送至在所述设备上运行所述诊断模块的处理器;以及接收来自所述处理器的所述诊断信息。
27.如权利要求25所述的物品,其特征在于,响应于来自所述管理模块的请求提供所述标识信息。
28.如权利要求25所述的物品,其特征在于,在所述设备并入所述模块化计算系统时自动地提供所述标识信息。
全文摘要
设备管理系统包括后板、经由后板进行通信并存储标识信息的设备、接收标识信息并提供对应于该标识信息的诊断模块的管理模块以及与所述设备相关联的控制器。该控制器为管理模块提供标识信息,接收来自管理模块的诊断模块并输出经由诊断模块获取的设备诊断信息。
文档编号G06F11/273GK1886732SQ200480035242
公开日2006年12月27日 申请日期2004年12月1日 优先权日2003年12月18日
发明者T·马修, S·萨塔潘 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1